[xiph-cvs] cvs commit: vorbis/vq distribution.c make_residue_books.pl Makefile.am bookutil.c latticebuild.c

Monty xiphmont at xiph.org
Sun Jan 21 17:38:58 PST 2001



xiphmont    01/01/21 17:38:52

  Modified:    .        COPYING configure.in libvorbis.spec
               debian   rules
               examples encoder_example.c
               include/vorbis codec.h
               lib      analysis.c backends.h block.c codec_internal.h
                        envelope.c floor0.c info.c lookup.c lookup_data.h
                        lsp.c mapping0.c masking.h psy.c psy.h psytune.c
                        res0.c scales.h sharedbook.c vorbisfile.c window.h
               lib/books lsp12_0.vqh lsp30_0.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_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_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_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
               lib/modes mode_A.h mode_AA.h mode_B.h mode_C.h mode_D.h
                        mode_E.h
               vq       Makefile.am bookutil.c latticebuild.c
  Added:       lib/books lsp12_1.vqh lsp30_1.vqh lsp9_0.vqh lsp9_1.vqh
                        res0_192_1024_6.vqh res0_192_1024_7.vqh
                        res0_192_1024_8.vqh res0_192_1024_9.vqh
                        res0_256_1024_6.vqh res0_256_1024_7.vqh
                        res0_96_1024_8.vqh res0_96_1024_9.vqh
               vq       distribution.c make_residue_books.pl
  Removed:     lib/books res0_350_1024_1.vqh res0_350_1024_2.vqh
                        res0_350_1024_3.vqh res0_350_1024_4.vqh
                        res0_350_1024_5.vqh res0_350_1024aux.vqh
                        res0_350_128_1.vqh res0_350_128_2.vqh
                        res0_350_128_3.vqh res0_350_128_4.vqh
                        res0_350_128_5.vqh res0_350_128aux.vqh
  Log:
  Initial beta 4 merge
  
  Monty

Revision  Changes    Path
1.3       +115 -92   vorbis/COPYING

Index: COPYING
===================================================================
RCS file: /usr/local/cvsroot/vorbis/COPYING,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- COPYING	2000/11/08 19:39:05	1.2
+++ COPYING	2001/01/22 01:38:21	1.3
@@ -1,13 +1,14 @@
-		  GNU LIBRARY GENERAL PUBLIC LICENSE
-		       Version 2, June 1991
+		  GNU LESSER GENERAL PUBLIC LICENSE
+		       Version 2.1, February 1999
 
- Copyright (C) 1991 Free Software Foundation, Inc.
-    		    59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
+ Copyright (C) 1991, 1999 Free Software Foundation, Inc.
+     59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
  Everyone is permitted to copy and distribute verbatim copies
  of this license document, but changing it is not allowed.
 
-[This is the first released version of the library GPL.  It is
- numbered 2 because it goes with version 2 of the ordinary GPL.]
+[This is the first released version of the Lesser GPL.  It also counts
+ as the successor of the GNU Library Public License, version 2, hence
+ the version number 2.1.]
 
                             Preamble
 
@@ -16,97 +17,109 @@
 Licenses are intended to guarantee your freedom to share and change
 free software--to make sure the software is free for all its users.
 
-  This license, the Library General Public License, applies to some
-specially designated Free Software Foundation software, and to any
-other libraries whose authors decide to use it.  You can use it for
-your libraries, too.
-
-  When we speak of free software, we are referring to freedom, not
-price.  Our General Public Licenses are designed to make sure that you
-have the freedom to distribute copies of free software (and charge for
-this service if you wish), that you receive source code or can get it
-if you want it, that you can change the software or use pieces of it
-in new free programs; and that you know you can do these things.
+  This license, the Lesser General Public License, applies to some
+specially designated software packages--typically libraries--of the
+Free Software Foundation and other authors who decide to use it.  You
+can use it too, but we suggest you first think carefully about whether
+this license or the ordinary General Public License is the better
+strategy to use in any particular case, based on the explanations below.
+
+  When we speak of free software, we are referring to freedom of use,
+not price.  Our General Public Licenses are designed to make sure that
+you have the freedom to distribute copies of free software (and charge
+for this service if you wish); that you receive source code or can get
+it if you want it; that you can change the software and use pieces of
+it in new free programs; and that you are informed that you can do
+these things.
 
   To protect your rights, we need to make restrictions that forbid
-anyone to deny you these rights or to ask you to surrender the rights.
-These restrictions translate to certain responsibilities for you if
-you distribute copies of the library, or if you modify it.
+distributors to deny you these rights or to ask you to surrender these
+rights.  These restrictions translate to certain responsibilities for
+you if you distribute copies of the library or if you modify it.
 
   For example, if you distribute copies of the library, whether gratis
 or for a fee, you must give the recipients all the rights that we gave
 you.  You must make sure that they, too, receive or can get the source
-code.  If you link a program with the library, you must provide
-complete object files to the recipients so that they can relink them
-with the library, after making changes to the library and recompiling
+code.  If you link other code with the library, you must provide
+complete object files to the recipients, so that they can relink them
+with the library after making changes to the library and recompiling
 it.  And you must show them these terms so they know their rights.
 
-  Our method of protecting your rights has two steps: (1) copyright
-the library, and (2) offer you this license which gives you legal
+  We protect your rights with a two-step method: (1) we copyright the
+library, and (2) we offer you this license, which gives you legal
 permission to copy, distribute and/or modify the library.
 
-  Also, for each distributor's protection, we want to make certain
-that everyone understands that there is no warranty for this free
-library.  If the library is modified by someone else and passed on, we
-want its recipients to know that what they have is not the original
-version, so that any problems introduced by others will not reflect on
-the original authors' reputations.
+  To protect each distributor, we want to make it very clear that
+there is no warranty for the free library.  Also, if the library is
+modified by someone else and passed on, the recipients should know
+that what they have is not the original version, so that the original
+author's reputation will not be affected by problems that might be
+introduced by others.
 
-  Finally, any free program is threatened constantly by software
-patents.  We wish to avoid the danger that companies distributing free
-software will individually obtain patent licenses, thus in effect
-transforming the program into proprietary software.  To prevent this,
-we have made it clear that any patent must be licensed for everyone's
-free use or not licensed at all.
-
-  Most GNU software, including some libraries, is covered by the ordinary
-GNU General Public License, which was designed for utility programs.  This
-license, the GNU Library General Public License, applies to certain
-designated libraries.  This license is quite different from the ordinary
-one; be sure to read it in full, and don't assume that anything in it is
-the same as in the ordinary license.
-
-  The reason we have a separate public license for some libraries is that
-they blur the distinction we usually make between modifying or adding to a
-program and simply using it.  Linking a program with a library, without
-changing the library, is in some sense simply using the library, and is
-analogous to running a utility program or application program.  However, in
-a textual and legal sense, the linked executable is a combined work, a
-derivative of the original library, and the ordinary General Public License
-treats it as such.
-
-  Because of this blurred distinction, using the ordinary General
-Public License for libraries did not effectively promote software
-sharing, because most developers did not use the libraries.  We
-concluded that weaker conditions might promote sharing better.
-
-  However, unrestricted linking of non-free programs would deprive the
-users of those programs of all benefit from the free status of the
-libraries themselves.  This Library General Public License is intended to
-permit developers of non-free programs to use free libraries, while
-preserving your freedom as a user of such programs to change the free
-libraries that are incorporated in them.  (We have not seen how to achieve
-this as regards changes in header files, but we have achieved it as regards
-changes in the actual functions of the Library.)  The hope is that this
-will lead to faster development of free libraries.
+  Finally, software patents pose a constant threat to the existence of
+any free program.  We wish to make sure that a company cannot
+effectively restrict the users of a free program by obtaining a
+restrictive license from a patent holder.  Therefore, we insist that
+any patent license obtained for a version of the library must be
+consistent with the full freedom of use specified in this license.
+
+  Most GNU software, including some libraries, is covered by the
+ordinary GNU General Public License.  This license, the GNU Lesser
+General Public License, applies to certain designated libraries, and
+is quite different from the ordinary General Public License.  We use
+this license for certain libraries in order to permit linking those
+libraries into non-free programs.
+
+  When a program is linked with a library, whether statically or using
+a shared library, the combination of the two is legally speaking a
+combined work, a derivative of the original library.  The ordinary
+General Public License therefore permits such linking only if the
+entire combination fits its criteria of freedom.  The Lesser General
+Public License permits more lax criteria for linking other code with
+the library.
+
+  We call this license the "Lesser" General Public License because it
+does Less to protect the user's freedom than the ordinary General
+Public License.  It also provides other free software developers Less
+of an advantage over competing non-free programs.  These disadvantages
+are the reason we use the ordinary General Public License for many
+libraries.  However, the Lesser license provides advantages in certain
+special circumstances.
+
+  For example, on rare occasions, there may be a special need to
+encourage the widest possible use of a certain library, so that it becomes
+a de-facto standard.  To achieve this, non-free programs must be
+allowed to use the library.  A more frequent case is that a free
+library does the same job as widely used non-free libraries.  In this
+case, there is little to gain by limiting the free library to free
+software only, so we use the Lesser General Public License.
+
+  In other cases, permission to use a particular library in non-free
+programs enables a greater number of people to use a large body of
+free software.  For example, permission to use the GNU C Library in
+non-free programs enables many more people to use the whole GNU
+operating system, as well as its variant, the GNU/Linux operating
+system.
+
+  Although the Lesser General Public License is Less protective of the
+users' freedom, it does ensure that the user of a program that is
+linked with the Library has the freedom and the wherewithal to run
+that program using a modified version of the Library.
 
   The precise terms and conditions for copying, distribution and
 modification follow.  Pay close attention to the difference between a
 "work based on the library" and a "work that uses the library".  The
-former contains code derived from the library, while the latter only
-works together with the library.
-
-  Note that it is possible for a library to be covered by the ordinary
-General Public License rather than by this special one.
+former contains code derived from the library, whereas the latter must
+be combined with the library in order to run.
 
-		  GNU LIBRARY GENERAL PUBLIC LICENSE
+		  GNU LESSER GENERAL PUBLIC LICENSE
    TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
 
-  0. This License Agreement applies to any software library which
-contains a notice placed by the copyright holder or other authorized
-party saying it may be distributed under the terms of this Library
-General Public License (also called "this License").  Each licensee is
-addressed as "you".
+  0. This License Agreement applies to any software library or other
+program which contains a notice placed by the copyright holder or
+other authorized party saying it may be distributed under the terms of
+this Lesser General Public License (also called "this License").
+Each licensee is addressed as "you".
 
   A "library" means a collection of software functions and/or data
 prepared so as to be conveniently linked with application programs
@@ -255,7 +268,7 @@
 Any executables containing that work also fall under Section 6,
 whether or not they are linked directly with the Library itself.
 
-  6. As an exception to the Sections above, you may also compile or
+  6. As an exception to the Sections above, you may also combine or
 link a "work that uses the Library" with the Library to produce a
 work containing portions of the Library, and distribute that work
 under terms of your choice, provided that the terms permit
@@ -281,24 +294,32 @@
     that the user who changes the contents of definitions files in the
     Library will not necessarily be able to recompile the application
     to use the modified definitions.)
+
+    b) Use a suitable shared library mechanism for linking with the
+    Library.  A suitable mechanism is one that (1) uses at run time a
+    copy of the library already present on the user's computer system,
+    rather than copying library functions into the executable, and (2)
+    will operate properly with a modified version of the library, if
+    the user installs one, as long as the modified version is
+    interface-compatible with the version that the work was made with.
 
-    b) Accompany the work with a written offer, valid for at
+    c) Accompany the work with a written offer, valid for at
     least three years, to give the same user the materials
     specified in Subsection 6a, above, for a charge no more
     than the cost of performing this distribution.
 
-    c) If distribution of the work is made by offering access to copy
+    d) If distribution of the work is made by offering access to copy
     from a designated place, offer equivalent access to copy the above
     specified materials from the same place.
 
-    d) Verify that the user has already received a copy of these
+    e) Verify that the user has already received a copy of these
     materials or that you have already sent this user a copy.
 
   For an executable, the required form of the "work that uses the
 Library" must include any data and utility programs needed for
 reproducing the executable from it.  However, as a special exception,
-the source code distributed need not include anything that is normally
-distributed (in either source or binary form) with the major
+the materials to be distributed need not include anything that is
+normally distributed (in either source or binary form) with the major
 components (compiler, kernel, and so on) of the operating system on
 which the executable runs, unless that component itself accompanies
 the executable.
@@ -347,7 +368,7 @@
 original licensor to copy, distribute, link with or modify the Library
 subject to these terms and conditions.  You may not impose any further
 restrictions on the recipients' exercise of the rights granted herein.
-You are not responsible for enforcing compliance by third parties to
+You are not responsible for enforcing compliance by third parties with
 this License.
 
   11. If, as a consequence of a court judgment or allegation of patent
@@ -390,7 +411,7 @@
 written in the body of this License.
 
   13. The Free Software Foundation may publish revised and/or new
-versions of the Library General Public License from time to time.
+versions of the Lesser General Public License from time to time.
 Such new versions will be similar in spirit to the present version,
 but may differ in detail to address new problems or concerns.
 
@@ -453,17 +474,17 @@
     Copyright (C) <year>  <name of author>
 
     This library is free software; you can redistribute it and/or
-    modify it under the terms of the GNU Library General Public
+    modify it under the terms of the GNU Lesser General Public
     License as published by the Free Software Foundation; either
-    version 2 of the License, or (at your option) any later version.
+    version 2.1 of the License, or (at your option) any later version.
 
     This library is distributed in the hope that it will be useful,
     but WITHOUT ANY WARRANTY; without even the implied warranty of
     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-    Library General Public License for more details.
+    Lesser General Public License for more details.
 
-    You should have received a copy of the GNU Library General Public
-    License along with this library; if not, write to the Free
+    You should have received a copy of the GNU Lesser General Public
+    License along with this library; if not, write to the Free Software
     Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
 
 Also add information on how to contact you by electronic and paper mail.
@@ -479,3 +500,5 @@
   Ty Coon, President of Vice
 
 That's all there is to it!
+
+

1.32      +1 -1      vorbis/configure.in

Index: configure.in
===================================================================
RCS file: /usr/local/cvsroot/vorbis/configure.in,v
retrieving revision 1.31
retrieving revision 1.32
diff -u -r1.31 -r1.32
--- configure.in	2000/11/18 05:02:34	1.31
+++ configure.in	2001/01/22 01:38:22	1.32
@@ -5,7 +5,7 @@
 dnl ------------------------------------------------
 
 AC_INIT(lib/mdct.c)
-AM_INIT_AUTOMAKE(libvorbis,1.0beta3)
+AM_INIT_AUTOMAKE(libvorbis,1.0prebeta4)
 
 dnl Library versioning
 

1.7       +1 -1      vorbis/libvorbis.spec

Index: libvorbis.spec
===================================================================
RCS file: /usr/local/cvsroot/vorbis/libvorbis.spec,v
retrieving revision 1.6
retrieving revision 1.7
diff -u -r1.6 -r1.7
--- libvorbis.spec	2000/11/18 02:25:19	1.6
+++ libvorbis.spec	2001/01/22 01:38:22	1.7
@@ -1,5 +1,5 @@
 %define name	libvorbis
-%define version	1.0beta3
+%define version	1.0prebeta4
 %define release 1
 
 Summary:	The Vorbis General Audio Compression Codec

1.11      +1 -1      vorbis/debian/rules

Index: rules
===================================================================
RCS file: /usr/local/cvsroot/vorbis/debian/rules,v
retrieving revision 1.10
retrieving revision 1.11
diff -u -r1.10 -r1.11
--- rules	2000/11/18 04:49:13	1.10
+++ rules	2001/01/22 01:38:22	1.11
@@ -58,7 +58,7 @@
 
         dh_movefiles
 
-	dh_installdocs debian/tmp/usr/share/doc/libvorbis-1.0beta3/*
+	dh_installdocs debian/tmp/usr/share/doc/libvorbis-1.0prebeta4/*
         dh_installexamples
         dh_installmanpages
         dh_installchangelogs 

1.19      +2 -2      vorbis/examples/encoder_example.c

Index: encoder_example.c
===================================================================
RCS file: /usr/local/cvsroot/vorbis/examples/encoder_example.c,v
retrieving revision 1.18
retrieving revision 1.19
diff -u -r1.18 -r1.19
--- encoder_example.c	2001/01/20 14:06:28	1.18
+++ encoder_example.c	2001/01/22 01:38:23	1.19
@@ -12,7 +12,7 @@
  ********************************************************************
 
  function: simple example encoder
- last mod: $Id: encoder_example.c,v 1.18 2001/01/20 14:06:28 msmith Exp $
+ last mod: $Id: encoder_example.c,v 1.19 2001/01/22 01:38:23 xiphmont Exp $
 
  ********************************************************************/
 
@@ -80,7 +80,7 @@
   /* choose an encoding mode */
   /* (mode 0: 44kHz stereo uncoupled, roughly 128kbps VBR) */
   vorbis_info_init(&vi);
-  vorbis_encode_init(&vi,2,44100, -1, 160000, -1);
+  vorbis_encode_init(&vi,2,44100, -1, 128000, -1);
 
   /* add a comment */
   vorbis_comment_init(&vc);

1.35      +3 -1      vorbis/include/vorbis/codec.h

Index: codec.h
===================================================================
RCS file: /usr/local/cvsroot/vorbis/include/vorbis/codec.h,v
retrieving revision 1.34
retrieving revision 1.35
diff -u -r1.34 -r1.35
--- codec.h	2001/01/18 10:54:31	1.34
+++ codec.h	2001/01/22 01:38:23	1.35
@@ -12,7 +12,7 @@
  ********************************************************************
 
  function: libvorbis codec headers
- last mod: $Id: codec.h,v 1.34 2001/01/18 10:54:31 msmith Exp $
+ last mod: $Id: codec.h,v 1.35 2001/01/22 01:38:23 xiphmont Exp $
 
  ********************************************************************/
 
@@ -115,6 +115,8 @@
   long time_bits;
   long floor_bits;
   long res_bits;
+
+  void *internal;
 
 } vorbis_block;
 

1.41      +1 -1      vorbis/lib/analysis.c

Index: analysis.c
===================================================================
RCS file: /usr/local/cvsroot/vorbis/lib/analysis.c,v
retrieving revision 1.40
retrieving revision 1.41
diff -u -r1.40 -r1.41
--- analysis.c	2000/12/21 21:04:38	1.40
+++ analysis.c	2001/01/22 01:38:24	1.41
@@ -12,7 +12,7 @@
  ********************************************************************
 
  function: single-block PCM analysis mode dispatch
- last mod: $Id: analysis.c,v 1.40 2000/12/21 21:04:38 xiphmont Exp $
+ last mod: $Id: analysis.c,v 1.41 2001/01/22 01:38:24 xiphmont Exp $
 
  ********************************************************************/
 

1.4       +7 -5      vorbis/lib/backends.h

Index: backends.h
===================================================================
RCS file: /usr/local/cvsroot/vorbis/lib/backends.h,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -r1.3 -r1.4
--- backends.h	2000/11/17 11:47:18	1.3
+++ backends.h	2001/01/22 01:38:24	1.4
@@ -13,7 +13,7 @@
 
  function: libvorbis backend and mapping structures; needed for 
            static mode headers
- last mod: $Id: backends.h,v 1.3 2000/11/17 11:47:18 xiphmont Exp $
+ last mod: $Id: backends.h,v 1.4 2001/01/22 01:38:24 xiphmont Exp $
 
  ********************************************************************/
 
@@ -62,9 +62,7 @@
   void (*free_info) (vorbis_info_floor *);
   void (*free_look) (vorbis_look_floor *);
   int  (*forward)   (struct vorbis_block *,vorbis_look_floor *,
-		     float *,float *,vorbis_bitbuffer *);
-  float(*forward2)  (struct vorbis_block *,vorbis_look_floor *,
-		     long,float, vorbis_bitbuffer *);
+		     float *);
   int  (*inverse)   (struct vorbis_block *,vorbis_look_floor *,
                      float *);
 } vorbis_func_floor;
@@ -79,6 +77,10 @@
 
   int   numbooks; /* <= 16 */
   int   books[16];
+
+  float lessthan;     /* encode-only config setting hacks for libvorbis */
+  float greaterthan;  /* encode-only config setting hacks for libvorbis */
+
 } vorbis_info_floor0;
 
 /* Residue backend generic *****************************************/
@@ -91,7 +93,7 @@
   void (*free_info)    (vorbis_info_residue *);
   void (*free_look)    (vorbis_look_residue *);
   int  (*forward)      (struct vorbis_block *,vorbis_look_residue *,
-			float **,int,vorbis_bitbuffer *);
+			float **,int);
   int  (*inverse)      (struct vorbis_block *,vorbis_look_residue *,
                         float **,int);
 } vorbis_func_residue;

1.43      +57 -24    vorbis/lib/block.c

Index: block.c
===================================================================
RCS file: /usr/local/cvsroot/vorbis/lib/block.c,v
retrieving revision 1.42
retrieving revision 1.43
diff -u -r1.42 -r1.43
--- block.c	2000/12/21 21:04:38	1.42
+++ block.c	2001/01/22 01:38:24	1.43
@@ -12,7 +12,7 @@
  ********************************************************************
 
  function: PCM data vector blocking, windowing and dis/reassembly
- last mod: $Id: block.c,v 1.42 2000/12/21 21:04:38 xiphmont Exp $
+ last mod: $Id: block.c,v 1.43 2001/01/22 01:38:24 xiphmont Exp $
 
  Handle windowing, overlap-add, etc of the PCM vectors.  This is made
  more amusing by Vorbis' current two allowed block sizes.
@@ -24,6 +24,7 @@
 #include <string.h>
 #include <ogg/ogg.h>
 #include "vorbis/codec.h"
+#include "codec_internal.h"
 
 #include "window.h"
 #include "envelope.h"
@@ -33,6 +34,7 @@
 #include "codebook.h"
 #include "misc.h"
 #include "os.h"
+#include "psy.h"
 
 static int ilog2(unsigned int v){
   int ret=0;
@@ -92,9 +94,12 @@
   vb->vd=v;
   vb->localalloc=0;
   vb->localstore=NULL;
-  if(v->analysisp)
+  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);
 }
 
@@ -150,6 +155,7 @@
       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);
@@ -169,6 +175,7 @@
 
   v->vi=vi;
   b->modebits=ilog2(ci->modes);
+  b->ampmax=-9999;
 
   b->transform[0]=_ogg_calloc(VI_TRANSFORMB,sizeof(vorbis_look_transform *));
   b->transform[1]=_ogg_calloc(VI_TRANSFORMB,sizeof(vorbis_look_transform *));
@@ -529,13 +536,30 @@
   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 */
+    if(vbi->ampmax>b->ampmax)b->ampmax=vbi->ampmax;
+    b->ampmax=_vp_ampmax_decay(b->ampmax,v);
+    vbi->ampmax=b->ampmax;
+
     vb->pcm=_vorbis_block_alloc(vb,sizeof(float *)*vi->channels);
+    vbi->pcmdelay=_vorbis_block_alloc(vb,sizeof(float *)*vi->channels);
     for(i=0;i<vi->channels;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));
+      */
+
     }
   }
   
@@ -553,33 +577,36 @@
 
   /* advance storage vectors and clean up */
   {
-    int new_centerNext=ci->blocksizes[1]/2;
+    int new_centerNext=ci->blocksizes[1]/2+ci->delaycache;
     int movementW=centerNext-new_centerNext;
-
-    _ve_envelope_shift(b->ve,movementW);
-    v->pcm_current-=movementW;
-
-    for(i=0;i<vi->channels;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;
+    if(movementW>0){
 
-    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);
+      _ve_envelope_shift(b->ve,movementW);
+      v->pcm_current-=movementW;
+      
+      for(i=0;i<vi->channels;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;
       }
-    }else{
-      v->granulepos+=movementW;
     }
   }
 
@@ -683,6 +710,7 @@
     }
 
     for(j=0;j<vi->channels;j++){
+      static int seq=0;
       float *pcm=v->pcm[j]+beginW;
       float *p=vb->pcm[j];
 
@@ -692,7 +720,12 @@
       /* the remaining section */
       for(;i<sizeW;i++)
         pcm[i]=p[i];
+
+      _analysis_output("lapped",seq,pcm,sizeW,0,0);
+      _analysis_output("buffered",seq++,v->pcm[j],sizeW+beginW,0,0);
+    
     }
+
 
     /* track the frame number... This is for convenience, but also
        making sure our last packet doesn't end with added padding.  If

1.4       +16 -3     vorbis/lib/codec_internal.h

Index: codec_internal.h
===================================================================
RCS file: /usr/local/cvsroot/vorbis/lib/codec_internal.h,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -r1.3 -r1.4
--- codec_internal.h	2000/11/17 11:47:18	1.3
+++ codec_internal.h	2001/01/22 01:38:24	1.4
@@ -12,7 +12,7 @@
  ********************************************************************
 
  function: libvorbis codec headers
- last mod: $Id: codec_internal.h,v 1.3 2000/11/17 11:47:18 xiphmont Exp $
+ last mod: $Id: codec_internal.h,v 1.4 2001/01/22 01:38:24 xiphmont Exp $
 
  ********************************************************************/
 
@@ -24,6 +24,11 @@
 #include "psy.h"
 #include "bitbuffer.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;
@@ -49,6 +54,8 @@
   unsigned char *header1;
   unsigned char *header2;
 
+  float ampmax;
+
 } backend_lookup_state;
 
 /* mode ************************************************************/
@@ -103,10 +110,16 @@
   vorbis_info_psy     *psy_param[64]; /* encode only */
   
   /* for block long/sort tuning; encode only */
-  int        envelopesa;
+  int       envelopesa;
   float     preecho_thresh;
-  float     preecho_clamp;
+  float     postecho_thresh;
   float     preecho_minenergy;
+
+  float     ampmax_att_per_sec;
+
+  /* delay caching... how many samples to keep around prior to our
+     current block to aid in analysis? */
+  int       delaycache;
 
 } codec_setup_info;
 

1.29      +39 -31    vorbis/lib/envelope.c

Index: envelope.c
===================================================================
RCS file: /usr/local/cvsroot/vorbis/lib/envelope.c,v
retrieving revision 1.28
retrieving revision 1.29
diff -u -r1.28 -r1.29
--- envelope.c	2000/12/21 21:04:39	1.28
+++ envelope.c	2001/01/22 01:38:24	1.29
@@ -12,7 +12,7 @@
  ********************************************************************
 
  function: PCM data envelope analysis and manipulation
- last mod: $Id: envelope.c,v 1.28 2000/12/21 21:04:39 xiphmont Exp $
+ last mod: $Id: envelope.c,v 1.29 2001/01/22 01:38:24 xiphmont Exp $
 
  Preecho calculation.
 
@@ -111,52 +111,53 @@
   memset(e,0,sizeof(envelope_lookup));
 }
 
-static float _ve_deltai(envelope_lookup *ve,
-		      float *pre,float *post){
-  long n2=ve->winlength*2;
+/* 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;
 
-  float *workA=alloca(sizeof(float)*n2),A=0.f;
-  float *workB=alloca(sizeof(float)*n2),B=0.f;
   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 min=ve->minenergy;
+  float A=min*min*n;
+  float B=A;
+
   /*_analysis_output("A",granulepos,pre,n,0,0);
     _analysis_output("B",granulepos,post,n,0,0);*/
 
   for(i=0;i<n;i++){
-    workA[i]=pre[i]*ve->window[i];
-    workB[i]=post[i]*ve->window[i];
+    A+=pre[i]*pre[i];
+    B+=post[i]*post[i];
   }
+
+  A=todB(A);
+  B=todB(B);
 
-  /*_analysis_output("Awin",granulepos,workA,n,0,0);
-    _analysis_output("Bwin",granulepos,workB,n,0,0);*/
+  return(B-A);
+}
 
-  drft_forward(&ve->drft,workA);
-  drft_forward(&ve->drft,workB);
+static float _ve_ampi(envelope_lookup *ve,float *pre){
+  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 min=ve->minenergy;
-    for(i=0;i<n;i++){
-      if(fabs(workA[i])<min)workA[i]=min;
-      if(fabs(workB[i])<min)workB[i]=min;
-    }
-  }
 
-  /*_analysis_output("Afft",granulepos,workA,n,0,0);
-    _analysis_output("Bfft",granulepos,workB,n,0,0);*/
+  float min=ve->minenergy;
+  float A=min*min*n;
 
   for(i=0;i<n;i++){
-    A+=workA[i]*workA[i];
-    B+=workB[i]*workB[i];
+    A+=pre[i]*pre[i];
   }
 
   A=todB(A);
-  B=todB(B);
-
-  return(B-A);
+  return(A);
 }
 
 long _ve_envelope_search(vorbis_dsp_state *v,long searchpoint){
@@ -164,7 +165,7 @@
   codec_setup_info *ci=vi->codec_setup;
   envelope_lookup *ve=((backend_lookup_state *)(v->backend_state))->ve;
   long i,j;
-  
+
   /* make sure we have enough storage to match the PCM */
   if(v->pcm_storage>ve->storage){
     ve->storage=v->pcm_storage;
@@ -194,7 +195,7 @@
     j=v->centerW+ci->blocksizes[1]/4-ci->blocksizes[0]/4;
   else
     j=v->centerW;
-
+  
   while(j+ve->winlength<=v->pcm_current){
     for(i=0;i<ve->ch;i++){
       float *filtered=ve->filtered[i]+j;
@@ -204,13 +205,20 @@
         /*granulepos++;*/
         return(0);
       }
+      if(m<ci->postecho_thresh){
+	/*granulepos++;*/
+	return(0);
+      }
       /*granulepos++;*/
     }
     
-    j+=ci->blocksizes[0]/2;
-    if(j>=searchpoint)return(1);
+    j+=min(ci->blocksizes[0],ve->winlength)/2;
+
+    if(j>=searchpoint){
+      return(1);
+    }
   }
-  
+ 
   return(-1);
 }
 

1.35      +58 -64    vorbis/lib/floor0.c

Index: floor0.c
===================================================================
RCS file: /usr/local/cvsroot/vorbis/lib/floor0.c,v
retrieving revision 1.34
retrieving revision 1.35
diff -u -r1.34 -r1.35
--- floor0.c	2000/12/21 21:04:39	1.34
+++ floor0.c	2001/01/22 01:38:24	1.35
@@ -12,7 +12,7 @@
  ********************************************************************
 
  function: floor backend 0 implementation
- last mod: $Id: floor0.c,v 1.34 2000/12/21 21:04:39 xiphmont Exp $
+ last mod: $Id: floor0.c,v 1.35 2001/01/22 01:38:24 xiphmont Exp $
 
  ********************************************************************/
 
@@ -238,12 +238,13 @@
 }
 
 /* generate the whole freq response curve of an LSP IIR filter */
+/* didn't need in->out seperation, modifies the flr[] vector; takes in
+   a dB scale floor, puts out linear */
 static int floor0_forward(vorbis_block *vb,vorbis_look_floor *i,
-		    float *in,float *out,vorbis_bitbuffer *vbb){
+		    float *flr){
   long j;
   vorbis_look_floor0 *look=(vorbis_look_floor0 *)i;
   vorbis_info_floor0 *info=look->vi;
-  float *work=alloca((look->ln+look->n)*sizeof(float));
   float amp;
   long bits=0;
   long val=0;
@@ -258,20 +259,17 @@
   sprintf(buffer,"lsp0coeff_%d.vqd",vb->mode);
   of=fopen(buffer,"a");
 #endif
-
-  sprintf(buffer,"lsp0ent_%d.vqd",vb->mode);
-  ef=fopen(buffer,"a");
 #endif
 
-  /* our floor comes in on a linear scale; go to a [-Inf...0] dB
-     scale.  The curve has to be positive, so we offset it. */
+  /* our floor comes in on a [-Inf...0] dB scale.  The curve has to be
+     positive, so we offset it. */
 
   for(j=0;j<look->n;j++)
-    work[j]=todB(in[j])+info->ampdB;
+    flr[j]+=info->ampdB;
 
   /* use 'out' as temp storage */
   /* Convert our floor to a set of lpc coefficients */ 
-  amp=sqrt(_curve_to_lpc(work,out,look));
+  amp=sqrt(_curve_to_lpc(flr,flr,look));
 
   /* amp is in the range (0. to ampdB].  Encode that range using
      ampbits bits */
@@ -284,7 +282,7 @@
     if(val<0)val=0;           /* likely */
     if(val>maxval)val=maxval; /* not bloody likely */
 
-    /*oggpack_write(&vb->opb,val,info->ampbits);*/
+    oggpack_write(&vb->opb,val,info->ampbits);
     if(val>0)
       amp=(float)val/maxval*info->ampdB;
     else
@@ -292,41 +290,68 @@
   }
 
   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=be->fullbooks+info->books[0];
-    bitbuf_write(vbb,0,_ilog(info->numbooks));
+    codebook *b;
+    int booknum;
 
     /* LSP <-> LPC is orthogonal and LSP quantizes more stably  */
-    vorbis_lpc_to_lsp(out,out,look->m);
+    _analysis_output("lpc",seq,flr,look->m,0,0);
+
+    vorbis_lpc_to_lsp(flr,flr,look->m);
 
+    _analysis_output("lsp",seq,flr,look->m,0,0);
+
 #ifdef ANALYSIS
     {
-      float *lspwork=alloca(look->m*sizeof(float));
-      memcpy(lspwork,out,look->m*sizeof(float));
-      vorbis_lsp_to_curve(work,look->linearmap,look->n,look->ln,
-			  lspwork,look->m,amp,info->ampdB);
-      _analysis_output("prefit",seq,work,look->n,0,1);
+      float *lspwork2=alloca(look->m*sizeof(float));
+      memcpy(lspwork2,flr,sizeof(float)*look->m);
+      memcpy(lspwork,flr,sizeof(float)*look->m);
+      vorbis_lsp_to_curve(flr,look->linearmap,look->n,look->ln,
+			  lspwork2,look->m,amp,info->ampdB);
 
+      _analysis_output("prefit",seq++,flr,look->n,0,1);
+      memcpy(flr,lspwork,sizeof(float)*look->m);
     }
 
 #endif
 
+    /* which codebook to use? We do it only by range right now. */
+    if(info->numbooks>1){
+      float last=0.;
+      for(j=0;j<look->m;j++){
+	float val=flr[j]-last;
+	if(val<info->lessthan || val>info->greaterthan)break;
+	last=flr[j];
+      }
+      if(j<look->m)
+	booknum=0;
+      else
+	booknum=1;
+    }else
+      booknum=0;
+
+    b=be->fullbooks+info->books[booknum];
+    oggpack_write(&vb->opb,booknum,_ilog(info->numbooks));
 
-#if 1
+
 #ifdef TRAIN_LSP
     {
       float last=0.f;
       for(j=0;j<look->m;j++){
-	fprintf(of,"%.12g, ",out[j]-last);
-	last=out[j];
+	fprintf(of,"%.12g, ",flr[j]-last);
+	last=flr[j];
       }
     }
     fprintf(of,"\n");
     fclose(of);
-#endif
+
+    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
@@ -334,8 +359,8 @@
        nailed to the last quantized value of the previous block. */
 
     for(j=0;j<look->m;j+=b->dim){
-      int entry=_f0_fit(b,out,work,j);
-      bits+=vorbis_book_bufencode(b,entry,vbb);
+      int entry=_f0_fit(b,flr,lspwork,j);
+      bits+=vorbis_book_encode(b,entry,&vb->opb);
 
 #ifdef TRAIN_LSP
       fprintf(ef,"%d,\n",entry);
@@ -343,56 +368,25 @@
 
     }
 
-#ifdef ANALYSIS
-    {
-      float last=0;
-      for(j=0;j<look->m;j++){
-	out[j]=work[j]-last;
-	last=work[j];
-      }
-    }
-	
-#endif
-
 #ifdef TRAIN_LSP
     fclose(ef);
 #endif
 
     /* take the coefficients back to a spectral envelope curve */
-    vorbis_lsp_to_curve(out,look->linearmap,look->n,look->ln,
-			work,look->m,amp,info->ampdB);
+    vorbis_lsp_to_curve(flr,look->linearmap,look->n,look->ln,
+			lspwork,look->m,amp,info->ampdB);
     return(val);
   }
 
-  memset(out,0,sizeof(float)*look->n);
+#ifdef TRAIN_LSP
+    fclose(of);
+#endif
+
+  memset(flr,0,sizeof(float)*look->n);
   seq++;
   return(val);
 }
 
-static float floor0_forward2(vorbis_block *vb,vorbis_look_floor *i,
-			  long amp,float error,
-			  vorbis_bitbuffer *vbb){
-
-  vorbis_look_floor0 *look=(vorbis_look_floor0 *)i;
-  vorbis_info_floor0 *info=look->vi;
-  if(amp){
-    long maxval=(1L<<info->ampbits)-1;
-    long adj=rint(todB(error)/info->ampdB*maxval/2);
-    
-    amp+=adj;
-    if(amp<1)amp=1;
-   
-    oggpack_write(&vb->opb,amp,info->ampbits);
-    bitbuf_pack(&vb->opb,vbb);
-    return(fromdB((float)adj/maxval*info->ampdB));
-  }else{
-    oggpack_write(&vb->opb,0,info->ampbits);
-    bitbuf_pack(&vb->opb,vbb);
-  }    
-  return(0.f);
-}
-
-
 static int floor0_inverse(vorbis_block *vb,vorbis_look_floor *i,float *out){
   vorbis_look_floor0 *look=(vorbis_look_floor0 *)i;
   vorbis_info_floor0 *info=look->vi;
@@ -434,7 +428,7 @@
 /* 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_forward2,&floor0_inverse
+  &floor0_free_look,&floor0_forward,&floor0_inverse
 };
 
 

1.35      +2 -2      vorbis/lib/info.c

Index: info.c
===================================================================
RCS file: /usr/local/cvsroot/vorbis/lib/info.c,v
retrieving revision 1.34
retrieving revision 1.35
diff -u -r1.34 -r1.35
--- info.c	2001/01/18 10:54:32	1.34
+++ info.c	2001/01/22 01:38:24	1.35
@@ -12,7 +12,7 @@
  ********************************************************************
 
  function: maintain the info structure, info <-> header packets
- last mod: $Id: info.c,v 1.34 2001/01/18 10:54:32 msmith Exp $
+ last mod: $Id: info.c,v 1.35 2001/01/22 01:38:24 xiphmont Exp $
 
  ********************************************************************/
 
@@ -409,7 +409,7 @@
 }
 
 static int _vorbis_pack_comment(oggpack_buffer *opb,vorbis_comment *vc){
-  char temp[]="Xiphophorus libVorbis I 20001031";
+  char temp[]="Xiphophorus libVorbis I 20010119";
 
   /* preamble */  
   oggpack_write(opb,0x03,8);

1.5       +2 -2      vorbis/lib/lookup.c

Index: lookup.c
===================================================================
RCS file: /usr/local/cvsroot/vorbis/lib/lookup.c,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -r1.4 -r1.5
--- lookup.c	2000/12/21 21:04:39	1.4
+++ lookup.c	2001/01/22 01:38:25	1.5
@@ -12,7 +12,7 @@
  ********************************************************************
 
   function: lookup based functions
-  last mod: $Id: lookup.c,v 1.4 2000/12/21 21:04:39 xiphmont Exp $
+  last mod: $Id: lookup.c,v 1.5 2001/01/22 01:38:25 xiphmont Exp $
 
  ********************************************************************/
 
@@ -46,7 +46,7 @@
 #include <stdio.h>
 /* interpolated lookup based fromdB function, domain -140dB to 0dB only */
 float vorbis_fromdBlook(float a){
-  int i=vorbis_ftoi(a*((float)(-(1<<FROMdB2_SHIFT)))-5.f);
+  int i=vorbis_ftoi(a*((float)(-(1<<FROMdB2_SHIFT)))-.5f);
   return (i<0)?1.f:
     ((i>=(FROMdB_LOOKUP_SZ<<FROMdB_SHIFT))?0.f:
      FROMdB_LOOKUP[i>>FROMdB_SHIFT]*FROMdB2_LOOKUP[i&FROMdB2_MASK]);

1.5       +10 -10    vorbis/lib/lookup_data.h

Index: lookup_data.h
===================================================================
RCS file: /usr/local/cvsroot/vorbis/lib/lookup_data.h,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -r1.4 -r1.5
--- lookup_data.h	2000/12/21 21:04:39	1.4
+++ lookup_data.h	2001/01/22 01:38:25	1.5
@@ -12,7 +12,7 @@
  ********************************************************************
 
   function: lookup data; generated by lookups.pl; edit there
-  last mod: $Id: lookup_data.h,v 1.4 2000/12/21 21:04:39 xiphmont Exp $
+  last mod: $Id: lookup_data.h,v 1.5 2001/01/22 01:38:25 xiphmont Exp $
 
  ********************************************************************/
 
@@ -73,15 +73,15 @@
 #define INVSQ2EXP_LOOKUP_MAX 32
 static float INVSQ2EXP_LOOKUP[INVSQ2EXP_LOOKUP_MAX-\
                               INVSQ2EXP_LOOKUP_MIN+1]={
-	          65536f,    46340.95001f,          32768f,    23170.47501f,
-	          16384f,     11585.2375f,           8192f,    5792.618751f,
-	           4096f,    2896.309376f,           2048f,    1448.154688f,
-	           1024f,    724.0773439f,            512f,     362.038672f,
-	            256f,     181.019336f,            128f,    90.50966799f,
-	             64f,      45.254834f,             32f,      22.627417f,
-	             16f,     11.3137085f,              8f,    5.656854249f,
-	              4f,    2.828427125f,              2f,    1.414213562f,
-	              1f,   0.7071067812f,            0.5f,   0.3535533906f,
+	         65536.f,    46340.95001f,         32768.f,    23170.47501f,
+	         16384.f,     11585.2375f,          8192.f,    5792.618751f,
+	          4096.f,    2896.309376f,          2048.f,    1448.154688f,
+	          1024.f,    724.0773439f,           512.f,     362.038672f,
+	           256.f,     181.019336f,           128.f,    90.50966799f,
+	            64.f,      45.254834f,            32.f,      22.627417f,
+	            16.f,     11.3137085f,             8.f,    5.656854249f,
+	             4.f,    2.828427125f,             2.f,    1.414213562f,
+	             1.f,   0.7071067812f,            0.5f,   0.3535533906f,
                    0.25f,   0.1767766953f,          0.125f,  0.08838834765f,
                  0.0625f,  0.04419417382f,        0.03125f,  0.02209708691f,
                0.015625f,  0.01104854346f,      0.0078125f, 0.005524271728f,

1.14      +108 -44   vorbis/lib/lsp.c

Index: lsp.c
===================================================================
RCS file: /usr/local/cvsroot/vorbis/lib/lsp.c,v
retrieving revision 1.13
retrieving revision 1.14
diff -u -r1.13 -r1.14
--- lsp.c	2000/12/21 21:04:39	1.13
+++ lsp.c	2001/01/22 01:38:25	1.14
@@ -12,11 +12,11 @@
  ********************************************************************
 
   function: LSP (also called LSF) conversion routines
-  last mod: $Id: lsp.c,v 1.13 2000/12/21 21:04:39 xiphmont Exp $
+  last mod: $Id: lsp.c,v 1.14 2001/01/22 01:38:25 xiphmont Exp $
 
-  The LSP generation code is taken (with minimal modification) from
-  "On the Computation of the LSP Frequencies" by Joseph Rothweiler
-  <rothwlr at altavista.net>, available at:
+  The LSP generation code is taken (with minimal modification and a
+  few bugfixes) from "On the Computation of the LSP Frequencies" by
+  Joseph Rothweiler <rothwlr at altavista.net>, available at:
   
   http://www2.xtdl.com/~rothwlr/lsfpaper/lsfpage.html 
 
@@ -53,7 +53,7 @@
 
 /* undefine both for the 'old' but more precise implementation */
 #undef   FLOAT_LOOKUP
-#undef   INT_LOOKUP
+#undef    INT_LOOKUP
 
 #ifdef FLOAT_LOOKUP
 #include "lookup.c" /* catch this in the build system; we #include for
@@ -81,12 +81,24 @@
     int c=m>>1;
 
     do{
-      p*=ftmp[0]-w;
-      q*=ftmp[1]-w;
+      q*=ftmp[0]-w;
+      p*=ftmp[1]-w;
       ftmp+=2;
     }while(--c);
 
-    q=frexp(p*p*(1.f+w)+q*q*(1.f-w),&qexp);
+    if(m&1){
+      /* odd order filter; slightly assymetric */
+      /* the last coefficient */
+      q*=ftmp[0]-w;
+      q*=q;
+      p*=p*(1.f-w*w);
+    }else{
+      /* even order filter; still symmetric */
+      q*=q*(1.f+w);
+      p*=p*(1.f-w);
+    }
+
+    q=frexp(p+q,&qexp);
     q=vorbis_fromdBlook(amp*             
                         vorbis_invsqlook(q)*
                         vorbis_invsq2explook(qexp+m)- 
@@ -144,37 +156,68 @@
     int qexp=0,shift;
     long wi=vorbis_coslook_i(k*65536/ln);
 
-    pi*=labs(ilsp[0]-wi);
-    qi*=labs(ilsp[1]-wi);
+    qi*=labs(ilsp[0]-wi);
+    pi*=labs(ilsp[1]-wi);
 
-    for(j=2;j<m;j+=2){
+    for(j=3;j<m;j+=2){
       if(!(shift=MLOOP_1[(pi|qi)>>25]))
         if(!(shift=MLOOP_2[(pi|qi)>>19]))
           shift=MLOOP_3[(pi|qi)>>16];
+      qi=(qi>>shift)*labs(ilsp[j-1]-wi);
       pi=(pi>>shift)*labs(ilsp[j]-wi);
-      qi=(qi>>shift)*labs(ilsp[j+1]-wi);
       qexp+=shift;
     }
     if(!(shift=MLOOP_1[(pi|qi)>>25]))
       if(!(shift=MLOOP_2[(pi|qi)>>19]))
         shift=MLOOP_3[(pi|qi)>>16];
-    pi>>=shift;
-    qi>>=shift;
-    qexp+=shift-7*m;
 
     /* pi,qi normalized collectively, both tracked using qexp */
 
-    /* p*=p(1-w), q*=q(1+w), let normalization drift because it isn't
-       worth tracking step by step */
-
-    pi=((pi*pi)>>16);
-    qi=((qi*qi)>>16);
-    qexp=qexp*2+m;
+    if(m&1){
+      /* odd order filter; slightly assymetric */
+      /* the last coefficient */
+      qi=(qi>>shift)*labs(ilsp[j-1]-wi);
+      pi=(pi>>shift)<<14;
+      qexp+=shift;
 
-    qi*=(1<<14)-wi;
-    pi*=(1<<14)+wi;
+      if(!(shift=MLOOP_1[(pi|qi)>>25]))
+	if(!(shift=MLOOP_2[(pi|qi)>>19]))
+	  shift=MLOOP_3[(pi|qi)>>16];
+      
+      pi>>=shift;
+      qi>>=shift;
+      qexp+=shift-14*((m+1)>>1);
+
+      pi=((pi*pi)>>16);
+      qi=((qi*qi)>>16);
+      qexp=qexp*2+m;
+
+      pi*=(1<<14)-((wi*wi)>>14);
+      qi+=pi>>14;
+
+      //q*=ftmp[0]-w;
+      //q*=q;
+      //p*=p*(1.f-w*w);
+    }else{
+      /* even order filter; still symmetric */
+
+      /* p*=p(1-w), q*=q(1+w), let normalization drift because it isn't
+	 worth tracking step by step */
+      
+      pi>>=shift;
+      qi>>=shift;
+      qexp+=shift-7*m;
+
+      pi=((pi*pi)>>16);
+      qi=((qi*qi)>>16);
+      qexp=qexp*2+m;
+      
+      pi*=(1<<14)-wi;
+      qi*=(1<<14)+wi;
+      qi=(qi+pi)>>14;
+      
+    }
     
-    qi=(qi+pi)>>14;
 
     /* we've let the normalization drift because it wasn't important;
        however, for the lookup, things must be normalized again.  We
@@ -200,7 +243,7 @@
 #else 
 
 /* old, nonoptimized but simple version for any poor sap who needs to
-   figure out what the hell this code does, or wants the other tiny
+   figure out what the hell this code does, or wants the other
    fraction of a dB precision */
 
 /* side effect: changes *lsp to cosines of lsp */
@@ -216,12 +259,22 @@
     float p=.5f;
     float q=.5f;
     float w=2.f*cos(wdel*k);
-    for(j=0;j<m;j+=2){
+    for(j=1;j<m;j+=2){
+      q *= w-lsp[j-1];
       p *= w-lsp[j];
-      q *= w-lsp[j+1];
     }
-    p*=p*(2.f+w);
-    q*=q*(2.f-w);
+    if(j==m){
+      /* odd order filter; slightly assymetric */
+      /* the last coefficient */
+      q*=w-lsp[j-1];
+      p*=p*(4.f-w*w);
+      q*=q;
+    }else{
+      /* even order filter; still symmetric */
+      p*=p*(2.f-w);
+      q*=q*(2.f+w);
+    }
+
     q=fromdB(amp/sqrt(p+q)-ampoffset);
 
     curve[i]=q;
@@ -339,37 +392,48 @@
 
 /* Convert lpc coefficients to lsp coefficients */
 void vorbis_lpc_to_lsp(float *lpc,float *lsp,int m){
-  int order2=m/2;
+  int order2=(m+1)>>1;
+  int g1_order,g2_order;
   float *g1=alloca(sizeof(float)*(order2+1));
   float *g2=alloca(sizeof(float)*(order2+1));
   float *g1r=alloca(sizeof(float)*(order2+1));
   float *g2r=alloca(sizeof(float)*(order2+1));
   int i;
 
+  /* even and odd are slightly different base cases */
+  g1_order=(m+1)>>1;
+  g2_order=(m)  >>1;
+
   /* Compute the lengths of the x polynomials. */
   /* Compute the first half of K & R F1 & F2 polynomials. */
   /* Compute half of the symmetric and antisymmetric polynomials. */
   /* Remove the roots at +1 and -1. */
   
-  g1[order2] = 1.f;
-  for(i=0;i<order2;i++) g1[order2-i-1] = lpc[i]+lpc[m-i-1];
-  g2[order2] = 1.f;
-  for(i=0;i<order2;i++) g2[order2-i-1] = lpc[i]-lpc[m-i-1];
+  g1[g1_order] = 1.f;
+  for(i=1;i<=g1_order;i++) g1[g1_order-i] = lpc[i-1]+lpc[m-i];
+  g2[g2_order] = 1.f;
+  for(i=1;i<=g2_order;i++) g2[g2_order-i] = lpc[i-1]-lpc[m-i];
   
-  for(i=0; i<order2;i++) g1[order2-i-1] -= g1[order2-i];
-  for(i=0; i<order2;i++) g2[order2-i-1] += g2[order2-i];
+  if(g1_order>g2_order){
+    for(i=2; i<=g2_order;i++) g2[g2_order-i] += g2[g2_order-i+2];
+  }else{
+    for(i=1; i<=g1_order;i++) g1[g1_order-i] -= g1[g1_order-i+1];
+    for(i=1; i<=g2_order;i++) g2[g2_order-i] += g2[g2_order-i+1];
+  }
 
   /* Convert into polynomials in cos(alpha) */
-  cheby(g1,order2);
-  cheby(g2,order2);
+  cheby(g1,g1_order);
+  cheby(g2,g2_order);
 
   /* Find the roots of the 2 even polynomials.*/
   
-  Newton_Raphson_Maehly(g1,order2,g1r);
-  Newton_Raphson_Maehly(g2,order2,g2r);
+  Newton_Raphson_Maehly(g1,g1_order,g1r);
+  Newton_Raphson_Maehly(g2,g2_order,g2r);
+
+  for(i=0;i<g1_order;i++)
+    lsp[i*2] = acos(g1r[i]);
+
+  for(i=0;i<g2_order;i++)
+    lsp[i*2+1] = acos(g2r[i]);
   
-  for(i=0;i<m;i+=2){
-    lsp[i] = acos(g1r[i/2]);
-    lsp[i+1] = acos(g2r[i/2]);
-  }
 }

1.23      +87 -151   vorbis/lib/mapping0.c

Index: mapping0.c
===================================================================
RCS file: /usr/local/cvsroot/vorbis/lib/mapping0.c,v
retrieving revision 1.22
retrieving revision 1.23
diff -u -r1.22 -r1.23
--- mapping0.c	2000/12/21 21:04:39	1.22
+++ mapping0.c	2001/01/22 01:38:25	1.23
@@ -12,7 +12,7 @@
  ********************************************************************
 
  function: channel mapping 0 implementation
- last mod: $Id: mapping0.c,v 1.22 2000/12/21 21:04:39 xiphmont Exp $
+ last mod: $Id: mapping0.c,v 1.23 2001/01/22 01:38:25 xiphmont Exp $
 
  ********************************************************************/
 
@@ -39,6 +39,7 @@
    parameters from other areas of the mode/mapping */
 
 typedef struct {
+  drft_lookup fft_look;
   vorbis_info_mode *mode;
   vorbis_info_mapping0 *map;
 
@@ -53,7 +54,6 @@
   vorbis_func_residue **residue_func;
 
   int ch;
-  float **decay;
   long lastframe; /* if a different mode is called, we need to 
                      invalidate decay */
 } vorbis_look_mapping0;
@@ -76,6 +76,8 @@
   int i;
   vorbis_look_mapping0 *l=(vorbis_look_mapping0 *)look;
   if(l){
+    drft_clear(&l->fft_look);
+
     for(i=0;i<l->map->submaps;i++){
       l->time_func[i]->free_look(l->time_look[i]);
       l->floor_func[i]->free_look(l->floor_look[i]);
@@ -83,13 +85,6 @@
       if(l->psy_look)_vp_psy_clear(l->psy_look+i);
     }
 
-    if(l->decay){
-      for(i=0;i<l->ch;i++){
-	if(l->decay[i])_ogg_free(l->decay[i]);
-      }
-      _ogg_free(l->decay);
-    }
-
     _ogg_free(l->time_func);
     _ogg_free(l->floor_func);
     _ogg_free(l->residue_func);
@@ -144,12 +139,8 @@
   }
 
   look->ch=vi->channels;
-  if(ci->psys){
-    look->decay=_ogg_calloc(vi->channels,sizeof(float *));
-    for(i=0;i<vi->channels;i++)
-      look->decay[i]=_ogg_calloc(ci->blocksizes[vm->blockflag]/2,sizeof(float));
-  }
 
+  if(vd->analysisp)drft_init(&look->fft_look,ci->blocksizes[vm->blockflag]);
   return(look);
 }
 
@@ -212,171 +203,116 @@
 /* no time mapping implementation for now */
 static long seq=0;
 static int mapping0_forward(vorbis_block *vb,vorbis_look_mapping *l){
-  vorbis_dsp_state     *vd=vb->vd;
-  vorbis_info          *vi=vd->vi;
-  backend_lookup_state *b=vb->vd->backend_state;
-  vorbis_look_mapping0 *look=(vorbis_look_mapping0 *)l;
-  vorbis_info_mapping0 *info=look->map;
-  vorbis_info_mode     *mode=look->mode;
-  int                   n=vb->pcmend;
+  vorbis_dsp_state      *vd=vb->vd;
+  vorbis_info           *vi=vd->vi;
+  backend_lookup_state  *b=vb->vd->backend_state;
+  vorbis_look_mapping0  *look=(vorbis_look_mapping0 *)l;
+  vorbis_info_mapping0  *info=look->map;
+  vorbis_info_mode      *mode=look->mode;
+  vorbis_block_internal *vbi=(vorbis_block_internal *)vb->internal;
+  int                    n=vb->pcmend;
   int i,j;
   float *window=b->window[vb->W][vb->lW][vb->nW][mode->windowtype];
 
   float **pcmbundle=alloca(sizeof(float *)*vi->channels);
 
   int    *nonzero=alloca(sizeof(int)*vi->channels);
-  float **floor=_vorbis_block_alloc(vb,vi->channels*sizeof(float *));
-  float **nonquant=_vorbis_block_alloc(vb,vi->channels*sizeof(float *));
-
-  vorbis_bitbuffer      vbb_res;
-  vorbis_bitbuffer      *vbb_flr=_vorbis_block_alloc(vb,
-						     sizeof(vorbis_bitbuffer)*
-						     vi->channels);
-
-  for(i=0;i<vi->channels;i++)
-    bitbuf_init(vbb_flr+i,vb);
-  bitbuf_init(&vbb_res,vb);
-  
-  /* time domain pre-window: NONE IMPLEMENTED */
 
-  /* window the PCM data: takes PCM vector, vb; modifies PCM vector */
+  float **floor=_vorbis_block_alloc(vb,vi->channels*sizeof(float *));
+  float *additional=_vorbis_block_alloc(vb,n*sizeof(float));
+  float newmax=vbi->ampmax;
 
   for(i=0;i<vi->channels;i++){
     float *pcm=vb->pcm[i];
+    float scale=4.f/n;
+    int submap=info->chmuxlist[i];
+    float ret;
+
+    _analysis_output("pcm",seq,pcm,n,0,0);
+
+    /* window the PCM data */
     for(j=0;j<n;j++)
-      pcm[j]*=window[j];
-  }
+      additional[j]=pcm[j]*=window[j];
             
-  /* time-domain post-window: NONE IMPLEMENTED */
+    _analysis_output("windowed",seq,pcm,n,0,0);
 
-  /* transform the PCM data; takes PCM vector, vb; modifies PCM vector */
-  /* only MDCT right now.... */
-  for(i=0;i<vi->channels;i++){
-    float *pcm=vb->pcm[i];
-    float *outq=nonquant[i]=_vorbis_block_alloc(vb,n*sizeof(float));
+    /* transform the PCM data */
+    /* only MDCT right now.... */
     mdct_forward(b->transform[vb->W][0],pcm,pcm);
+    
+    /* FFT yields more accurate tonal estimation (not phase sensitive) */
+    drft_forward(&look->fft_look,additional);
+    
+    additional[0]*=scale;
+    for(j=1;j<n-1;j+=2)
+      additional[(j+1)>>1]=scale*FAST_HYPOT(additional[j],additional[j+1]);
+
+    /* set up our masking data working vector, and stash unquantized
+       data for later */
+    /*memcpy(pcm+n/2,pcm,n*sizeof(float)/2);*/
+    memcpy(additional+n/2,pcm,n*sizeof(float)/2);
+
+    /* begin masking work */
+    floor[i]=_vorbis_block_alloc(vb,n*sizeof(float)/2);
+
+    //_analysis_output("fft",seq,additional,n/2,0,1);
+    //_analysis_output("mdct",seq,additional+n/2,n/2,0,1);
+    //_analysis_output("lfft",seq,additional,n/2,0,0);
+    //_analysis_output("lmdct",seq,additional+n/2,n/2,0,0);
+
+    /* perform psychoacoustics; do masking */
+    ret=_vp_compute_mask(look->psy_look+submap,additional,additional+n/2,
+			 floor[i],NULL,vbi->ampmax);
+    if(ret>newmax)newmax=ret;
 
-    memcpy(pcm+n/2,pcm,n*sizeof(float)/2);
-    mdct_backward(b->transform[vb->W][0],pcm,outq);
-    for(j=0;j<n;j++)
-      outq[j]*=window[j];
+    _analysis_output("prefloor",seq,floor[i],n/2,0,0);
     
-  }
+    /* perform floor encoding */
+    nonzero[i]=look->floor_func[submap]->
+      forward(vb,look->floor_look[submap],floor[i]);
 
-  {
-    for(i=0;i<vi->channels;i++){
-      float *pcm=vb->pcm[i];
-      float *decay=look->decay[i];
-      int submap=info->chmuxlist[i];
-      floor[i]=_vorbis_block_alloc(vb,n*sizeof(float)/2);
-
-      /* if some other mode/mapping was called last frame, our decay
-         accumulator is out of date.  Clear it. */
-      if(look->lastframe+1 != vb->sequence)
-	memset(decay,0,n*sizeof(float)/2);
-
-      /* perform psychoacoustics; do masking */
-      _vp_compute_mask(look->psy_look+submap,pcm,floor[i],decay);
- 
-      _analysis_output("decay",seq,decay,n/2,0,1);
-      _analysis_output("mdct",seq,pcm,n/2,0,1);
-      _analysis_output("lmdct",seq,pcm,n/2,0,0);
-      _analysis_output("prefloor",seq,floor[i],n/2,0,1);
-
-      /* perform floor encoding */
-      nonzero[i]=look->floor_func[submap]->
-	forward(vb,look->floor_look[submap],floor[i],floor[i],vbb_flr+i);
+    _analysis_output("floor",seq,floor[i],n/2,0,1);
 
-      _analysis_output("floor",seq,floor[i],n/2,0,1);
+    /* apply the floor, do optional noise levelling */
+    _vp_apply_floor(look->psy_look+submap,pcm,floor[i]);
 
-      /* apply the floor, do optional noise levelling */
-      _vp_apply_floor(look->psy_look+submap,pcm,floor[i]);
-      
-      _analysis_output("res",seq++,pcm,n/2,0,0);
+    _analysis_output("res",seq++,pcm,n/2,0,0);
       
 #ifdef TRAIN_RES
-      if(nonzero[i]){
-	FILE *of;
-	char buffer[80];
-	int i;
-	
-	sprintf(buffer,"residue_%d.vqd",vb->mode);
-	of=fopen(buffer,"a");
-	for(i=0;i<n/2;i++)
-	  fprintf(of,"%.2f, ",pcm[i]);
-	fprintf(of,"\n");
-	fclose(of);
-      }
-#endif      
-
-    }
-    
-    /* perform residue encoding with residue mapping; this is
-       multiplexed.  All the channels belonging to one submap are
-       encoded (values interleaved), then the next submap, etc */
-    
-    for(i=0;i<info->submaps;i++){
-      int ch_in_bundle=0;
-      for(j=0;j<vi->channels;j++){
-	if(info->chmuxlist[j]==i && nonzero[j]>0){
-	  pcmbundle[ch_in_bundle++]=vb->pcm[j];
-	}
-      }
+    if(nonzero[i]){
+      FILE *of;
+      char buffer[80];
+      int i;
       
-      look->residue_func[i]->forward(vb,look->residue_look[i],
-				     pcmbundle,ch_in_bundle,&vbb_res);
+      sprintf(buffer,"residue_%d.vqd",vb->mode);
+      of=fopen(buffer,"a");
+      for(i=0;i<n/2;i++)
+	fprintf(of,"%.2f, ",pcm[i]);
+      fprintf(of,"\n");
+      fclose(of);
     }
+#endif      
+    
+  }
 
-    /* go back and compute the original MDCT inverse and our quantized
-       inverse; we'll want to give the floor mapping a shot at
-       massaging things before we write out the final version. */
-
-    {
-      for(i=0;i<vi->channels;i++){
-	float *pcm=vb->pcm[i];
-	float *pcmori=vb->pcm[i]+n/2;
-	float *orig=nonquant[i];
-	float *quant=floor[i];
-	float num=0.f,den=0.f;
-	int submap=info->chmuxlist[i];
-	
-	if(nonzero[i]){
-
-	  for(j=0;j<n/2;j++)
-	    pcm[j]=pcmori[j]-pcm[j]*quant[j];
-	  
-	  mdct_backward(b->transform[vb->W][0],pcm,pcm);
-	  for(j=0;j<n;j++)
-	    pcm[j]*=window[j];
-	  
-	  /* weighted compare twixt original and quantized mdct output */
-	  for(j=0;j<n;j++){
-	    den+=(pcm[j]*pcm[j]);
-	    num+=(orig[j]*orig[j]);
-	  }
-	  
-	  num=sqrt(num);
-	  den=sqrt(den);
-
-	}
-
-	num=look->floor_func[submap]->
-	  forward2(vb,look->floor_look[submap],
-		   nonzero[i],den==0.f?0.:num/den,vbb_flr+i);
-
-	/*for(j=0;j<n;j++)
-	  pcm[j]*=num;
-	_analysis_output("i_orig",seq,orig,n,0,0);
-	_analysis_output("i_quant",seq++,pcm,n,0,0);
-	*/
+  vbi->ampmax=newmax;
 
+  /* perform residue encoding with residue mapping; this is
+     multiplexed.  All the channels belonging to one submap are
+     encoded (values interleaved), then the next submap, etc */
+  
+  for(i=0;i<info->submaps;i++){
+    int ch_in_bundle=0;
+    for(j=0;j<vi->channels;j++){
+      if(info->chmuxlist[j]==i && nonzero[j]>0){
+	pcmbundle[ch_in_bundle++]=vb->pcm[j];
       }
     }
-
-    bitbuf_pack(&vb->opb,&vbb_res);
-
+    
+    look->residue_func[i]->forward(vb,look->residue_look[i],
+				   pcmbundle,ch_in_bundle);
   }
-
+  
   look->lastframe=vb->sequence;
   return(0);
 }

1.9       +3 -3      vorbis/lib/masking.h

Index: masking.h
===================================================================
RCS file: /usr/local/cvsroot/vorbis/lib/masking.h,v
retrieving revision 1.8
retrieving revision 1.9
diff -u -r1.8 -r1.9
--- masking.h	2000/12/21 21:04:39	1.8
+++ masking.h	2001/01/22 01:38:25	1.9
@@ -12,7 +12,7 @@
  ********************************************************************
 
  function: masking curve data for psychoacoustics
- last mod: $Id: masking.h,v 1.8 2000/12/21 21:04:39 xiphmont Exp $
+ last mod: $Id: masking.h,v 1.9 2001/01/22 01:38:25 xiphmont Exp $
 
  ********************************************************************/
 
@@ -185,8 +185,8 @@
 
 float tone_8000_100dB_SL[EHMER_MAX]={
  -18, -12,  -7,  -3,   0,   2,   6,   9,    12,  19,  22,  21,  19,  21,  40,  40,
-  80,  60,  35,  25,  15,   5,  -5, -15,   -25, -35,-900,-900,-900,-900,-900,-900,
--900,-900,-900,-900,-900,-900,-900,-900,  -900,-900,-900,-900,-900,-900,-900,-900,
+  80,  60,  35,  25,  15,   5,   5,   5,    25,  30,  35,- 40,  45,  50,  55,  60,
+  65,  70,  80,  90, 100,-900,-900,-900,  -900,-900,-900,-900,-900,-900,-900,-900,
 -900,-900,-900,-900,-900,-900,-900,-900};
 
 #if 0 /* not used for the time being */

1.35      +356 -370  vorbis/lib/psy.c

Index: psy.c
===================================================================
RCS file: /usr/local/cvsroot/vorbis/lib/psy.c,v
retrieving revision 1.34
retrieving revision 1.35
diff -u -r1.34 -r1.35
--- psy.c	2000/12/21 21:04:40	1.34
+++ psy.c	2001/01/22 01:38:25	1.35
@@ -12,7 +12,7 @@
  ********************************************************************
 
  function: psychoacoustics not including preecho
- last mod: $Id: psy.c,v 1.34 2000/12/21 21:04:40 xiphmont Exp $
+ last mod: $Id: psy.c,v 1.35 2001/01/22 01:38:25 xiphmont Exp $
 
  ********************************************************************/
 
@@ -20,6 +20,7 @@
 #include <math.h>
 #include <string.h>
 #include "vorbis/codec.h"
+#include "codec_internal.h"
 
 #include "masking.h"
 #include "psy.h"
@@ -29,6 +30,8 @@
 #include "scales.h"
 #include "misc.h"
 
+#define NEGINF -9999.f
+
 /* Why Bark scale for encoding but not masking computation? Because
    masking has a strong harmonic dependancy */
 
@@ -47,7 +50,7 @@
   return(ret);
 }
 
-/* Set up decibel threshhold slopes on a Bark frequency scale */
+/* Set up decibel threshold slopes on a Bark frequency scale */
 /* ATH is the only bit left on a Bark scale.  No reason to change it
    right now */
 static void set_curve(float *ref,float *c,int n, float crate){
@@ -83,15 +86,6 @@
     c[i]+=att;
 }
 
-static void linear_curve(float *c){
-  int i;  
-  for(i=0;i<EHMER_MAX;i++)
-    if(c[i]<=-200.f)
-      c[i]=0.f;
-    else
-      c[i]=fromdB(c[i]);
-}
-
 static void interp_curve(float *c,float *c1,float *c2,float del){
   int i;
   for(i=0;i<EHMER_MAX;i++)
@@ -105,8 +99,8 @@
   float ath[EHMER_MAX];
   float tempc[P_LEVELS][EHMER_MAX];
 
-  memcpy(c[0],c[4],sizeof(float)*EHMER_MAX);
-  memcpy(c[2],c[4],sizeof(float)*EHMER_MAX);
+  memcpy(c[0]+2,c[4]+2,sizeof(float)*EHMER_MAX);
+  memcpy(c[2]+2,c[4]+2,sizeof(float)*EHMER_MAX);
 
   /* we add back in the ATH to avoid low level curves falling off to
      -infinity and unneccessarily cutting off high level curves in the
@@ -115,8 +109,8 @@
      mask too little than too much, so be pessimal. */
 
   for(i=0;i<EHMER_MAX;i++){
-    float oc_min=band*.5-1+(i-EHMER_OFFSET)*.125;
-    float oc_max=band*.5-1+(i-EHMER_OFFSET+1)*.125;
+    float oc_min=band*.5+(i-EHMER_OFFSET)*.125;
+    float oc_max=band*.5+(i-EHMER_OFFSET+1)*.125;
     float bark=toBARK(fromOC(oc_min));
     int ibark=floor(bark);
     float del=bark-ibark;
@@ -125,7 +119,7 @@
     if(ibark<26)
       ath_min=ATH_Bark_dB[ibark]*(1.f-del)+ATH_Bark_dB[ibark+1]*del;
     else
-      ath_min=200.f;
+      ath_min=ATH_Bark_dB[25];
 
     bark=toBARK(fromOC(oc_max));
     ibark=floor(bark);
@@ -134,7 +128,7 @@
     if(ibark<26)
       ath_max=ATH_Bark_dB[ibark]*(1.f-del)+ATH_Bark_dB[ibark+1]*del;
     else
-      ath_max=200.f;
+      ath_max=ATH_Bark_dB[25];
 
     ath[i]=min(ath_min,ath_max);
   }
@@ -142,16 +136,16 @@
   /* The c array is comes in as dB curves at 20 40 60 80 100 dB.
      interpolate intermediate dB curves */
   for(i=1;i<P_LEVELS;i+=2){
-    interp_curve(c[i],c[i-1],c[i+1],.5);
+    interp_curve(c[i]+2,c[i-1]+2,c[i+1]+2,.5);
   }
 
   /* normalize curves so the driving amplitude is 0dB */
   /* make temp curves with the ATH overlayed */
   for(i=0;i<P_LEVELS;i++){
-    attenuate_curve(c[i],curveatt_dB[i]);
+    attenuate_curve(c[i]+2,curveatt_dB[i]);
     memcpy(tempc[i],ath,EHMER_MAX*sizeof(float));
     attenuate_curve(tempc[i],-i*10.f);
-    max_curve(tempc[i],c[i]);
+    max_curve(tempc[i],c[i]+2);
   }
 
   /* Now limit the louder curves.
@@ -166,18 +160,37 @@
 
   for(j=1;j<P_LEVELS;j++){
     min_curve(tempc[j],tempc[j-1]);
-    min_curve(c[j],tempc[j]);
+    min_curve(c[j]+2,tempc[j]);
   }
+
+  /* add fenceposts */
+  for(j=0;j<P_LEVELS;j++){
 
-  /* take things out of dB domain into linear amplitude */
-  for(i=0;i<P_LEVELS;i++)
-    linear_curve(c[i]);
+    for(i=0;i<EHMER_MAX;i++)
+      if(c[j][i+2]>-200.f)break;  
+    c[j][0]=i;
 
+    for(i=EHMER_MAX-1;i>=0;i--)
+      if(c[j][i+2]>-200.f)
+	break;
+    c[j][1]=i;
+
+  }
 }
 
 void _vp_psy_init(vorbis_look_psy *p,vorbis_info_psy *vi,int n,long rate){
   long i,j;
+  long maxoc;
   memset(p,0,sizeof(vorbis_look_psy));
+
+
+  p->eighth_octave_lines=vi->eighth_octave_lines;
+  p->shiftoc=rint(log(vi->eighth_octave_lines*8)/log(2))-1;
+
+  p->firstoc=toOC(.25f*rate/n)*(1<<(p->shiftoc+1))-vi->eighth_octave_lines;
+  maxoc=toOC((n*.5f-.25f)*rate/n)*(1<<(p->shiftoc+1))+.5f;
+  p->total_octave_lines=maxoc-p->firstoc+1;
+
   p->ath=_ogg_malloc(n*sizeof(float));
   p->octave=_ogg_malloc(n*sizeof(int));
   p->bark=_ogg_malloc(n*sizeof(float));
@@ -185,95 +198,84 @@
   p->n=n;
 
   /* set up the lookups for a given blocksize and sample rate */
-  /* Vorbis max sample rate is limited by 26 Bark (54kHz) */
+  /* Vorbis max sample rate is currently limited by 26 Bark (54kHz) */
   set_curve(ATH_Bark_dB, p->ath,n,rate);
   for(i=0;i<n;i++)
-    p->ath[i]=fromdB(p->ath[i]);
-  for(i=0;i<n;i++)
     p->bark[i]=toBARK(rate/(2*n)*i); 
 
-  for(i=0;i<n;i++){
-    int oc=toOC((i+.5)*rate/(2.f*n))*2.f+2.f; /* half octaves, actually */
-    if(oc<0)oc=0;
-    if(oc>=P_BANDS)oc=P_BANDS-1;
-    p->octave[i]=oc;
-  }  
+  for(i=0;i<n;i++)
+    p->octave[i]=toOC((i*.5f+.25f)*rate/n)*(1<<(p->shiftoc+1))+.5f;
 
   p->tonecurves=_ogg_malloc(P_BANDS*sizeof(float **));
-  p->noiseatt=_ogg_malloc(P_BANDS*sizeof(float **));
+  p->noisemedian=_ogg_malloc(n*sizeof(float *));
+  p->noiseoffset=_ogg_malloc(n*sizeof(float *));
   p->peakatt=_ogg_malloc(P_BANDS*sizeof(float *));
   for(i=0;i<P_BANDS;i++){
     p->tonecurves[i]=_ogg_malloc(P_LEVELS*sizeof(float *));
-    p->noiseatt[i]=_ogg_malloc(P_LEVELS*sizeof(float));
     p->peakatt[i]=_ogg_malloc(P_LEVELS*sizeof(float));
   }
 
   for(i=0;i<P_BANDS;i++)
     for(j=0;j<P_LEVELS;j++){
-      p->tonecurves[i][j]=_ogg_malloc(EHMER_MAX*sizeof(float));
+      p->tonecurves[i][j]=_ogg_malloc((EHMER_MAX+2)*sizeof(float));
     }
 
   /* OK, yeah, this was a silly way to do it */
-  memcpy(p->tonecurves[0][4],tone_125_40dB_SL,sizeof(float)*EHMER_MAX);
-  memcpy(p->tonecurves[0][6],tone_125_60dB_SL,sizeof(float)*EHMER_MAX);
-  memcpy(p->tonecurves[0][8],tone_125_80dB_SL,sizeof(float)*EHMER_MAX);
-  memcpy(p->tonecurves[0][10],tone_125_100dB_SL,sizeof(float)*EHMER_MAX);
-
-  memcpy(p->tonecurves[2][4],tone_125_40dB_SL,sizeof(float)*EHMER_MAX);
-  memcpy(p->tonecurves[2][6],tone_125_60dB_SL,sizeof(float)*EHMER_MAX);
-  memcpy(p->tonecurves[2][8],tone_125_80dB_SL,sizeof(float)*EHMER_MAX);
-  memcpy(p->tonecurves[2][10],tone_125_100dB_SL,sizeof(float)*EHMER_MAX);
-
-  memcpy(p->tonecurves[4][4],tone_250_40dB_SL,sizeof(float)*EHMER_MAX);
-  memcpy(p->tonecurves[4][6],tone_250_60dB_SL,sizeof(float)*EHMER_MAX);
-  memcpy(p->tonecurves[4][8],tone_250_80dB_SL,sizeof(float)*EHMER_MAX);
-  memcpy(p->tonecurves[4][10],tone_250_100dB_SL,sizeof(float)*EHMER_MAX);
-
-  memcpy(p->tonecurves[6][4],tone_500_40dB_SL,sizeof(float)*EHMER_MAX);
-  memcpy(p->tonecurves[6][6],tone_500_60dB_SL,sizeof(float)*EHMER_MAX);
-  memcpy(p->tonecurves[6][8],tone_500_80dB_SL,sizeof(float)*EHMER_MAX);
-  memcpy(p->tonecurves[6][10],tone_500_100dB_SL,sizeof(float)*EHMER_MAX);
-
-  memcpy(p->tonecurves[8][4],tone_1000_40dB_SL,sizeof(float)*EHMER_MAX);
-  memcpy(p->tonecurves[8][6],tone_1000_60dB_SL,sizeof(float)*EHMER_MAX);
-  memcpy(p->tonecurves[8][8],tone_1000_80dB_SL,sizeof(float)*EHMER_MAX);
-  memcpy(p->tonecurves[8][10],tone_1000_100dB_SL,sizeof(float)*EHMER_MAX);
-
-  memcpy(p->tonecurves[10][4],tone_2000_40dB_SL,sizeof(float)*EHMER_MAX);
-  memcpy(p->tonecurves[10][6],tone_2000_60dB_SL,sizeof(float)*EHMER_MAX);
-  memcpy(p->tonecurves[10][8],tone_2000_80dB_SL,sizeof(float)*EHMER_MAX);
-  memcpy(p->tonecurves[10][10],tone_2000_100dB_SL,sizeof(float)*EHMER_MAX);
-
-  memcpy(p->tonecurves[12][4],tone_4000_40dB_SL,sizeof(float)*EHMER_MAX);
-  memcpy(p->tonecurves[12][6],tone_4000_60dB_SL,sizeof(float)*EHMER_MAX);
-  memcpy(p->tonecurves[12][8],tone_4000_80dB_SL,sizeof(float)*EHMER_MAX);
-  memcpy(p->tonecurves[12][10],tone_4000_100dB_SL,sizeof(float)*EHMER_MAX);
-
-  memcpy(p->tonecurves[14][4],tone_8000_40dB_SL,sizeof(float)*EHMER_MAX);
-  memcpy(p->tonecurves[14][6],tone_8000_60dB_SL,sizeof(float)*EHMER_MAX);
-  memcpy(p->tonecurves[14][8],tone_8000_80dB_SL,sizeof(float)*EHMER_MAX);
-  memcpy(p->tonecurves[14][10],tone_8000_100dB_SL,sizeof(float)*EHMER_MAX);
-
-  memcpy(p->tonecurves[16][4],tone_8000_40dB_SL,sizeof(float)*EHMER_MAX);
-  memcpy(p->tonecurves[16][6],tone_8000_60dB_SL,sizeof(float)*EHMER_MAX);
-  memcpy(p->tonecurves[16][8],tone_8000_80dB_SL,sizeof(float)*EHMER_MAX);
-  memcpy(p->tonecurves[16][10],tone_8000_100dB_SL,sizeof(float)*EHMER_MAX);
+  memcpy(p->tonecurves[0][4]+2,tone_125_40dB_SL,sizeof(float)*EHMER_MAX);
+  memcpy(p->tonecurves[0][6]+2,tone_125_60dB_SL,sizeof(float)*EHMER_MAX);
+  memcpy(p->tonecurves[0][8]+2,tone_125_80dB_SL,sizeof(float)*EHMER_MAX);
+  memcpy(p->tonecurves[0][10]+2,tone_125_100dB_SL,sizeof(float)*EHMER_MAX);
+
+  memcpy(p->tonecurves[2][4]+2,tone_125_40dB_SL,sizeof(float)*EHMER_MAX);
+  memcpy(p->tonecurves[2][6]+2,tone_125_60dB_SL,sizeof(float)*EHMER_MAX);
+  memcpy(p->tonecurves[2][8]+2,tone_125_80dB_SL,sizeof(float)*EHMER_MAX);
+  memcpy(p->tonecurves[2][10]+2,tone_125_100dB_SL,sizeof(float)*EHMER_MAX);
+
+  memcpy(p->tonecurves[4][4]+2,tone_250_40dB_SL,sizeof(float)*EHMER_MAX);
+  memcpy(p->tonecurves[4][6]+2,tone_250_60dB_SL,sizeof(float)*EHMER_MAX);
+  memcpy(p->tonecurves[4][8]+2,tone_250_80dB_SL,sizeof(float)*EHMER_MAX);
+  memcpy(p->tonecurves[4][10]+2,tone_250_100dB_SL,sizeof(float)*EHMER_MAX);
+
+  memcpy(p->tonecurves[6][4]+2,tone_500_40dB_SL,sizeof(float)*EHMER_MAX);
+  memcpy(p->tonecurves[6][6]+2,tone_500_60dB_SL,sizeof(float)*EHMER_MAX);
+  memcpy(p->tonecurves[6][8]+2,tone_500_80dB_SL,sizeof(float)*EHMER_MAX);
+  memcpy(p->tonecurves[6][10]+2,tone_500_100dB_SL,sizeof(float)*EHMER_MAX);
+
+  memcpy(p->tonecurves[8][4]+2,tone_1000_40dB_SL,sizeof(float)*EHMER_MAX);
+  memcpy(p->tonecurves[8][6]+2,tone_1000_60dB_SL,sizeof(float)*EHMER_MAX);
+  memcpy(p->tonecurves[8][8]+2,tone_1000_80dB_SL,sizeof(float)*EHMER_MAX);
+  memcpy(p->tonecurves[8][10]+2,tone_1000_100dB_SL,sizeof(float)*EHMER_MAX);
+
+  memcpy(p->tonecurves[10][4]+2,tone_2000_40dB_SL,sizeof(float)*EHMER_MAX);
+  memcpy(p->tonecurves[10][6]+2,tone_2000_60dB_SL,sizeof(float)*EHMER_MAX);
+  memcpy(p->tonecurves[10][8]+2,tone_2000_80dB_SL,sizeof(float)*EHMER_MAX);
+  memcpy(p->tonecurves[10][10]+2,tone_2000_100dB_SL,sizeof(float)*EHMER_MAX);
+
+  memcpy(p->tonecurves[12][4]+2,tone_4000_40dB_SL,sizeof(float)*EHMER_MAX);
+  memcpy(p->tonecurves[12][6]+2,tone_4000_60dB_SL,sizeof(float)*EHMER_MAX);
+  memcpy(p->tonecurves[12][8]+2,tone_4000_80dB_SL,sizeof(float)*EHMER_MAX);
+  memcpy(p->tonecurves[12][10]+2,tone_4000_100dB_SL,sizeof(float)*EHMER_MAX);
+
+  memcpy(p->tonecurves[14][4]+2,tone_8000_40dB_SL,sizeof(float)*EHMER_MAX);
+  memcpy(p->tonecurves[14][6]+2,tone_8000_60dB_SL,sizeof(float)*EHMER_MAX);
+  memcpy(p->tonecurves[14][8]+2,tone_8000_80dB_SL,sizeof(float)*EHMER_MAX);
+  memcpy(p->tonecurves[14][10]+2,tone_8000_100dB_SL,sizeof(float)*EHMER_MAX);
+
+  memcpy(p->tonecurves[16][4]+2,tone_8000_40dB_SL,sizeof(float)*EHMER_MAX);
+  memcpy(p->tonecurves[16][6]+2,tone_8000_60dB_SL,sizeof(float)*EHMER_MAX);
+  memcpy(p->tonecurves[16][8]+2,tone_8000_80dB_SL,sizeof(float)*EHMER_MAX);
+  memcpy(p->tonecurves[16][10]+2,tone_8000_100dB_SL,sizeof(float)*EHMER_MAX);
 
   /* interpolate curves between */
   for(i=1;i<P_BANDS;i+=2)
     for(j=4;j<P_LEVELS;j+=2){
-      memcpy(p->tonecurves[i][j],p->tonecurves[i-1][j],EHMER_MAX*sizeof(float));
+      memcpy(p->tonecurves[i][j]+2,p->tonecurves[i-1][j]+2,EHMER_MAX*sizeof(float));
       /*interp_curve(p->tonecurves[i][j],
                    p->tonecurves[i-1][j],
                    p->tonecurves[i+1][j],.5);*/
-      min_curve(p->tonecurves[i][j],p->tonecurves[i+1][j]);
-      /*min_curve(p->tonecurves[i][j],p->tonecurves[i-1][j]);*/
+      min_curve(p->tonecurves[i][j]+2,p->tonecurves[i+1][j]+2);
     }
 
-  /*for(i=0;i<P_BANDS-1;i++)
-    for(j=4;j<P_LEVELS;j+=2)
-    min_curve(p->tonecurves[i][j],p->tonecurves[i+1][j]);*/
-
   /* set up the final curves */
   for(i=0;i<P_BANDS;i++)
     setup_curve(p->tonecurves[i],i,vi->toneatt[i]);
@@ -281,10 +283,28 @@
   /* set up attenuation levels */
   for(i=0;i<P_BANDS;i++)
     for(j=0;j<P_LEVELS;j++){
-      p->peakatt[i][j]=fromdB(p->vi->peakatt[i][j]);
-      p->noiseatt[i][j]=fromdB(p->vi->noiseatt[i][j]);
+      p->peakatt[i][j]=p->vi->peakatt[i][j];
     }
 
+  /* set up rolling noise median */
+  for(i=0;i<n;i++){
+    float halfoc=toOC((i+.5)*rate/(2.*n))*2.+2.;
+    int inthalfoc;
+    float del;
+    
+    if(halfoc<0)halfoc=0;
+    if(halfoc>=P_BANDS-1)halfoc=P_BANDS-1;
+    inthalfoc=(int)halfoc;
+    del=halfoc-inthalfoc;
+
+    p->noisemedian[i]=
+      p->vi->noisemedian[inthalfoc*2]*(1.-del) + 
+      p->vi->noisemedian[inthalfoc*2+2]*del;
+    p->noiseoffset[i]=
+      p->vi->noisemedian[inthalfoc*2+1]*(1.-del) + 
+      p->vi->noisemedian[inthalfoc*2+3]*del;
+  }
+  /*_analysis_output("mediancurve",0,p->noisemedian,n,0,0);*/
 }
 
 void _vp_psy_clear(vorbis_look_psy *p){
@@ -298,167 +318,129 @@
         for(j=0;j<P_LEVELS;j++){
           _ogg_free(p->tonecurves[i][j]);
         }
-	_ogg_free(p->noiseatt[i]);
         _ogg_free(p->tonecurves[i]);
         _ogg_free(p->peakatt[i]);
       }
       _ogg_free(p->tonecurves);
-      _ogg_free(p->noiseatt);
+      _ogg_free(p->noisemedian);
       _ogg_free(p->peakatt);
     }
     memset(p,0,sizeof(vorbis_look_psy));
   }
 }
 
-static void compute_decay_fixed(vorbis_look_psy *p,float *f, float *decay, int n){
-  /* handle decay */
+/* octave/(8*eighth_octave_lines) x scale and dB y scale */
+static void seed_curve(float *seed,
+		      float **curves,
+		      float amp,
+		      int oc,int n,int linesper,float dBoffset){
   int i;
-  float decscale=fromdB(p->vi->decay_coeff*n); 
-  float attscale=1.f/fromdB(p->vi->attack_coeff); 
+  long seedptr;
+  float *posts,*curve;
 
-  for(i=10;i<n;i++){
-    float pre=decay[i];
-    if(decay[i]){
-      float val=decay[i]*decscale;
-      float att=fabs(f[i]/val);
+  int choice=(int)((amp+dBoffset)*.1f);
+  choice=max(choice,0);
+  choice=min(choice,P_LEVELS-1);
+  posts=curves[choice];
+  curve=posts+2;
+  seedptr=oc+(posts[0]-16)*linesper-(linesper>>1);
 
-      if(att>attscale)
-	decay[i]=fabs(f[i]/attscale);
-      else
-	decay[i]=val;
-    }else{
-      decay[i]=fabs(f[i]/attscale);
+  for(i=posts[0];i<posts[1];i++){
+    if(seedptr>0){
+      float lin=amp+curve[i];
+      if(seed[seedptr]<lin)seed[seedptr]=lin;
     }
-    if(pre>f[i])f[i]=pre;
+    seedptr+=linesper;
+    if(seedptr>=n)break;
   }
 }
-
-static long _eights[EHMER_MAX+1]={
-  981,1069,1166,1272,
-  1387,1512,1649,1798,
-  1961,2139,2332,2543,
-  2774,3025,3298,3597,
-  3922,4277,4664,5087,
-  5547,6049,6597,7194,
-  7845,8555,9329,10173,
-  11094,12098,13193,14387,
-  15689,17109,18658,20347,
-  22188,24196,26386,28774,
-  31379,34219,37316,40693,
-  44376,48393,52772,57549,
-  62757,68437,74631,81386,
-  88752,96785,105545,115097,
-  125515};
 
-static int seed_curve(float *flr,
-		      float **curves,
-		       float amp,float specmax,
-		       int x,int n,float specatt,
-		       int maxEH){
-  int i;
-  float *curve;
+static void seed_peak(float *seed,
+		      float *att,
+		      float amp,
+		      int oc,
+		      int linesper,
+		      float dBoffset){
+  long seedptr;
 
-  /* make this attenuation adjustable */
-  int choice=(int)((todB(amp)-specmax+specatt)/10.f+.5f);
+  int choice=(int)((amp+dBoffset)*.1f);
   choice=max(choice,0);
   choice=min(choice,P_LEVELS-1);
+  seedptr=oc-(linesper>>1);
 
-  for(i=maxEH;i>=0;i--)
-    if(((x*_eights[i])>>12)<n)break;
-  maxEH=i;
-  curve=curves[choice];
+  amp+=att[choice];
+  if(seed[seedptr]<amp)seed[seedptr]=amp;
 
-  for(;i>=0;i--)
-    if(curve[i]>0.f)break;
-  
-  for(;i>=0;i--){
-    float lin=curve[i];
-    if(lin>0.){
-      float *fp=flr+((x*_eights[i])>>12);
-      lin*=amp;	
-      if(*fp<lin)*fp=lin;
-    }else break;
-  }    
-  return(maxEH);
 }
 
-static void seed_peak(float *flr,
-		      float *att,
-		      float amp,float specmax,
-		      int x,int n,float specatt){
-  int prevx=(x*_eights[16])>>12;
-
-  /* make this attenuation adjustable */
-  int choice=rint((todB(amp)-specmax+specatt)/10.f+.5f);
-  if(choice<0)choice=0;
-  if(choice>=P_LEVELS)choice=P_LEVELS-1;
-
-  if(prevx<n){
-    float lin=att[choice];
-    if(lin){
-      lin*=amp;	
-      if(flr[prevx]<lin)flr[prevx]=lin;
-    }
-  }
-}
-
-static void seed_generic(vorbis_look_psy *p,
-			 float ***curves,
-			 float *f, 
-			 float *flr,
-			 float *seeds,
-			 float specmax){
+static void seed_loop(vorbis_look_psy *p,
+		      float ***curves,
+		      float **att,
+		      float *f, 
+		      float *flr,
+		      float *minseed,
+		      float *maxseed,
+		      float specmax){
   vorbis_info_psy *vi=p->vi;
   long n=p->n,i;
-  int maxEH=EHMER_MAX-1;
+  float dBoffset=vi->max_curve_dB-specmax;
 
   /* prime the working vector with peak values */
-  /* Use the 125 Hz curve up to 125 Hz and 8kHz curve after 8kHz. */
-  for(i=0;i<n;i++)
-    if(f[i]>flr[i])
-      maxEH=seed_curve(seeds,curves[p->octave[i]],
-		       f[i],specmax,i,n,vi->max_curve_dB,maxEH);
-}
 
-static void seed_att(vorbis_look_psy *p,
-		     float **att,
-		     float *f, 
-		     float *flr,
-		     float specmax){
-  vorbis_info_psy *vi=p->vi;
-  long n=p->n,i;
-  
-  for(i=0;i<n;i++)
-    if(f[i]>flr[i])
-      seed_peak(flr,att[p->octave[i]],f[i],
-		specmax,i,n,vi->max_curve_dB);
+  for(i=0;i<n;i++){
+      float max=f[i];
+      long oc=p->octave[i];
+      while(i+1<n && p->octave[i+1]==oc){
+	i++;
+	if(f[i]>max)max=f[i];
+      }
+
+      if(max>flr[i]){
+	oc=oc>>p->shiftoc;
+	if(oc>=P_BANDS)oc=P_BANDS-1;
+	if(oc<0)oc=0;
+	if(vi->tonemaskp)
+	  seed_curve(minseed,
+		     curves[oc],
+		     max,
+		     p->octave[i]-p->firstoc,
+		     p->total_octave_lines,
+		     p->eighth_octave_lines,
+		     dBoffset);
+	if(vi->peakattp)
+	  seed_peak(maxseed,
+		    att[oc],
+		    max,
+		    p->octave[i]-p->firstoc,
+		    p->eighth_octave_lines,
+		    dBoffset);
+      }
+  }
 }
 
-static void seed_point(vorbis_look_psy *p,
-		     float **att,
-		     float *f, 
-		     float *flr,
-		     float specmax){
-  vorbis_info_psy *vi=p->vi;
+static void bound_loop(vorbis_look_psy *p,
+		       float *f, 
+		       float *seeds,
+		       float *flr,
+		       float att){
   long n=p->n,i;
-  
+
+  long off=(p->eighth_octave_lines>>1)+p->firstoc;
+  long *ocp=p->octave;
+
   for(i=0;i<n;i++){
-    /* make this attenuation adjustable */
-    int choice=rint((todB(f[i])-specmax+vi->max_curve_dB)/10.+.5);
-    float lin;
-    if(choice<0)choice=0;
-    if(choice>=P_LEVELS)choice=P_LEVELS-1;
-    lin=att[p->octave[i]][choice]*f[i];
-    if(flr[i]<lin)flr[i]=lin;
+    long oc=ocp[i]-off;
+    float v=f[i]+att;
+    if(seeds[oc]<v)seeds[oc]=v;
   }
 }
 
-/* bleaugh, this is more complicated than it needs to be */
-static void max_seeds(vorbis_look_psy *p,float *seeds,float *flr){
-  long n=p->n,i,j;
-  long *posstack=alloca(n*sizeof(long));
+static void seed_chase(float *seeds, int linesper, long n){
+  long  *posstack=alloca(n*sizeof(long));
   float *ampstack=alloca(n*sizeof(float));
-  long stack=0;
+  long   stack=0;
+  long   pos=0;
+  long   i;
 
   for(i=0;i<n;i++){
     if(stack<2){
@@ -471,9 +453,9 @@
           ampstack[stack++]=seeds[i];
           break;
         }else{
-	  if(i<posstack[stack-1]*1.0905077080f){
-	    if(stack>1 && ampstack[stack-1]<ampstack[stack-2] &&
-	       i<posstack[stack-2]*1.0905077080f){
+	  if(i<posstack[stack-1]+linesper){
+	    if(stack>1 && ampstack[stack-1]<=ampstack[stack-2] &&
+	       i<posstack[stack-2]+linesper){
               /* we completely overlap, making stack-1 irrelevant.  pop it */
               stack--;
               continue;
@@ -490,211 +472,203 @@
 
   /* the stack now contains only the positions that are relevant. Scan
      'em straight through */
-  {
-    long pos=0;
-    for(i=0;i<stack;i++){
-      long endpos;
-      if(i<stack-1 && ampstack[i+1]>ampstack[i]){
-	endpos=posstack[i+1];
-      }else{
-	endpos=posstack[i]*1.0905077080f+1.f; /* +1 is important, else bin 0 is
-                                       discarded in short frames */
-      }
-      if(endpos>n)endpos=n;
-      for(j=pos;j<endpos;j++)
-	if(flr[j]<ampstack[i])
-	  flr[j]=ampstack[i];
-      pos=endpos;
-    }
-  }   
 
+  for(i=0;i<stack;i++){
+    long endpos;
+    if(i<stack-1 && ampstack[i+1]>ampstack[i]){
+      endpos=posstack[i+1];
+    }else{
+      endpos=posstack[i]+linesper+1; /* +1 is important, else bin 0 is
+					discarded in short frames */
+    }
+    if(endpos>n)endpos=n;
+    for(;pos<endpos;pos++)
+      seeds[pos]=ampstack[i];
+  }
+  
   /* there.  Linear time.  I now remember this was on a problem set I
      had in Grad Skool... I didn't solve it at the time ;-) */
+
 }
 
-static void bark_noise(long n,float *b,float *f,float *noise){
-  long i=1,lo=0,hi=2;
-  float acc=0.f,val,del=0.f;
-
-  float *norm=alloca(n*sizeof(float));
-
-  memset(noise,0,n*sizeof(float));
-  memset(norm,0,n*sizeof(float));
-
-  while(hi<n){
-    val=todB_nn(f[i]*f[i])+400.f;
-    del=1.f/(i-lo);
-    noise[lo]+=val*del;
-    noise[i]-=val*del;
-    norm[lo]+=del;
-    norm[i]-=del;
+/* bleaugh, this is more complicated than it needs to be */
+static void max_seeds(vorbis_look_psy *p,float *minseed,float *maxseed,
+		      float *flr){
+  long   n=p->total_octave_lines;
+  int    linesper=p->eighth_octave_lines;
+  long   linpos=0;
+  long   pos;
+
+  seed_chase(minseed,linesper,n); /* for masking */
+  seed_chase(maxseed,linesper,n); /* for peak att */
  
-    del=1.f/(hi-i);
-    noise[i]-=val*del;
-    noise[hi]+=val*del;
-    norm[hi]+=del;
-    norm[i]-=del;
+  pos=p->octave[0]-p->firstoc-(linesper>>1);
+  while(linpos+1<p->n){
+    float min=minseed[pos];
+    float max=maxseed[pos];
+    long end=((p->octave[linpos]+p->octave[linpos+1])>>1)-p->firstoc;
+    while(pos+1<=end){
+      pos++;
+      if((minseed[pos]>NEGINF && minseed[pos]<min) || min==NEGINF)
+	min=minseed[pos];
+      if(maxseed[pos]>max)max=maxseed[pos];
+    }
+    if(max<min)max=min;
     
-
-    i++;
-    for(;hi<n && b[hi]-.3<b[i];hi++);
-    for(;lo<i-1 && b[lo]+.3<b[i];lo++);
-    if(i==hi)hi++;
+    /* seed scale is log.  Floor is linear.  Map back to it */
+    end=pos+p->firstoc;
+    for(;linpos<p->n && p->octave[linpos]<=end;linpos++)
+      if(flr[linpos]<max)flr[linpos]=max;
   }
-
+  
   {
-    long ilo=i-lo;
-    long hii=hi-i;
-
-    for(;i<n;i++){
-      val=todB_nn(f[i]*f[i])+400.f;
-      del=1.f/(hii);
-      noise[i]-=val*del;
-      norm[i]-=del;
-     
-      del=1.f/(ilo);
-      noise[i-ilo]+=val*del;
-      noise[i]-=val*del;      
-      norm[i-ilo]+=del;
-      norm[i]-=del;      
-    }
-    for(i=1,lo=n-ilo;lo<n;lo++,i++){
-      val=todB_nn(f[n-i]*f[n-i])+400.f;
-      del=1.f/ilo;
-      noise[lo]+=val*del;
-      norm[lo]+=del;
-    }
+    float min=minseed[p->total_octave_lines-1];
+    float max=maxseed[p->total_octave_lines-1];
+    if(max<min)max=min;
+    for(;linpos<p->n;linpos++)
+      if(flr[linpos]<max)flr[linpos]=max;
   }
+  
+}
 
+#define BIN(x) ((int)((x)*-4.))
+#define BINdB(x) ((x)*-.25)
+static void bark_noise_median(long n,float *b,float *f,float *noise,
+			      float lowidth,float hiwidth,
+			      int lomin,int himin,
+			      float *thresh,float *off){
+  long i=0,lo=0,hi=0;
+  long *radix=alloca(200*4*sizeof(long)); /* quarter-dB bins */
+
+  long countabove=0;
+  long median=200*4-1;
+  long countbelow=0;
 
-  acc=0;
-  val=0;
+  memset(radix,0,200*4*sizeof(long));
 
   for(i=0;i<n;i++){
-    val+=norm[i];
-    norm[i]=val;
-    acc+=noise[i];
-    noise[i]=acc;
-  }
+    /* find new lo/hi */
+    for(;hi<n && (b[hi]<=b[i]+hiwidth || hi<i+himin);hi++){
+      int bin=BIN(f[hi]);
+      if(bin>=200*4)bin=200*4-1;
+      radix[bin]++;
+      if(bin<median)
+	countabove++;
+      else
+	countbelow++;
+    }
+    for(;lo<i && b[lo]+lowidth<=b[i] && lo+lomin<i;lo++){
+      int bin=BIN(f[lo]);
+      if(bin>=200*4)bin=200*4-1;
+      radix[bin]--;
+      if(bin<median)
+	countabove--;
+      else
+	countbelow--;
+    }
 
-  val=0;
-  acc=0;
-  for(i=0;i<n;i++){
-    val+=norm[i];
-    acc+=noise[i];
-    if(val==0){
-      noise[i]=0.f;
-      norm[i]=0;
-    }else{
-      float v=acc/val-400;
-      noise[i]=sqrt(fromdB(v));
+    /* move the median if needed */
+    if(countabove+countbelow){
+
+      while(thresh[i]>countbelow/(float)(countabove+countbelow) && median>0){
+	median--;
+	countabove-=radix[median];
+	countbelow+=radix[median];
+      }
+
+      while(thresh[i]<(countbelow-radix[median])/
+	    (float)(countabove+countbelow) && median+1<200*4){
+	countabove+=radix[median];
+	countbelow-=radix[median];
+	median++;
+      }
     }
+    noise[i]=BINdB(median)+off[i];
   }
+
 }
 
-void _vp_compute_mask(vorbis_look_psy *p,float *f, 
+float _vp_compute_mask(vorbis_look_psy *p,
+		      float *fft, 
+		      float *mdct, 
                       float *flr, 
-		      float *decay){
-  float *smooth=alloca(sizeof(float)*p->n);
+		      float *decay,
+		      float prev_maxamp){
   int i,n=p->n;
-  float specmax=0.f;
+  float specmax=NEGINF;
   static int seq=0;
-
-  float *seed=alloca(sizeof(float)*p->n);
-  float *seed2=alloca(sizeof(float)*p->n);
 
-  _analysis_output("mdct",seq,f,n,1,1);
-  memset(flr,0,n*sizeof(float));
-
-  /* noise masking */
-  if(p->vi->noisemaskp){
-    memset(seed,0,n*sizeof(float));
-    bark_noise(n,p->bark,f,seed);
-    seed_point(p,p->noiseatt,seed,flr,specmax);
+  float *minseed=alloca(sizeof(float)*p->total_octave_lines);
+  float *maxseed=alloca(sizeof(float)*p->total_octave_lines);
+  for(i=0;i<p->total_octave_lines;i++)minseed[i]=maxseed[i]=NEGINF;
 
+  /* go to dB scale. Also find the highest peak so we know the limits */
+  for(i=0;i<n;i++){
+    fft[i]=todB(fft[i]);
+    if(fft[i]>specmax)specmax=fft[i];
   }
+  if(specmax<prev_maxamp)specmax=prev_maxamp;
 
-  /* smooth the data is that's called for ********************************/
-  for(i=0;i<n;i++)smooth[i]=fabs(f[i]);
-  if(p->vi->smoothp){
-    /* compute power^.5 of three neighboring bins to smooth for peaks
-       that get split twixt bins/peaks that nail the bin.  This evens
-       out treatment as we're not doing additive masking any longer. */
-    float acc=smooth[0]*smooth[0]+smooth[1]*smooth[1];
-    float prev=smooth[0];
 
-    smooth[0]=sqrt(acc);
-    for(i=1;i<n-1;i++){
-      float this=smooth[i];
-      acc+=smooth[i+1]*smooth[i+1];
-      if(acc<0)acc=0; /* it can happen due to finite precision */
-      smooth[i]=sqrt(acc);
-      acc-=prev*prev;
-      prev=this;
-    }
-    if(acc<0)acc=0; /* in case it happens on the final iteration */
-    smooth[n-1]=sqrt(acc);
+  for(i=0;i<n;i++){
+    mdct[i]=todB(mdct[i]);
   }
 
-  _analysis_output("smooth",seq,smooth,n,1,1);
+  _analysis_output("mdct",seq,mdct,n,0,0);
+  _analysis_output("fft",seq,fft,n,0,0);
 
-  /* find the highest peak so we know the limits *************************/
-  for(i=0;i<n;i++){
-    if(smooth[i]>specmax)specmax=smooth[i];
+  /* noise masking */
+  if(p->vi->noisemaskp){
+    bark_noise_median(n,p->bark,mdct,flr,
+		      p->vi->noisewindowlo,
+		      p->vi->noisewindowhi,
+		      p->vi->noisewindowlomin,
+		      p->vi->noisewindowhimin,
+		      p->noisemedian,
+		      p->noiseoffset);
+    /* suppress any noise curve > specmax+p->vi->noisemaxsupp */
+    for(i=0;i<n;i++)
+      if(flr[i]>specmax+p->vi->noisemaxsupp)
+	flr[i]=specmax+p->vi->noisemaxsupp;
+    _analysis_output("noise",seq,flr,n,0,0);
+  }else{
+    for(i=0;i<n;i++)flr[i]=NEGINF;
   }
-  specmax=todB(specmax);
 
   /* set the ATH (floating below specmax by a specified att) */
   if(p->vi->athp){
     float att=specmax+p->vi->ath_adjatt;
     if(att<p->vi->ath_maxatt)att=p->vi->ath_maxatt;
-    att=fromdB(att);
 
     for(i=0;i<n;i++){
-      float av=p->ath[i]*att;
+      float av=p->ath[i]+att;
       if(av>flr[i])flr[i]=av;
     }
   }
 
-  _analysis_output("ath",seq,flr,n,1,1);
+  _analysis_output("ath",seq,flr,n,0,0);
 
-  /* peak attenuation ******/
-  if(p->vi->peakattp){
-    memset(seed,0,n*sizeof(float));
-    seed_att(p,p->peakatt,smooth,seed,specmax);
-    max_seeds(p,seed,flr);
-  }
-
-  /* tone masking */
-  if(p->vi->tonemaskp){
-    memset(seed,0,n*sizeof(float));
-    memset(seed2,0,n*sizeof(float));
+  /* tone/peak masking */
 
-    seed_generic(p,p->tonecurves,smooth,flr,seed2,specmax);
-    max_seeds(p,seed2,seed2);
+  /* XXX apply decay to the fft here */
 
-    for(i=0;i<n;i++)if(seed2[i]<flr[i])seed2[i]=flr[i];
-    for(i=0;i<n;i++)if(seed2[i]<decay[i])seed2[i]=decay[i];
-
-    seed_generic(p,p->tonecurves,smooth,seed2,seed,specmax);
-    max_seeds(p,seed,seed);
-    
-    if(p->vi->decayp)
-      compute_decay_fixed(p,seed,decay,n);
-    
-    for(i=0;i<n;i++)if(flr[i]<seed[i])flr[i]=seed[i];
-    
-  }
+  seed_loop(p,p->tonecurves,p->peakatt,fft,flr,minseed,maxseed,specmax);
+  bound_loop(p,mdct,maxseed,flr,p->vi->bound_att_dB);
+  _analysis_output("minseed",seq,minseed,p->total_octave_lines,0,0);
+  _analysis_output("maxseed",seq,maxseed,p->total_octave_lines,0,0);
+  max_seeds(p,minseed,maxseed,flr);
+  _analysis_output("final",seq,flr,n,0,0);
 
-  _analysis_output("final",seq,flr,n,1,1);
-
   /* doing this here is clean, but we need to find a faster way to do
      it than to just tack it on */
+
+  for(i=0;i<n;i++)if(mdct[i]>=flr[i])break;
+  if(i==n)for(i=0;i<n;i++)flr[i]=NEGINF;
 
-  for(i=0;i<n;i++)if(2.f*f[i]>flr[i] || -2.f*f[i]>flr[i])break;
-  if(i==n)memset(flr,0,sizeof(float)*n);
 
   seq++;
+
+  return(specmax);
 }
 
 
@@ -715,5 +689,17 @@
 
   memcpy(f,work,p->n*sizeof(float));
 }
+
+float _vp_ampmax_decay(float amp,vorbis_dsp_state *vd){
+  vorbis_info *vi=vd->vi;
+  codec_setup_info *ci=vi->codec_setup;
+  int n=ci->blocksizes[vd->W]/2;
+  float secs=(float)n/vi->rate;
+
+  amp+=secs*ci->ampmax_att_per_sec;
+  if(amp<-9999)amp=-9999;
+  return(amp);
+}
+
 
 

1.17      +25 -11    vorbis/lib/psy.h

Index: psy.h
===================================================================
RCS file: /usr/local/cvsroot/vorbis/lib/psy.h,v
retrieving revision 1.16
retrieving revision 1.17
diff -u -r1.16 -r1.17
--- psy.h	2000/11/06 00:07:02	1.16
+++ psy.h	2001/01/22 01:38:25	1.17
@@ -12,7 +12,7 @@
  ********************************************************************
 
  function: random psychoacoustics (not including preecho)
- last mod: $Id: psy.h,v 1.16 2000/11/06 00:07:02 xiphmont Exp $
+ last mod: $Id: psy.h,v 1.17 2001/01/22 01:38:25 xiphmont Exp $
 
  ********************************************************************/
 
@@ -31,13 +31,11 @@
 typedef struct vorbis_info_psy{
   int    athp;
   int    decayp;
-  int    smoothp;
 
-  int    noisecullp;
-  float noisecull_barkwidth;
+  float  ath_adjatt;
+  float  ath_maxatt;
 
-  float ath_adjatt;
-  float ath_maxatt;
+  int   eighth_octave_lines;
 
   /*     0  1  2   3   4   5   6   7   8   9  10  11  12  13  14  15   16   */
   /* x: 63 88 125 175 250 350 500 700 1k 1.4k 2k 2.8k 4k 5.6k 8k 11.5k 16k Hz */
@@ -50,9 +48,15 @@
   float peakatt[P_BANDS][P_LEVELS];
 
   int noisemaskp;
-  float noiseatt[P_BANDS][P_LEVELS];
+  float noisemaxsupp;
+  float noisewindowlo;
+  float noisewindowhi;
+  int   noisewindowlomin;
+  int   noisewindowhimin;
+  float noisemedian[P_BANDS*2];
 
   float max_curve_dB;
+  float bound_att_dB;
 
   /* decay setup */
   float attack_coeff;
@@ -65,12 +69,18 @@
 
   float ***tonecurves;
   float **peakatt;
-  float **noiseatt;
+  float *noisemedian;
+  float *noiseoffset;
 
   float *ath;
-  int    *octave;
+  long  *octave;             /* in n.ocshift format */
   float *bark;
 
+  long  firstoc;
+  long  shiftoc;
+  int   eighth_octave_lines; /* power of two, please */
+  int   total_octave_lines;  
+
 } vorbis_look_psy;
 
 extern void   _vp_psy_init(vorbis_look_psy *p,vorbis_info_psy *vi,int n,long rate);
@@ -80,10 +90,14 @@
 extern void   _vi_psy_free(vorbis_info_psy *i);
 extern vorbis_info_psy *_vi_psy_copy(vorbis_info_psy *i);
 
-extern void   _vp_compute_mask(vorbis_look_psy *p,float *f, 
+extern float  _vp_compute_mask(vorbis_look_psy *p,
+			       float *fft, 
+			       float *mdct, 
                                float *floor,
-			       float *decay);
+			       float *decay,
+			       float prev_maxamp);
 extern void _vp_apply_floor(vorbis_look_psy *p,float *f,float *flr);
+extern float _vp_ampmax_decay(float amp,vorbis_dsp_state *vd);
 
 #endif
 

1.12      +141 -96   vorbis/lib/psytune.c

Index: psytune.c
===================================================================
RCS file: /usr/local/cvsroot/vorbis/lib/psytune.c,v
retrieving revision 1.11
retrieving revision 1.12
diff -u -r1.11 -r1.12
--- psytune.c	2000/12/21 21:04:40	1.11
+++ psytune.c	2001/01/22 01:38:25	1.12
@@ -13,7 +13,7 @@
 
  function: simple utility that runs audio through the psychoacoustics
            without encoding
- last mod: $Id: psytune.c,v 1.11 2000/12/21 21:04:40 xiphmont Exp $
+ last mod: $Id: psytune.c,v 1.12 2001/01/22 01:38:25 xiphmont Exp $
 
  ********************************************************************/
 
@@ -26,6 +26,7 @@
 #include "os.h"
 #include "psy.h"
 #include "mdct.h"
+#include "smallft.h"
 #include "window.h"
 #include "scales.h"
 #include "lpc.h"
@@ -34,83 +35,99 @@
 static vorbis_info_psy _psy_set0={
   1,/*athp*/
   0,/*decayp*/
-  1,/*smoothp*/
-  0,.2,
 
-  -100.,
-  -140.,
+  -100.f,
+  -140.f,
 
+  8,
+
   /*     0  1  2   3   4   5   6   7   8   9  10  11  12  13  14  15   16   */
   /* x: 63 88 125 175 250 350 500 700 1k 1.4k 2k 2.8k 4k 5.6k 8k 11.5k 16k Hz */
   /* y: 0 10 20 30 40 50 60 70 80 90 100 dB */
 
-   0,/* tonemaskp */
+   1,/* tonemaskp */
   /*  0   10   20   30   40   50   60   70   80   90   100 */
-  {{-30.,-35.,-35.,-40.,-40.,-50.,-60.,-70.,-80.,-90.,-100.}, /*63*/
-   {-30.,-35.,-35.,-40.,-40.,-50.,-60.,-70.,-80.,-90.,-100.}, /*88*/
-   {-30.,-35.,-35.,-40.,-40.,-50.,-60.,-70.,-80.,-90.,-100.}, /*125*/
-   {-30.,-35.,-35.,-40.,-40.,-50.,-60.,-70.,-80.,-90.,-100.}, /*175*/
-   {-30.,-35.,-35.,-40.,-40.,-50.,-60.,-70.,-80.,-90.,-100.}, /*250*/
-   {-30.,-35.,-35.,-40.,-40.,-50.,-60.,-70.,-80.,-90.,-100.}, /*350*/
-   {-30.,-35.,-35.,-40.,-40.,-50.,-60.,-70.,-80.,-90.,-100.}, /*500*/
-   {-30.,-35.,-35.,-40.,-40.,-50.,-60.,-70.,-80.,-90.,-100.}, /*700*/
-   {-30.,-35.,-35.,-40.,-40.,-50.,-60.,-70.,-80.,-90.,-100.}, /*1000*/
-   {-30.,-35.,-35.,-40.,-40.,-50.,-60.,-70.,-80.,-90.,-100.}, /*1400*/
-   {-40.,-40.,-40.,-40.,-40.,-50.,-60.,-70.,-80.,-90.,-100.}, /*2000*/
-   {-40.,-40.,-40.,-40.,-40.,-50.,-60.,-70.,-80.,-90.,-100.}, /*2800*/
-   {-30.,-35.,-35.,-40.,-40.,-50.,-60.,-70.,-80.,-90.,-100.}, /*4000*/
-   {-30.,-35.,-35.,-40.,-40.,-50.,-60.,-70.,-80.,-90.,-100.}, /*5600*/
-   {-30.,-35.,-35.,-40.,-40.,-50.,-60.,-70.,-80.,-90.,-100.}, /*8000*/
-   {-30.,-35.,-35.,-40.,-40.,-50.,-60.,-70.,-80.,-90.,-100.}, /*11500*/
-   {-30.,-35.,-35.,-40.,-40.,-50.,-60.,-70.,-80.,-90.,-100.}, /*16000*/
+  {
+   {-999.f,-999.f,-999.f,-999.f,-999.f,-999.f,-999.f,-999.f,-999.f,-999.f,-999.f}, /*63*/
+   {-999.f,-999.f,-999.f,-999.f,-999.f,-999.f,-999.f,-999.f,-999.f,-999.f,-999.f}, /*88*/
+   {-999.f,-999.f,-999.f,-999.f,-999.f,-999.f,-999.f,-999.f,-999.f,-999.f,-999.f}, /*125*/
+   //   {-99.,-99.,-99.,-99.,-99.,-99.,-99.,-99.,-99.,-99.,-100.}, /*175*/
+   //   {-99.,-99.,-99.,-99.,-99.,-99.,-99.,-99.,-99.,-99.,-100.}, /*250*/
+   //   {-99.,-99.,-99.,-99.,-99.,-99.,-99.,-99.,-99.,-99.,-100.}, /*350*/
+   //   {-99.,-99.,-99.,-99.,-99.,-99.,-99.,-99.,-99.,-99.,-100.}, /*500*/
+   //   {-99.,-99.,-99.,-99.,-99.,-99.,-99.,-99.,-99.,-99.,-100.}, /*700*/
+
+   //   {-30.,-35.,-35.,-40.,-40.,-50.,-60.,-70.,-80.,-90.,-100.}, /*63*/
+   //   {-30.,-35.,-35.,-40.,-40.,-50.,-60.,-70.,-80.,-90.,-100.}, /*88*/
+   //   {-30.,-35.,-35.,-40.,-40.,-50.,-60.,-70.,-80.,-90.,-100.}, /*125*/
+   {-30.f,-35.f,-35.f,-40.f,-40.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f}, /*175*/
+   {-30.f,-35.f,-35.f,-40.f,-40.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f}, /*250*/
+   {-30.f,-35.f,-35.f,-40.f,-40.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f}, /*350*/
+   {-30.f,-35.f,-35.f,-40.f,-40.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f}, /*500*/
+   {-30.f,-35.f,-35.f,-40.f,-40.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f}, /*700*/
+
+   {-30.f,-35.f,-35.f,-40.f,-40.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f}, /*1000*/
+   {-30.f,-35.f,-35.f,-40.f,-40.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f}, /*1400*/
+   {-40.f,-40.f,-40.f,-40.f,-40.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f}, /*2000*/
+   {-40.f,-40.f,-40.f,-40.f,-40.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f}, /*2800*/
+   {-30.f,-35.f,-35.f,-40.f,-40.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f}, /*4000*/
+   {-30.f,-35.f,-35.f,-40.f,-40.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f}, /*5600*/
+
+   {-30.f,-30.f,-35.f,-40.f,-40.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f}, /*8000*/
+   {-30.f,-30.f,-30.f,-40.f,-40.f,-45.f,-60.f,-70.f,-80.f,-90.f,-100.f}, /*11500*/
+   {-30.f,-30.f,-30.f,-35.f,-35.f,-45.f,-50.f,-60.f,-70.f,-80.f,-90.f}, /*16000*/
   },
 
   1,/* peakattp */
-  {{-14.,-16.,-18.,-19.,-20.,-21.,-22.,-22.,-22.,-22.,-22.}, /*63*/
-   {-14.,-16.,-18.,-19.,-20.,-21.,-22.,-22.,-22.,-22.,-22.}, /*88*/
-   {-14.,-16.,-18.,-19.,-20.,-21.,-22.,-22.,-22.,-22.,-22.}, /*125*/
-   { -7., -8., -9.,-10.,-10.,-11.,-12.,-13.,-15.,-18.,-20.}, /*8000*/
-   { -7., -8., -9.,-10.,-10.,-11.,-12.,-13.,-15.,-18.,-20.}, /*8000*/
-   { -7., -8., -9.,-10.,-10.,-11.,-12.,-13.,-15.,-18.,-20.}, /*8000*/
-   { -7., -8., -9.,-10.,-10.,-11.,-12.,-13.,-15.,-18.,-20.}, /*8000*/
-   { -7., -8., -9.,-10.,-10.,-11.,-12.,-13.,-15.,-18.,-20.}, /*8000*/
-   { -7., -8., -9.,-10.,-10.,-11.,-12.,-13.,-15.,-18.,-20.}, /*8000*/
-   { -7., -8., -9.,-10.,-10.,-11.,-12.,-13.,-15.,-18.,-20.}, /*8000*/
-   { -7., -8., -9.,-10.,-10.,-11.,-12.,-13.,-15.,-18.,-20.}, /*8000*/
-   { -7., -8., -9.,-10.,-10.,-11.,-12.,-13.,-15.,-18.,-20.}, /*8000*/
-   { -7., -8., -9.,-10.,-10.,-11.,-12.,-13.,-15.,-18.,-20.}, /*8000*/
-   { -7., -8., -9.,-10.,-10.,-11.,-12.,-13.,-15.,-18.,-20.}, /*8000*/
-   { -7., -8., -9.,-10.,-10.,-11.,-12.,-13.,-15.,-16.,-17.}, /*8000*/
-   { -6., -7., -9., -9., -9., -9.,-10.,-11.,-12.,-13.,-14.}, /*11500*/
-   { -6., -6., -9., -9., -9., -9., -9., -9.,-10.,-11.,-12.}, /*16000*/
+  {{-14.f,-16.f,-18.f,-19.f,-20.f,-21.f,-22.f,-22.f,-24.f,-24.f,-24.f},/*63*/
+   {-14.f,-16.f,-18.f,-19.f,-20.f,-21.f,-22.f,-22.f,-24.f,-24.f,-24.f},/*88*/
+   {-14.f,-16.f,-18.f,-19.f,-20.f,-21.f,-22.f,-22.f,-24.f,-24.f,-24.f},/*125*/
+   {-10.f,-10.f,-10.f,-10.f,-16.f,-16.f,-18.f,-20.f,-24.f,-24.f,-24.f},/*175*/
+   {-10.f,-10.f,-10.f,-10.f,-16.f,-16.f,-18.f,-20.f,-24.f,-24.f,-24.f},/*250*/
+   {-10.f,-10.f,-10.f,-10.f,-16.f,-16.f,-18.f,-20.f,-22.f,-24.f,-24.f},/*350*/
+   {-10.f,-10.f,-10.f,-10.f,-16.f,-16.f,-18.f,-20.f,-22.f,-24.f,-24.f},/*500*/
+   {-10.f,-10.f,-10.f,-10.f,-14.f,-14.f,-16.f,-20.f,-22.f,-24.f,-24.f},/*700*/
+   {-10.f,-10.f,-10.f,-10.f,-14.f,-14.f,-16.f,-20.f,-22.f,-24.f,-24.f},/*1000*/
+   {-10.f,-10.f,-10.f,-10.f,-14.f,-14.f,-16.f,-20.f,-22.f,-24.f,-24.f},/*1400*/
+   {-10.f,-10.f,-10.f,-10.f,-14.f,-14.f,-16.f,-20.f,-22.f,-24.f,-24.f},/*2000*/
+   {-10.f,-10.f,-10.f,-12.f,-16.f,-16.f,-16.f,-20.f,-22.f,-24.f,-24.f},/*2400*/
+   {-10.f,-10.f,-10.f,-12.f,-16.f,-16.f,-16.f,-20.f,-22.f,-24.f,-24.f},/*4000*/
+   {-10.f,-10.f,-10.f,-12.f,-12.f,-14.f,-16.f,-18.f,-22.f,-24.f,-24.f},/*5600*/
+   {-10.f,-10.f,-10.f,-10.f,-10.f,-14.f,-16.f,-18.f,-22.f,-24.f,-24.f},/*8000*/
+   {-10.f,-10.f,-10.f,-10.f,-10.f,-14.f,-16.f,-18.f,-22.f,-24.f,-24.f},/*11500*/
+   {-10.f,-10.f,-10.f,-10.f,-10.f,-12.f,-16.f,-18.f,-22.f,-24.f,-24.f},/*16000*/
   },
-
 
-  0,/*noisemaskp */
-  /*  0   10   20   30   40   50   60    70    80    90   100 */
-  {{-99.,-99.,-99.,-99.,-99.,-99.,-99.,-199.,-199.,-199.,-199.}, /*63*/
-   {-99.,-99.,-99.,-99.,-99.,-99.,-99.,-199.,-199.,-199.,-199.}, /*88*/
-   {-99.,-99.,-99.,-99.,-99.,-99.,-99.,-199.,-199.,-199.,-199.}, /*125*/
-   {-99.,-99.,-99.,-99.,-99.,-99.,-99.,-199.,-199.,-199.,-199.}, /*175*/
-   {-99.,-99.,-99.,-99.,-99.,-99.,-99.,-199.,-199.,-199.,-199.}, /*250*/
-   {-99.,-99.,-99.,-99.,-99.,-99.,-99.,-199.,-199.,-199.,-199.}, /*350*/
-   {-99.,-99.,-99.,-99.,-99.,-99.,-99.,-199.,-199.,-199.,-199.}, /*500*/
-   {  6.,  6.,  6.,  2.,  2.,  2.,  2.,   2.,   2.,   1.,   0.}, /*700*/
-
-   {  6.,  6.,  6.,  5.,  5.,  5.,  5.,   5.,   5.,   4.,   3.}, /*1000*/
-   {  6.,  6.,  6.,  5.,  5.,  5.,  5.,   5.,   5.,   4.,   3.}, /*1400*/
-   {  6.,  6.,  6.,  5.,  5.,  5.,  5.,   5.,   5.,   4.,   3.}, /*2000*/
-   {  6.,  6.,  6.,  5.,  5.,  5.,  5.,   5.,   5.,   4.,   3.}, /*2800*/
-   {  6.,  6.,  6.,  5.,  5.,  5.,  5.,   5.,   5.,   4.,   3.}, /*4000*/
-   { 10., 10., 10., 10., 10., 10.,  8.,   8.,   6.,   6.,   6.}, /*5600*/
-   { 10., 10., 10., 10., 10., 10.,  8.,   8.,   8.,   8.,   8.}, /*8000*/
-   { 10., 10., 10., 10., 10., 10., 10.,  10.,  10.,  10.,  10.}, /*11500*/
-   { 10., 10., 10., 10., 10., 10., 10.,  10.,  10.,  10.,  10.}, /*16000*/
+  1,/*noisemaskp */
+  -0.f,  /* suppress any noise curve over maxspec+n */
+  .5f,   /* low window */
+  .5f,   /* high window */
+  25,
+  25,
+  {.000f, /*63*/
+   .000f, /*88*/
+   .000f, /*125*/
+   .000f, /*175*/
+   .000f, /*250*/
+   .000f, /*350*/
+   .000f, /*500*/
+   .200f, /*700*/
+   .300f, /*1000*/
+   .400f, /*1400*/
+   .400f, /*2000*/
+   .400f, /*2800*/
+   .700f, /*4000*/
+   .900f, /*5600*/
+   .900f, /*8000*/
+   .900f, /*11500*/
+   .900f, /*16000*/
   },
  
-  100.,
+  105.f,  /* even decade + 5 is important; saves an rint() later in a
+            tight loop) */
+  -28.,
 
-  -0., -.004   /* attack/decay control */
+  -0.f, -.004f   /* attack/decay control */
 };
 
 static int noisy=0;
@@ -148,9 +165,15 @@
   int  m;
   int *linearmap;
 
+  void *vi;
   lpc_lookup lpclook;
+  float *lsp_look;
+
 } vorbis_look_floor0;
 
+extern float _curve_to_lpc(float *curve,float *lpc,
+			   vorbis_look_floor0 *l);
+
 long frameno=0;
 
 /* hacked from floor0.c */
@@ -177,14 +200,17 @@
   float nonz=0.f;
   float acc=0.f;
   float tot=0.f;
+  float ampmax=-9999,newmax;
 
   int framesize=2048;
-  int order=32;
+  int order=30;
   int map=256;
+  float ampmax_att_per_sec=-10.;
 
-  float *pcm[2],*out[2],*window,*decay[2],*lpc,*floor,*mask;
+  float *pcm[2],*out[2],*window,*lpc,*flr,*mask;
   signed char *buffer,*buffer2;
   mdct_lookup m_look;
+  drft_lookup f_look;
   vorbis_look_psy p_look;
   long i,j,k;
 
@@ -199,16 +225,12 @@
       /* option */
       if(argv[0][1]=='v'){
         noisy=0;
-      }
-      if(argv[0][1]=='A'){
-	ath=0;
       }
-      if(argv[0][1]=='D'){
-	decayp=0;
+      if(argv[0][1]=='o'){
+	order=atoi(argv[0]+2);
       }
-      if(argv[0][1]=='X'){
-	ath=0;
-	decayp=0;
+      if(argv[0][1]=='m'){
+	map=atoi(argv[0]+2);
       }
     }else
       if(*argv[0]=='+'){
@@ -216,16 +238,12 @@
         if(argv[0][1]=='v'){
           noisy=1;
         }
-	if(argv[0][1]=='A'){
-	  ath=1;
+	if(argv[0][1]=='o'){
+	  order=atoi(argv[0]+2);
         }
-	if(argv[0][1]=='D'){
-	  decayp=1;
+	if(argv[0][1]=='m'){
+	  map=atoi(argv[0]+2);
         }
-	if(argv[0][1]=='X'){
-	  ath=1;
-	  decayp=1;
-	}
       }else
         framesize=atoi(argv[0]);
     argv++;
@@ -236,20 +254,19 @@
   pcm[1]=_ogg_malloc(framesize*sizeof(float));
   out[0]=_ogg_calloc(framesize/2,sizeof(float));
   out[1]=_ogg_calloc(framesize/2,sizeof(float));
-  decay[0]=_ogg_calloc(framesize/2,sizeof(float));
-  decay[1]=_ogg_calloc(framesize/2,sizeof(float));
-  floor=_ogg_malloc(framesize*sizeof(float));
+  flr=_ogg_malloc(framesize*sizeof(float));
   lpc=_ogg_malloc(order*sizeof(float));
   buffer=_ogg_malloc(framesize*4);
   buffer2=buffer+framesize*2;
   window=_vorbis_window(0,framesize,framesize/2,framesize/2);
   mdct_init(&m_look,framesize);
+  drft_init(&f_look,framesize);
   _vp_psy_init(&p_look,&_psy_set0,framesize/2,44100);
   floorinit(&floorlook,framesize/2,order,map);
 
   for(i=0;i<P_BANDS;i++)
     for(j=0;j<P_LEVELS;j++)
-      analysis("Ptonecurve",i*100+j,p_look.tonecurves[i][j],EHMER_MAX,0,1);
+      analysis("Ptonecurve",i*100+j,p_look.tonecurves[i][j],EHMER_MAX,0,0);
 
   /* we cheat on the WAV header; we just bypass 44 bytes and never
      verify that it matches 16bit/stereo/44.1kHz. */
@@ -277,30 +294,57 @@
                    (0x00ff&(int)buffer[i*4+2]))/32768.f;
       }
       
+      {
+	float secs=framesize/44100.;
+	
+	ampmax+=secs*ampmax_att_per_sec;
+	if(ampmax<-9999)ampmax=-9999;
+      }
+      newmax=ampmax;
+
       for(i=0;i<2;i++){
         float amp;
 
         analysis("pre",frameno,pcm[i],framesize,0,0);
+	memcpy(mask,pcm[i],sizeof(float)*framesize);
         
         /* do the psychacoustics */
         for(j=0;j<framesize;j++)
-	  pcm[i][j]*=window[j];
+	  mask[j]=pcm[i][j]*=window[j];
+	
+	drft_forward(&f_look,mask);
 
-	memcpy(mask,pcm[i],sizeof(float)*framesize);
+	mask[0]/=(framesize/4.);
+	for(j=1;j<framesize-1;j+=2)
+	  mask[(j+1)>>1]=4*hypot(mask[j],mask[j+1])/framesize;
 
         mdct_forward(&m_look,pcm[i],pcm[i]);
+	memcpy(mask+framesize/2,pcm[i],sizeof(float)*framesize/2);
+	analysis("mdct",frameno,pcm[i],framesize/2,0,1);
+	analysis("fft",frameno,mask,framesize/2,0,1);
+
+	{
+	  float ret;
+	  ret=_vp_compute_mask(&p_look,mask,mask+framesize/2,flr,NULL,ampmax);
+	  if(ret>newmax)newmax=ret;
+	}
 
-	analysis("mdct",frameno,pcm[i],framesize/2,1,1);
+	analysis("mask",frameno,flr,framesize/2,0,0);
 
-	_vp_compute_mask(&p_look,pcm[i],floor,decay[i]);
-	
-	analysis("floor",frameno,floor,framesize/2,1,1);
-	analysis("decay",frameno,decay[i],framesize/2,1,1);
+	for(j=0;j<framesize/2;j++)
+	  mask[j]=flr[j]+140.;
+
+	amp=sqrt(_curve_to_lpc(mask,mask,&floorlook));
+	vorbis_lpc_to_lsp(mask,mask,floorlook.m);
+	vorbis_lsp_to_curve(flr,floorlook.linearmap,floorlook.n,floorlook.ln,
+			    mask,floorlook.m,amp,140.);
+
+	analysis("floor",frameno,flr,framesize/2,0,1);
 
-	_vp_apply_floor(&p_look,pcm[i],floor);
+	_vp_apply_floor(&p_look,pcm[i],flr);
 
 
-	analysis("quant",frameno,pcm[i],framesize/2,1,1);
+	analysis("quant",frameno,pcm[i],framesize/2,0,0);
 
         /* re-add floor */
         for(j=0;j<framesize/2;j++){
@@ -309,13 +353,13 @@
           if(val){
             nonz++;
             acc+=log(fabs(val)*2.f+1.f)/log(2);
-	    pcm[i][j]=val*floor[j];
+	    pcm[i][j]=val*flr[j];
           }else{
             pcm[i][j]=0.f;
           }
         }
         
-	analysis("final",frameno,pcm[i],framesize/2,1,1);
+	analysis("final",frameno,pcm[i],framesize/2,0,1);
 
         /* take it back to time */
         mdct_backward(&m_look,pcm[i],pcm[i]);
@@ -324,6 +368,7 @@
 
         frameno++;
       }
+      ampmax=newmax;
            
       /* write data.  Use the part of buffer we're about to shift out */
       for(i=0;i<2;i++){

1.24      +13 -13    vorbis/lib/res0.c

Index: res0.c
===================================================================
RCS file: /usr/local/cvsroot/vorbis/lib/res0.c,v
retrieving revision 1.23
retrieving revision 1.24
diff -u -r1.23 -r1.24
--- res0.c	2000/12/21 21:04:41	1.23
+++ res0.c	2001/01/22 01:38:25	1.24
@@ -12,7 +12,7 @@
  ********************************************************************
 
  function: residue backend 0 implementation
- last mod: $Id: res0.c,v 1.23 2000/12/21 21:04:41 xiphmont Exp $
+ last mod: $Id: res0.c,v 1.24 2001/01/22 01:38:25 xiphmont Exp $
 
  ********************************************************************/
 
@@ -32,7 +32,6 @@
 #include "codebook.h"
 #include "misc.h"
 #include "os.h"
-#include "bitbuffer.h"
 
 typedef struct {
   vorbis_info_residue0 *info;
@@ -112,8 +111,10 @@
                                  want old code to DTWT */
     acc+=cascade;
   }
-  for(j=0;j<acc;j++)
+  for(j=0;j<acc;j++){
     info->booklist[j]=oggpack_read(opb,8);
+    if(info->booklist[j]==255)info->booklist[j]=-1;
+  }
 
   if(info->groupbook>=ci->books)goto errout;
   for(j=0;j<acc;j++)
@@ -146,8 +147,7 @@
     int stages=info->secondstages[j];
     if(stages){
       look->partbooks[j]=_ogg_malloc(stages*sizeof(codebook *));
-      for(k=0;k<stages;k++)
-	look->partbooks[j][k]=be->fullbooks+info->booklist[acc++];
+      look->partbooks[j][0]=be->fullbooks+info->booklist[acc++];
     }
   }
 
@@ -212,7 +212,7 @@
   return(i);
 }
 
-static int _encodepart(vorbis_bitbuffer *vbb,float *vec, int n,
+static int _encodepart(oggpack_buffer *opb,float *vec, int n,
                        int stages, codebook **books,int mode,int part){
   int i,j=0,bits=0;
   if(stages){
@@ -230,7 +230,7 @@
         fclose(f);
       }
 #endif
-      bits+=vorbis_book_bufencode(books[j],entry,vbb);
+      bits+=vorbis_book_encode(books[j],entry,opb);
     }
   }
   return(bits);
@@ -241,10 +241,10 @@
   int i;
   
   memset(work,0,sizeof(float)*n);
-  for(i=0;i<stages;i++){
-    int dim=books[i]->dim;
+  if(stages){
+    int dim=books[0]->dim;
     int step=n/dim;
-    if(s_vorbis_book_decodevs(books[i],work,opb,step,0)==-1)
+    if(s_vorbis_book_decodevs(books[0],work,opb,step,0)==-1)
       return(-1);
   }
   
@@ -255,7 +255,7 @@
 }
 
 int res0_forward(vorbis_block *vb,vorbis_look_residue *vl,
-	    float **in,int ch,vorbis_bitbuffer *vbb){
+	    float **in,int ch){
   long i,j,k,l;
   vorbis_look_residue0 *look=(vorbis_look_residue0 *)vl;
   vorbis_info_residue0 *info=look->info;
@@ -307,13 +307,13 @@
       long val=partword[j][l];
       for(k=1;k<partitions_per_word;k++)
         val= val*possible_partitions+partword[j][l+k];
-      phrasebits+=vorbis_book_bufencode(look->phrasebook,val,vbb);
+      phrasebits+=vorbis_book_encode(look->phrasebook,val,&vb->opb);
     }
     /* now we encode interleaved residual values for the partitions */
     for(k=0;k<partitions_per_word;k++,l++,i+=samples_per_partition)
       for(j=0;j<ch;j++){
         /*resbits[partword[j][l]]+=*/
-	resbitsT+=_encodepart(vbb,in[j]+i,samples_per_partition,
+	resbitsT+=_encodepart(&vb->opb,in[j]+i,samples_per_partition,
                               info->secondstages[partword[j][l]],
                               look->partbooks[partword[j][l]],look->map,partword[j][l]);
         resvals[partword[j][l]]+=samples_per_partition;

1.11      +7 -8      vorbis/lib/scales.h

Index: scales.h
===================================================================
RCS file: /usr/local/cvsroot/vorbis/lib/scales.h,v
retrieving revision 1.10
retrieving revision 1.11
diff -u -r1.10 -r1.11
--- scales.h	2000/12/24 06:04:14	1.10
+++ scales.h	2001/01/22 01:38:26	1.11
@@ -12,7 +12,7 @@
  ********************************************************************
 
  function: linear scale -> dB, Bark and Mel scales
- last mod: $Id: scales.h,v 1.10 2000/12/24 06:04:14 msmith Exp $
+ last mod: $Id: scales.h,v 1.11 2001/01/22 01:38:26 xiphmont Exp $
 
  ********************************************************************/
 
@@ -23,11 +23,10 @@
 
 /* 20log10(x) */
 #define DYNAMIC_RANGE_dB 200.f
-#define todB(x)   ((x)==0?-9e20f:log(fabs(x))*8.6858896f)
+#define todB(x)   ((x)==0?-400.f:log((x)*(x))*4.34294480f)
 #define todB_nn(x)   ((x)==0.f?-400.f:log(x)*8.6858896f)
 #define fromdB(x) (exp((x)*.11512925f))
 
-
 /* The bark scale equations are approximations, since the original
    table was somewhat hand rolled.  The below are chosen to have the
    best possible fit to the rolled tables, thus their somewhat odd
@@ -37,16 +36,16 @@
 
    all f in Hz, z in Bark */
 
-#define toBARK(f)   (13.1F*atan(.00074F*(f))+2.24F*atan((f)*(f)*1.85e-8F)+1e-4F*(f))
+#define toBARK(n)   (13.1f*atan(.00074f*(n))+2.24f*atan((n)*(n)*1.85e-8f)+1e-4f*(n))
 #define fromBARK(z) (102.f*(z)-2.f*pow(z,2.f)+.4f*pow(z,3.f)+pow(1.46f,z)-1.f)
-#define toMEL(f)    (log(1.F+(f)*.001F)*1442.695F)
+#define toMEL(n)    (log(1.f+(n)*.001f)*1442.695f)
 #define fromMEL(m)  (1000.f*exp((m)/1442.695f)-1000.f)
 
-/* Frequency to octave.  We arbitrarily declare 125.0 Hz to be octave
+/* Frequency to octave.  We arbitrarily declare 63.5 Hz to be octave
    0.0 */
 
-#define toOC(f)     (log(f)*1.442695F-6.965784F)
-#define fromOC(o)   (exp(((o)+6.965784f)*.693147f))
+#define toOC(n)     (log(n)*1.442695f-5.965784f)
+#define fromOC(o)   (exp(((o)+5.965784f)*.693147f))
 
 #endif
 

1.14      +4 -4      vorbis/lib/sharedbook.c

Index: sharedbook.c
===================================================================
RCS file: /usr/local/cvsroot/vorbis/lib/sharedbook.c,v
retrieving revision 1.13
retrieving revision 1.14
diff -u -r1.13 -r1.14
--- sharedbook.c	2000/12/21 21:04:41	1.13
+++ sharedbook.c	2001/01/22 01:38:26	1.14
@@ -12,7 +12,7 @@
  ********************************************************************
 
  function: basic shared codebook operations
- last mod: $Id: sharedbook.c,v 1.13 2000/12/21 21:04:41 xiphmont Exp $
+ last mod: $Id: sharedbook.c,v 1.14 2001/01/22 01:38:26 xiphmont Exp $
 
  ********************************************************************/
 
@@ -60,9 +60,9 @@
 }
 
 float _float32_unpack(long val){
-  float mant=val&0x1fffff;
-  float sign=val&0x80000000;
-  float exp =(val&0x7fe00000)>>VQ_FMAN;
+  double mant=val&0x1fffff;
+  int    sign=val&0x80000000;
+  long   exp =(val&0x7fe00000L)>>VQ_FMAN;
   if(sign)mant= -mant;
   return(ldexp(mant,exp-(VQ_FMAN-1)-VQ_FEXP_BIAS));
 }

1.36      +0 -0      vorbis/lib/vorbisfile.c

Index: vorbisfile.c
===================================================================
RCS file: /usr/local/cvsroot/vorbis/lib/vorbisfile.c,v
retrieving revision 1.35
retrieving revision 1.36
diff -u -r1.35 -r1.36
--- vorbisfile.c	2001/01/01 21:31:15	1.35
+++ vorbisfile.c	2001/01/22 01:38:26	1.36
@@ -12,7 +12,7 @@
  ********************************************************************
 
  function: stdio-based convenience library for opening/seeking/decoding
- last mod: $Id: vorbisfile.c,v 1.35 2001/01/01 21:31:15 xiphmont Exp $
+ last mod: $Id: vorbisfile.c,v 1.36 2001/01/22 01:38:26 xiphmont Exp $
 
  ********************************************************************/
 

1.6       +1 -2      vorbis/lib/window.h

Index: window.h
===================================================================
RCS file: /usr/local/cvsroot/vorbis/lib/window.h,v
retrieving revision 1.5
retrieving revision 1.6
diff -u -r1.5 -r1.6
--- window.h	2000/11/06 00:07:03	1.5
+++ window.h	2001/01/22 01:38:26	1.6
@@ -12,14 +12,13 @@
  ********************************************************************
 
  function: window functions
- last mod: $Id: window.h,v 1.5 2000/11/06 00:07:03 xiphmont Exp $
+ last mod: $Id: window.h,v 1.6 2001/01/22 01:38:26 xiphmont Exp $
 
  ********************************************************************/
 
 #ifndef _V_WINDOW_
 #define _V_WINDOW_
 
-#define VI_WINDOWB 1
 extern float *_vorbis_window(int type,int window,int left,int right);
 
 #endif

1.3       +109 -1098 vorbis/lib/books/lsp12_0.vqh

Index: lsp12_0.vqh
===================================================================
RCS file: /usr/local/cvsroot/vorbis/lib/books/lsp12_0.vqh,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- lsp12_0.vqh	2000/11/06 00:07:11	1.2
+++ lsp12_0.vqh	2001/01/22 01:38:30	1.3
@@ -5,9 +5,8 @@
  * 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-2000             *
- * by Monty <monty at xiph.org> and the XIPHOPHORUS Company            *
- * http://www.xiph.org/                                             *
+ * THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2001             *
+ * by the XIPHOPHORUS Company, http://www.xiph.org/                 *
  *                                                                  *
  ********************************************************************
 
@@ -21,1136 +20,148 @@
 
 static long _vq_quantlist_lsp12_0[] = {
         0,
-	3,
-	6,
-	7,
-	8,
-	9,
+	5,
         10,
-	11,
-	13,
         15,
-	19,
+	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[] = {
-	 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-	 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-	 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-	 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-	 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-	 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-	 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-	 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-	 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-	 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-	 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-	 0, 0,16,15, 0, 0, 0, 0, 0, 0, 0, 0, 0,15,14,14,
-	 0, 0, 0, 0, 8, 0, 0, 0, 0,16,15,16, 0, 0, 0, 0,
-	 0, 0, 0, 0, 0, 0,14,14,16, 0, 0, 0, 0, 0, 0, 0,
-	 0, 0,16,16,15, 0,16, 0, 0, 0, 0, 0, 0, 0,13,15,
-	 0, 0,15,13, 0, 0, 0, 0, 0, 0,15,14, 0, 0,15,14,
-	15, 0, 0, 0, 0, 0, 0, 0, 0, 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, 0, 0, 0, 0, 0,
-	 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-	 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-	 0, 0, 0, 0, 0, 0, 0,16,15,15, 0,16, 0, 0, 0, 0,
-	 0,15, 0, 0,16,15, 0, 0, 0, 0, 0, 0, 0, 0,15, 0,
-	14,14,14,15,14,16, 0, 0, 0, 0, 0,15,12,12,13,13,
-	13,16, 0, 0, 0, 0, 0, 0,16,12,12,13,11,11,14, 0,
-	 0, 0, 0, 0, 0, 0,12,12,12,10,11,12,15, 0, 0, 0,
-	 0, 0,14,14,12,10,10,10,12, 0,16, 0, 0, 0, 0, 0,
-	14,13,11,11,11,13,16, 0, 0, 0, 0, 0, 0, 0,14,13,
-	14,13,15, 0, 0, 0, 0, 0, 0, 0, 0,16,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, 0,
-	 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 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,15,13,14,14,13,16,15,16,
-	 0, 0, 0, 0,14,13,10,11,12,12,13, 0, 0, 0, 0, 0,
-	 0,14,10, 9, 9, 9,10,12,16, 0, 0, 0, 0, 0,14,11,
-	 9, 8, 9,10,12,15, 0, 0, 0, 0, 0,14,12, 9, 9, 9,
-	 9,12, 0, 0, 0, 0, 0, 0,14,13,11,10, 9,10,14, 0,
-	 0, 0, 0, 0, 0, 0,14,13,13,12,13,16, 0, 0, 0, 0,
-	 0, 0, 0, 0,15,16, 0,14, 0, 0, 0, 0, 0, 0, 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, 0, 0, 0, 0, 0,
-	 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-	 0, 0, 0, 0, 0, 0, 0, 0, 0,15,16, 0, 0, 0, 0, 0,
-	14,13,12,12,12,12,14, 0,15,16, 0, 0,15, 8, 9, 8,
-	 9,10,11,12,16, 0, 0, 0, 0,15, 9, 6, 7, 6, 7, 9,
-	11, 0, 0, 0, 0, 0, 0,11, 8, 6, 5, 7, 8,12,16, 0,
-	 0, 0, 0, 0,12,10, 7, 7, 7, 8,12,15,16, 0, 0, 0,
-	 0,14,12, 9, 8, 8, 9,13, 0, 0, 0, 0, 0, 0,14,13,
-	11,11,12,12,15, 0, 0, 0, 0, 0, 0,16,16,15,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, 0, 0,
-	 0, 0, 0, 0, 0, 0, 0, 0, 0, 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,15,16, 0, 0, 0, 0,14,13,12,10,11, 8,12,14,
-	16,16, 0, 0, 0, 0,14, 7, 7, 8, 9,10,12,16, 0, 0,
-	 0, 0, 0, 8, 6, 5, 5, 6, 8,11,14, 0, 0, 0, 0, 0,
-	10, 6, 5, 4, 5, 7,11,15, 0, 0, 0, 0, 0,12, 9, 6,
-	 6, 6, 8,11,15, 0, 0, 0, 0, 0,13,10, 8, 7, 7, 9,
-	13, 0, 0, 0, 0, 0,13,13,12,10,11,11,11,14, 0, 0,
-	 0, 0, 0, 0,16, 0, 0, 0,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, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-	 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-	 0, 0, 0, 0, 0,15, 0, 0,16,14,13,14, 0,16, 0, 0,
-	 0,14,13,12,11,11,12,12,14,16, 0, 0, 0, 0, 0,12,
-	10, 9, 8, 9,10,12, 0, 0, 0, 0, 0, 0,10, 8, 6, 6,
-	 6, 8,10,15, 0, 0, 0, 0, 0,10, 8, 6, 5, 6, 7,10,
-	 0, 0, 0, 0, 0, 0,11, 9, 7, 6, 6, 8,10,15, 0, 0,
-	 0, 0,14,11,10, 8, 7, 7, 8,12, 0,16, 0, 0, 0,13,
-	13,13,11,11,11,11,15,15, 0, 0, 0, 0, 0, 0,16,16,
-	16,16,14,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, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-	 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,16, 0,
-	15,16,14,14, 0, 0, 0, 0, 0, 0,15,12,13,12,12,12,
-	12,15, 0, 0, 0, 0, 0,15,12,11,10,10, 9,10,12,16,
-	 0, 0, 0, 0,16,11,10, 8, 7, 7, 8,10,16, 0, 0, 0,
-	 0,15,11, 9, 8, 6, 6, 6,10,15, 0, 0, 0, 0,14,11,
-	10, 8, 7, 6, 7,11,15, 0, 0, 0, 0,14,12,10, 8, 7,
-	 7, 7,13,15, 0, 0, 0, 0,15,14,12,10,10,12,13,14,
-	 0, 0, 0, 0, 0, 0, 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, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-	 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-	 0, 0, 0, 0, 0, 0,15, 0, 0, 0, 0,16, 0, 0, 0,16,
-	 0, 0, 0, 0,12,14,12,12,14,14,14, 0,16, 0, 0, 0,
-	 0,13,14,12,11,12,12,13, 0, 0, 0, 0, 0,16,13,13,
-	11,10, 9,10,13,15, 0, 0, 0, 0,15,12,11,11, 8, 8,
-	 9,12, 0, 0, 0, 0, 0,14,13,12, 9, 8, 8,10,15, 0,
-	 0, 0, 0, 0, 0,12,12, 9, 9,10,11,16, 0,16, 0, 0,
-	 0, 0, 0,14,13,13,14,15,16, 0, 0, 0, 0, 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, 0, 0, 0, 0, 0, 0,
-	 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-	 0, 0, 0, 0, 0, 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,15,15,
-	15, 0, 0,16, 0, 0, 0, 0, 0, 0,15, 0,16,16, 0,16,
-	 0, 0, 0, 0, 0, 0, 0,14, 0,14,15, 0,16,16, 0, 0,
-	 0, 0, 0, 0,16, 0,15,15, 0,15, 0, 0, 0, 0, 0, 0,
-	 0,16,16,15,14,16, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-	15,15, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,15, 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,
-	 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-	 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-	 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-	 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 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, 0, 0, 0,15, 0, 0,
-	 0, 0,16, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,15,
-	 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,16,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,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, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-	 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-	 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-	 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-	 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-	 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-	 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-	 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-	 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-	 0, 0, 0, 0, 0, 0, 0, 0, 0,15, 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,
+	13,14,14,12,13,12,13,13,11,11,10, 9, 8, 6, 6, 6,
+	 5, 5, 4, 3, 3, 3, 3, 4, 4, 5, 5, 5, 6, 4, 6, 8,
+	10,11,13,13,14,12,14,12,13,13,12,
 };
 
 static long _vq_pigeonmap_lsp12_0[] = {
+	    0,     0,     0,     0,     0,     0,     0,     0, 
             0,     0,     0,     0,     0,     1,     1,     1, 
-	    2,     2,     3,     3,     3,     4,     4,     4, 
-	    4,     4,     5,     5,     5,     5,     5,     5, 
-	    5,     5,     5,     5,     5,     5,     5,     5, 
-	    5,     6,     6,     6,     6,     6,     6,     6, 
+	    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[] = {
-	  196,   353,   343,   344,   345,   356,   366,   379, 
-	  535,   189,   357,   201,   368,   380,   238,   250, 
-	  392,   536,   548,   716,   226,   381,   393,   537, 
-	  549,   704,   369,   561,   705,   202,   214,   227, 
-	  239,   251,   370,   382,   394,   406,   538,   550, 
-	  562,   706,   215,   717,   418,   574,   718,   730, 
-	  873,   874,  1032,  1200,   707,   865,   875,  1033, 
-	 1201,   729,   872,  1029,  1198,   886,  1042,   563, 
-	  575,   719,   731,   743,   887,   899,  1043,   343, 
-	  344,   189,   345,   178,   190,   201,   202,   356, 
-	  357,   214,   368,   369,   215,   226,   370,   191, 
-	  203,   227,   347,   371,   538,   381,   537,   382, 
-	  539,   865,   228,   383,   384,   540,   552,   697, 
-	  708,   550,   551,   706,   707,  1032,  1033,  1034, 
-	  866,   709,  1202,   394,   719,   875,   876,   395, 
-	  720,   877,  1203,  1201,   396,   553,   564,   721, 
-	  878,   889,  1035,  1045,  1046,  1200,   565,   722, 
-	  733,   890,  1047,  1058,  1214,  1215,   178,   189, 
-	  344,   345,   179,   190,   191,   347,   202,   203, 
-	  216,   215,   230,   373,   372,   242,   385,   541, 
-	  698,   867,   243,   542,   228,   371,   697,   398, 
-	  554,   255,   256,   412,   568,   710,   724,   254, 
-	  267,   397,   410,   411,   567,   543,   581,   438, 
-	  712,   750,   763,   906,   424,   881,   540,   866, 
-	  384,   357,  1035,   553,   709,   880,   865,   722, 
-	  878,   723,   879,   893,  1037,  1049,   179,   191, 
-	  543,  1037,   712,   881,   426,   713,   230,   243, 
-	  256,   373,   542,   412,   568,   764,   724,   698, 
-	  880,   867,   581,   893,   438,  1049,  1375,  1388, 
-	  750,   906,  1048,  1217,  1115,   763,  1453,  1231, 
-	 1413,   196,   353,   366,   716,   872,   379,   535, 
-	  729,  1041,   392,   548,   704,   380,   536,   238, 
-	  250,   368,   561,   717,   226,   393,   549,   418, 
-	  574,   730,   406,   562,   587,   873,   743,   886, 
-	  419,   575,   251,   239,   600,   407,   420,   432, 
-	  588,   601,   950,  1106,  1236,  1249,  1262,   756, 
-	  769,   408,   421,   433,   576,   589,   602,   614, 
-	  757,   770,   782,   394,   744,   899,  1275,   912, 
-	  925,  1119,   563,   938,   434,   446,   758,  1223, 
-	  926,   590,   615,   771,   783,   939,   951,   718, 
-	 1055,  1288,  1094,  1107,   603,   795,   952,  1120, 
-	 1042,   189,   190,   201,   202,   214,   178,   226, 
-	  215,   227,   191,   203,   228,   238,   239,   216, 
-	  357,   371,   370,   369,   383,   384,   540,   697, 
-	  382,   395,   539,   396,   254,   372,   397,   189, 
-	  201,   202,   214,   226,   238,   250,   368,   227, 
-	  239,   251,   215,   228,   369,   381,   370,   382, 
-	  394,   383,   395,   393,   406,   538,   550,   371, 
-	  407,   539,   551,   419,   563,   384,   396,   397, 
-	  408,   409,   420,   421,   432,   433,   540,   552, 
-	  553,   564,   565,   576,   577,   589,   708,   720, 
-	  721,   733,   190,   201,   202,   214,   215,   226, 
-	  227,   238,   239,   251,   203,   228,   191,   216, 
-	  254,   242,   267,   384,   397,   255,   372,   385, 
-	  371,   383,   396,   395,   408,   540,   552,   409, 
-	  410,   421,   422,   541,   553,   565,   566,   578, 
-	  709,   722,   398,   423,   554,   579,   710,   420, 
-	  433,   434,   564,   577,   590,   721,   734,   201, 
-	  238,   250,   356,   366,   368,   379,   380,   392, 
-	  535,   536,   548,   704,   226,   393,   214,   239, 
-	  251,   561,   227,   549,   381,   717,   418,   406, 
-	  419,   407,   420,   432,   394,   574,   587,   575, 
-	  588,   600,   383,   395,   396,   408,   409,   421, 
-	  433,   564,   576,   577,   589,   601,   745,   757, 
-	  562,   730,   382,   563,   743,   550,   731,   744, 
-	  756,   551,   732,   769,   434,   590,   602,   758, 
-	  770,   201,   202,   214,   215,   226,   227,   238, 
-	  239,   250,   251,   228,   254,   203,   216,   267, 
-	  396,   408,   409,   421,   395,   407,   420,   432, 
-	  433,   383,   384,   397,   565,   577,   371,   410, 
-	  419,   422,   434,   552,   553,   564,   576,   578, 
-	  588,   589,   590,   601,   602,   733,   745,   746, 
-	  758,   423,   435,   446,   591,   603,   370,   382, 
-	  394,   406,   539,   551,   563,   575,   720,   732, 
-	  540,   566,   721,   734,   579,   747,   759,   614, 
-	  771,   436,   447,   592,   604,   615,   760,   772, 
-	  203,   215,   216,   227,   228,   239,   251,   242, 
-	  254,   267,   255,   230,   243,   384,   396,   397, 
-	  409,   423,   436,   256,   411,   424,   410,   398, 
-	  422,   435,   448,   592,   605,   412,   437,   449, 
-	  580,   593,   749,   421,   434,   566,   578,   385, 
-	  579,   567,   591,   447,   554,   604,   748,   761, 
-	  736,   446,   603,   616,   760,   773,   617,   774, 
-	  606,   618,   762,   230,   242,   254,   255,   267, 
-	  243,   256,   412,   438,   543,   581,   426,   450, 
-	  463,   712,   750,   763,   881,   424,   568,   411, 
-	  437,   580,   593,   932,   606,   373,   398,   436, 
-	  542,   567,   736,   749,   449,   762,   775,   619, 
-	  788,   764,   631,   645,  1127,  1115,  1139,   618, 
-	  385,   554,   723,   724,   880,   893,   906,   919, 
-	  892,   905,   918,  1049,  1061,  1075,  1074,   931, 
-	 1101,   944,   957,  1257,  1270,  1283,  1087,  1100, 
-	 1126,  1113,  1295,   226,   238,   250,   251,   239, 
-	  227,   418,   419,   432,   228,   254,   396,   407, 
-	  408,   409,   420,   421,   433,   406,   600,   588, 
-	  589,   601,   267,   397,   410,   422,   434,   435, 
-	  446,   577,   578,   590,   602,   603,   614,   576, 
-	  769,   615,   758,   770,   771,   782,   423,   447, 
-	  591,   757,   783,   459,   436,   448,   604,   616, 
-	  784,   587,   395,   564,   565,   575,   759,   795, 
-	  939,   951,   460,   628,   796,   383,   745,   394, 
-	  756,   938,   952,   393,   562,   563,   574,   743, 
-	  744,   964,   925,   926,   927,  1107,  1120,   629, 
-	  797,   215,   226,   227,   228,   238,   239,   251, 
-	  254,   267,   384,   395,   396,   397,   407,   408, 
-	  409,   420,   421,   432,   433,   434,   422,   242, 
-	  435,   446,   255,   447,   423,   436,   448,   459, 
-	  615,   449,   460,   604,   605,   616,   617,   592, 
-	  628,   784,   785,   424,   437,   618,   629,   786, 
-	  577,   589,   590,   602,   410,   603,   591,   614, 
-	  578,   772,   773,   797,   798,   759,   771,   631, 
-	  787,   799,   579,   760,   450,   800,   955,   956, 
-	  968,   242,   254,   255,   267,   230,   243,   256, 
-	  436,   424,   437,   449,   411,   423,   435,   447, 
-	  448,   459,   460,   593,   605,   617,   618,   412, 
-	  450,   606,   580,   616,   628,   629,   774,   786, 
-	  787,   438,   463,   581,   619,   631,   775,   799, 
-	  788,   592,   604,   798,   800,   398,   446,   761, 
-	  773,   762,   567,   749,   956,   968,   969,   955, 
-	  785,   797,  1137,  1138,   645,  1139,  1136,  1306, 
-	  957,  1126,  1476,   426,   764,   713,  1115,   645, 
-	 1453,  1815,  1994,  1993,  1139,  1138,  1295,  1464, 
-	 1476,  1127,  1283,  1632,  1438,  1451,  1581,  1762, 
-	 1775,  1787,  1270,  1413,  1463,  1388,  1375,  1399, 
-	 1412,  1425,  1555,  1580,  1593,  1257,  1786,   750, 
-	  763,   775,   906,   919,   931,   932,   944,  1075, 
-	 1087,  1100,  1113,  1231,  1244,  1256,  1269,  1282, 
-	  788,   957,  1101,   619,  1126,   238,   250,   251, 
-	  379,   380,   392,   393,   406,   418,   419,   548, 
-	  549,   561,   562,   574,   575,   587,   600,   717, 
-	  729,   730,   743,   756,   950,  1106,  1249,  1262, 
-	 1275,   432,   588,   769,   239,   407,   420,   601, 
-	  744,   757,   925,  1119,   408,   421,   433,   576, 
-	  589,   602,   614,   770,   782,   938,   434,   446, 
-	  577,   590,   603,   615,   758,   771,   783,   939, 
-	  951,   912,   926,   795,   254,   267,   422,   435, 
-	  447,   459,   784,   952,  1288,  1107,   796,   964, 
-	 1120,   616,   628,  1094,   448,   460,   797,   953, 
-	  629,   798,  1289,  1134,   617,   799,  1135,   449, 
-	  631,   800,   968,  1136,  1304,   618,   786,   787, 
-	  969,  1137,   785,   463,   956,  1138,  1306,   955, 
-	  954,   619,   645,   788,  1139,  1476,  1123,  1124, 
-	 1125,   899,  1122,  1292,  1293,  1294,  1121,  1291, 
-	 1276,  1290,  1461,  1462,  1460,  1463,  1630,   251, 
-	  254,   267,   409,   420,   421,   422,   432,   433, 
-	  434,   435,   446,   447,   459,   589,   590,   601, 
-	  602,   603,   614,   615,   758,   770,   771,   782, 
-	  783,   784,   795,   951,   448,   604,   616,   628, 
-	  436,   460,   617,   796,   952,   449,   629,   797, 
-	  964,   618,   798,   631,   799,   450,   787,   800, 
-	  968,  1136,   463,   619,   956,   969,  1137,  1135, 
-	  786,  1138,   788,  1304,  1306,   645,  1139,   957, 
-	 1476,  1134,   955,  1126,   953,   785,  1125,   954, 
-	 1124,  1295,  1294,   256,   424,   437,   438,   448, 
-	  449,   450,   459,   460,   463,   606,   617,   618, 
-	  619,   629,   631,   775,   786,   787,   798,   799, 
-	  800,   788,   968,   969,   645,  1139,   956,  1453, 
-	 1138,  1127,  1815,   436,   447,   605,   616,   774, 
-	  593,   412,   581,   762,   931,   944,   955,   957, 
-	  785,   943,  1125,  1124,  1137,   954,  1112,  1113, 
-	 1126,  1295,  1306,  1123,  1281,  1100,  1282,  1136, 
-	 1293,  1294,  1476,  1292,  1269,  1283,  1464,   450, 
-	  463,   426,   645,   764,  1127,  1115,  1453,  1815, 
-	 1139,  1994,  1993,   619,   631,   788,   799,   800, 
-	  957,   968,   969,  1137,  1138,  1126,  1295,  1306, 
-	 1476,   932,  1101,   763,  1270,  1283,  1464,   438, 
-	  459,   460,   463,   628,   629,   631,   645,   796, 
-	  797,   798,   799,   800,   956,   964,   968,   969, 
-	 1124,  1125,  1134,  1135,  1136,  1137,  1138,  1293, 
-	 1304,  1306,  1476,  1139,  1294,  1462,  1463,  1994, 
-	 1993,  1815,   446,   447,   615,   616,   783,   784, 
-	  795,   952,   953,   785,   617,   786,   954,   618, 
-	  787,   955,  1123,   957,  1126,  1122,  1292,  1295, 
-	 1291,  1464,  1632,   449,   619,   788,  1461,  1460, 
-	 1630,   196,   353,   343,   344,   356,   366,   379, 
-	  535,   345,  1029,   536,   704,  1198,   716,   872, 
-	  357,   368,   380,   548,   705,   873,   729,  1041, 
-	 1366,   392,   537,   549,   717,   874,  1032,  1042, 
-	 1200,   561,   706,   718,   886,  1043,  1201,  1211, 
-	  369,   381,   538,  1033,   393,   550,   875,   370, 
-	  382,   394,   539,   551,   562,   707,   719,   865, 
-	  876,   887,  1034,  1044,  1202,   189,   201,   356, 
-	  357,   366,   368,   369,   379,   380,   381,   392, 
-	  535,   536,   537,   548,   549,   705,   202,   214, 
-	  226,   238,   370,   382,   393,   538,   550,   706, 
-	  394,   250,   406,   562,   215,   227,   239,   251, 
-	  371,   383,   395,   407,   539,   551,   563,   707, 
-	  718,   719,   575,   731,   875,   396,   408,   540, 
-	  552,   564,   576,   708,   720,   732,   876,   874, 
-	 1032,   865,  1033,   887,   888,   419,   744,   900, 
-	 1044,   384,   420,   565,   577,   709,   721,   733, 
-	  745,   877,   889,   901,  1045,   190,   201,   202, 
-	  214,   215,   226,   227,   238,   239,   357,   368, 
-	  369,   370,   371,   381,   382,   383,   394,   537, 
-	  538,   539,   550,   551,   707,   865,   203,   228, 
-	  384,   395,   540,   552,   697,   708,   191,   216, 
-	  372,   396,   553,   709,   866,   254,   385,   397, 
-	  409,   541,   565,   566,   722,   408,   564,   410, 
-	  721,   878,  1035,   720,   577,   733,   877,   578, 
-	  734,   398,   554,   579,   710,   735,   876,  1034, 
-	  698,   890,   891,  1047,   889,   421,   746,   902, 
-	 1046,   422,   747,   903,   423,   567,   723,   748, 
-	  879,   904,   191,   203,   216,   228,   371,   372, 
-	  384,   385,   397,   540,   541,   553,   697,   698, 
-	  866,   242,   373,   554,   710,   867,   230,   398, 
-	  542,   243,   256,   412,   568,   724,   880,   893, 
-	  255,   567,   723,   543,   581,   750,   906,  1037, 
-	 1049,   411,   424,   580,   438,   712,   879,   736, 
-	  593,   749,   763,   919,   892,  1048,  1075,  1231, 
-	  905,   881,  1061,  1217,  1244,   918,  1074,   932, 
-	 1230,  1257,  1375,   762,  1087,  1243,  1101,   196, 
-	  716,   872,   353,   729,  1041,   366,   535,   379, 
-	  548,   704,   380,   392,   536,   561,   717,   873, 
-	  549,   705,   730,   886,  1366,  1042,  1210,  1223, 
-	 1236,   393,   574,   718,   874,   899,  1055,  1029, 
-	 1198,  1211,  1249,   418,   562,   743,   887,  1043, 
-	 1068,  1106,  1224,  1262,  1405,   587,   731,   912, 
-	 1056,  1212,  1237,  1275,   343,   344,  1200,  1032, 
-	 1201,  1380,   706,   875,  1033,  1044,  1202,  1213, 
-	 1225,  1381,  1418,   366,   379,   380,   392,   535, 
-	  536,   548,   704,   368,   381,   393,   537,   549, 
-	  561,   705,   717,   226,   238,   250,   369,   382, 
-	  394,   406,   418,   538,   550,   562,   574,   706, 
-	  718,   730,   239,   251,   395,   407,   419,   551, 
-	  563,   575,   587,   719,   731,   873,   874,   886, 
-	  707,   743,   875,   887,   899,   420,   432,   564, 
-	  576,   588,   600,   720,   732,   744,   756,   888, 
-	  900,  1042,  1043,  1055,   876,   912,  1044,  1056, 
-	 1068,   408,   589,   601,   733,   745,   757,   769, 
-	  889,   901,   913,   925,  1057,  1069,   214,   226, 
-	  227,   238,   239,   250,   251,   369,   370,   381, 
-	  382,   383,   393,   394,   395,   406,   407,   419, 
-	  538,   539,   550,   551,   562,   563,   575,   707, 
-	  719,   215,   228,   371,   384,   396,   408,   420, 
-	  540,   552,   564,   576,   708,   720,   432,   588, 
-	  732,   397,   409,   421,   433,   553,   565,   577, 
-	  589,   721,   733,   731,   744,   876,   888,   709, 
-	  745,   877,   889,   601,   757,   901,   422,   434, 
-	  566,   578,   590,   602,   722,   734,   746,   758, 
-	  890,   902,   900,   913,  1045,  1057,   878,   914, 
-	 1046,  1058,   770,   926,  1070,   410,   591,   603, 
-	  735,   747,   759,   771,   891,   903,   915,   927, 
-	 1059,  1071,   228,   371,   383,   384,   395,   396, 
-	  397,   408,   409,   421,   540,   552,   553,   564, 
-	  565,   577,   709,   721,   216,   254,   372,   385, 
-	  410,   422,   541,   566,   578,   722,   242,   267, 
-	  398,   423,   554,   579,   710,   434,   590,   734, 
-	  435,   591,   735,   255,   411,   436,   567,   592, 
-	  723,   733,   746,   878,   890,   747,   891,   748, 
-	  879,   603,   759,   903,   604,   760,   904,   424, 
-	  580,   605,   736,   761,   892,   902,   915,  1047, 
-	 1059,   916,  1060,   917,  1048,   772,   928,  1072, 
-	  773,   929,  1073,   593,   749,   774,   905,   930, 
-	 1061,   196,   716,   729,   872,  1041,   366,   379, 
-	  380,   392,   535,   536,   548,   561,   704,   717, 
-	  873,   393,   549,   574,   730,   418,   886,   250, 
-	  406,   562,   575,   587,   705,   718,   731,   743, 
-	  899,  1042,  1106,  1223,  1236,  1249,  1262,   756, 
-	  912,  1055,   419,   600,  1210,   950,  1211,  1275, 
-	 1068,   588,   744,   769,   925,   874,   887,  1405, 
-	 1224,   900,  1081,   432,   757,   913,   938,  1094, 
-	 1119,   238,   250,   368,   379,   380,   381,   392, 
-	  393,   394,   406,   418,   536,   537,   548,   549, 
-	  550,   561,   562,   574,   575,   587,   705,   717, 
-	  718,   730,   731,   743,   886,   899,   251,   407, 
-	  419,   563,   239,   382,   395,   408,   420,   432, 
-	  551,   564,   576,   588,   600,   732,   744,   756, 
-	  421,   433,   577,   589,   601,   745,   757,   769, 
-	  912,   925,   434,   590,   602,   758,   770,   719, 
-	  900,   720,   733,   901,   913,   746,   914,   926, 
-	  938,   446,   603,   614,   759,   771,   782,   927, 
-	  939,   887,  1068,   888,  1069,  1081,   889,   902, 
-	 1070,  1082,  1094,   915,  1083,  1095,  1107,   615, 
-	  772,   783,   928,   940,   951,  1096,  1108,   383, 
-	  395,   396,   407,   408,   409,   419,   420,   421, 
-	  432,   433,   552,   564,   565,   576,   577,   588, 
-	  589,   601,   733,   745,   254,   384,   397,   410, 
-	  422,   434,   553,   566,   578,   590,   602,   734, 
-	  746,   758,   267,   423,   435,   446,   579,   591, 
-	  603,   747,   759,   614,   771,   436,   447,   592, 
-	  604,   615,   760,   772,   721,   757,   770,   902, 
-	  914,   722,   735,   903,   915,   927,   748,   916, 
-	  928,   783,   940,   448,   605,   616,   761,   773, 
-	  784,   929,   941,   890,   926,   939,  1071,  1083, 
-	  891,   904,  1072,  1084,  1096,   917,  1085,  1097, 
-	  952,  1109,   459,   617,   774,   785,   930,   942, 
-	  953,  1098,  1110,   254,   267,   397,   409,   410, 
-	  421,   422,   423,   434,   435,   566,   578,   579, 
-	  590,   591,   603,   735,   747,   242,   255,   385, 
-	  398,   411,   436,   554,   567,   592,   604,   748, 
-	  424,   580,   605,   736,   447,   760,   448,   761, 
-	  437,   449,   593,   749,   616,   773,   460,   606, 
-	  617,   618,   762,   774,   786,   930,   943,   759, 
-	  772,   904,   916,   723,   917,   905,   929,   918, 
-	  785,   942,   450,   775,   787,   931,   928,   941, 
-	 1073,  1085,   892,  1086,  1074,  1098,  1099,  1087, 
-	  954,  1111,   955,  1112,   619,   944,   956,  1100, 
-	  716,   729,  1223,  1236,   379,   392,   535,   548, 
-	  561,   574,   704,   717,   730,  1106,  1249,  1262, 
-	  250,   380,   393,   406,   418,   536,   549,   562, 
-	  575,   587,   600,   705,   718,   731,   743,   756, 
-	  873,   886,   899,   912,   950,  1042,  1055,  1068, 
-	 1275,   419,   432,   588,   601,   744,   757,   769, 
-	  925,  1119,   938,  1081,   770,   782,  1094,  1288, 
-	  420,   433,   576,   589,   602,   614,   745,   758, 
-	  771,   783,   913,   926,   939,   951,  1095,  1107, 
-	 1263,  1276,   446,   795,  1120,   615,   784,   796, 
-	  952,   964,  1405,  1418,  1041,  1210,  1082,  1108, 
-	 1121,  1289,   407,   418,   419,   420,   432,   433, 
-	  575,   576,   587,   588,   589,   600,   601,   744, 
-	  756,   757,   769,   770,   925,   938,   408,   421, 
-	  434,   577,   590,   602,   614,   745,   758,   771, 
-	  782,   926,   939,   409,   422,   435,   446,   578, 
-	  591,   603,   615,   746,   759,   772,   783,   927, 
-	  940,  1107,   951,   447,   784,   795,   952,   448, 
-	  459,   604,   616,   628,   785,   796,   953,  1120, 
-	  964,  1121,   460,   797,   617,   629,   798,   913, 
-	 1094,   914,  1095,  1108,  1134,   786,   954,  1135, 
-	 1082,  1263,  1276,   928,   941,  1109,  1289,  1122, 
-	  799,   955,  1123,  1136,  1304,   422,   434,   435, 
-	  446,   447,   591,   603,   604,   614,   615,   772, 
-	  423,   436,   448,   459,   592,   605,   616,   773, 
-	  784,   449,   460,   617,   628,   785,   618,   629, 
-	  786,   797,   631,   787,   798,   799,   955,   800, 
-	  956,   968,  1136,   760,   783,   941,   761,   774, 
-	  942,   796,   953,   954,  1124,  1135,   969,  1137, 
-	  929,   952,  1110,   930,   943,  1111,  1122,  1123, 
-	 1304,  1125,  1138,  1306,   950,  1106,  1119,  1275, 
-	 1288,   600,   769,   782,   432,   601,   614,   770, 
-	  783,   795,   938,   939,   951,  1107,  1120,  1276, 
-	  446,   615,   796,   952,   964,  1289,   459,   784, 
-	  628,   797,   460,   629,   953,  1134,  1121,   785, 
-	  798,   954,  1122,  1135,  1304,   799,   968,  1123, 
-	 1136,  1290,  1291,   631,   800,   955,   969,  1124, 
-	 1137,  1292,  1306,  1138,  1293,  1125,  1294,  1476, 
-	 1459,   463,  1139,  1460,  1461,  1462,   645,  1463, 
-	 1630,  1632,  1108,  1445,   190,   347,   697,   865, 
-	 1034,   191,   698,   866,  1035,   867,   371,  1203, 
-	  372,   373,   542,   724,   880,   541,   568,   893, 
-	 1049,   384,   385,   397,   540,   553,   554,   566, 
-	  709,   710,   722,   878,   879,   891,  1047,   398, 
-	  567,   723,   892,  1048,   412,   581,   906,  1037, 
-	 1033,  1202,   735,  1060,  1216,   736,  1061,  1217, 
-	 1231,   366,   379,   535,   548,   704,   716,   729, 
-	  872,   873,  1029,  1041,  1198,   536,   705,   717, 
-	  368,   380,   392,   537,   549,   561,   706,   718, 
-	  874,   886,  1032,  1042,  1200,   730,   369,   381, 
-	  393,   538,   550,   562,   574,   719,   731,   875, 
-	  887,   899,  1043,  1055,   743,  1211,   382,   394, 
-	  406,   418,   551,   563,   575,   587,   707,   732, 
-	  744,   876,   888,   900,   912,  1044,  1056,  1068, 
-	 1212,  1210,  1223,  1201,  1224,   720,   756,   901, 
-	  913,  1045,  1057,  1069,  1081,  1213,  1225,  1237, 
-	  368,   369,   380,   381,   393,   536,   537,   538, 
-	  549,   550,   562,   705,   706,   707,   718,   719, 
-	  874,   875,   887,  1032,  1033,  1043,  1201,   370, 
-	  382,   394,   539,   551,   563,   708,   720,   865, 
-	  876,   888,  1034,  1044,  1202,   406,   575,   731, 
-	  732,   900,  1056,   371,   383,   395,   407,   540, 
-	  552,   564,   576,   721,   733,   877,   889,   901, 
-	 1045,  1057,   419,   588,   744,   745,   913,  1069, 
-	 1213,   384,   396,   408,   420,   553,   565,   577, 
-	  589,   709,   734,   746,   878,   890,   902,   914, 
-	 1046,  1058,  1070,  1214,  1212,  1203,  1225,  1226, 
-	  757,  1082,  1238,   722,   758,   903,   915,  1047, 
-	 1059,  1071,  1083,  1215,  1227,  1239,   370,   371, 
-	  382,   383,   395,   538,   539,   540,   551,   552, 
-	  564,   707,   708,   709,   720,   721,   865,   876, 
-	  877,   889,  1034,  1045,  1203,   384,   396,   553, 
-	  565,   697,   722,   866,   878,   890,  1035,  1046, 
-	  372,   385,   397,   409,   410,   541,   554,   566, 
-	  578,   698,   710,   734,   735,   867,   879,   891, 
-	  903,  1047,  1059,  1060,  1216,   408,   577,   733, 
-	  902,  1058,   579,   723,   904,   421,   590,   746, 
-	  747,   915,  1071,  1215,   422,   591,   748,   916, 
-	 1072,   398,   423,   567,   592,   736,   892,   917, 
-	 1048,  1073,  1214,  1228,  1229,  1227,   759,  1084, 
-	 1240,   760,  1085,  1241,   761,   905,  1061,  1086, 
-	 1217,  1242,   380,   392,   393,   536,   548,   549, 
-	  561,   562,   574,   704,   705,   717,   718,   730, 
-	  743,   873,   874,   886,   887,   899,  1042,  1043, 
-	 1055,  1211,   381,   394,   406,   418,   537,   550, 
-	  563,   575,   587,   706,   719,   731,   744,   756, 
-	  875,   888,   900,   912,  1044,  1056,  1068,  1212, 
-	 1224,   382,   395,   407,   419,   538,   551,   564, 
-	  576,   588,   600,   707,   720,   732,   745,   757, 
-	  876,   889,   901,   913,   925,  1045,  1057,  1069, 
-	 1081,  1213,  1225,   769,  1237,   408,   420,   432, 
-	  577,   589,   601,   733,   758,   770,   902,   914, 
-	  926,   938,  1058,  1070,  1082,  1094,  1226,  1238, 
-	 1214,  1250,   746,   927,   939,  1071,  1083,  1095, 
-	 1107,  1227,  1239,  1251,  1263,   383,   395,   396, 
-	  407,   408,   419,   420,   432,   539,   551,   552, 
-	  563,   564,   565,   575,   576,   577,   588,   589, 
-	  601,   707,   708,   719,   720,   721,   732,   733, 
-	  744,   745,   746,   757,   758,   876,   877,   888, 
-	  889,   890,   900,   901,   902,   913,   914,   926, 
-	 1045,  1046,  1057,  1058,  1069,  1070,  1082,  1214, 
-	 1226,   384,   397,   409,   421,   433,   540,   553, 
-	  566,   578,   590,   602,   709,   722,   734,   747, 
-	  759,   878,   891,   903,   915,   927,  1047,  1059, 
-	 1071,  1083,  1215,  1227,   770,   771,   939,  1095, 
-	 1239,   410,   422,   434,   579,   591,   603,   735, 
-	  760,   772,   904,   916,   928,   940,  1060,  1072, 
-	 1084,  1096,  1228,  1240,  1238,  1251,  1216,  1252, 
-	 1108,  1264,   748,   929,   941,  1073,  1085,  1097, 
-	 1109,  1229,  1241,  1253,  1265,   397,   409,   410, 
-	  421,   422,   434,   553,   565,   566,   577,   578, 
-	  579,   590,   591,   603,   709,   721,   722,   734, 
-	  735,   746,   747,   748,   759,   760,   878,   890, 
-	  891,   902,   903,   904,   915,   916,   928,  1047, 
-	 1059,  1060,  1071,  1072,  1084,  1216,  1228,   385, 
-	  398,   423,   435,   541,   554,   567,   592,   604, 
-	  710,   723,   761,   879,   892,   917,   929,  1048, 
-	 1073,  1085,  1229,   411,   436,   580,   605,   736, 
-	  749,   905,   930,  1061,  1086,  1217,   772,   773, 
-	  941,  1097,  1241,   774,   942,  1098,  1242,   424, 
-	  593,   762,   918,   943,  1074,  1099,  1230,  1240, 
-	 1253,  1254,  1255,  1110,  1266,  1111,  1267,   931, 
-	 1087,  1112,  1243,  1268,   411,   424,   542,   567, 
-	  568,   580,   593,   723,   724,   736,   749,   762, 
-	  880,   892,   893,   905,   918,  1049,  1061,  1074, 
-	 1230,   412,   437,   581,   606,   750,   906,   931, 
-	 1087,   763,   919,  1075,  1231,   438,   543,   712, 
-	  881,   932,  1101,  1244,  1257,   775,  1243,   944, 
-	 1100,  1270,   426,  1283,  1256,  1113,  1269,   764, 
-	 1127,  1388,   450,   619,   788,   957,   463,  1126, 
-	 1295,  1282,  1139,  1115,  1399,  1413,  1412,  1425, 
-	 1438,  1581,  1451,   716,   729,   872,  1041,  1210, 
-	 1223,  1236,  1249,   379,   392,   418,   548,   561, 
-	  574,   704,   717,   730,   743,   873,   886,   899, 
-	 1042,  1055,  1068,  1106,  1211,  1224,  1262,  1405, 
-	  393,   406,   549,   562,   575,   587,   718,   731, 
-	  756,   874,   887,   900,   912,  1043,  1056,  1081, 
-	 1237,  1275,   950,   419,   588,   600,   744,   769, 
-	  913,   925,  1069,  1094,  1119,  1250,  1418,   432, 
-	  601,   757,   926,   938,  1082,  1107,  1263,  1288, 
-	 1212,  1225,  1238,   770,  1095,  1251,  1276,   406, 
-	  418,   419,   562,   574,   575,   587,   588,   600, 
-	  730,   731,   743,   744,   756,   769,   887,   899, 
-	  900,   912,   913,   925,  1056,  1068,  1069,  1081, 
-	 1237,   407,   420,   432,   563,   576,   589,   601, 
-	  732,   745,   757,   770,   888,   901,   914,   926, 
-	  938,  1057,  1070,  1082,  1094,  1238,  1250,   408, 
-	  421,   433,   564,   577,   590,   602,   733,   746, 
-	  758,   771,   889,   902,   915,   927,   939,  1058, 
-	 1071,  1083,  1095,  1107,  1239,  1251,   782,  1263, 
-	  434,   603,   614,   759,   783,   928,   940,   951, 
-	 1084,  1096,  1108,  1252,  1264,  1276,   446,   615, 
-	  772,   784,   941,   952,  1097,  1109,  1120,  1265, 
-	 1277,  1225,  1226,  1227,  1240,  1253,   795,   953, 
-	 1110,  1121,  1266,  1278,  1289,   409,   421,   422, 
-	  433,   434,   565,   577,   578,   589,   590,   591, 
-	  601,   602,   603,   614,   733,   734,   745,   746, 
-	  747,   758,   759,   770,   771,   772,   890,   902, 
-	  903,   914,   915,   916,   926,   927,   928,   939, 
-	  940,  1059,  1071,  1072,  1083,  1084,  1095,  1096, 
-	 1108,  1240,  1252,   410,   423,   435,   446,   566, 
-	  579,   592,   604,   615,   735,   748,   760,   773, 
-	  891,   904,   917,   929,   941,  1060,  1073,  1085, 
-	 1097,  1109,  1241,  1253,   783,   784,   952,  1265, 
-	  436,   447,   605,   616,   761,   785,   930,   942, 
-	  953,  1086,  1098,  1110,  1254,  1266,  1121,  1278, 
-	  448,   459,   617,   628,   774,   786,   943,   954, 
-	 1099,  1111,  1122,  1267,  1279,  1228,  1264,  1277, 
-	 1229,  1242,  1255,   796,  1290,   797,   955,  1112, 
-	 1123,  1268,  1280,  1291,   423,   435,   436,   447, 
-	  579,   591,   592,   603,   604,   605,   616,   735, 
-	  747,   748,   760,   761,   772,   773,   774,   904, 
-	  916,   917,   928,   929,   930,   941,   942,  1073, 
-	 1085,  1086,  1097,  1098,  1110,  1242,  1254,   411, 
-	  424,   448,   567,   580,   593,   617,   736,   749, 
-	  892,   905,   918,   943,  1061,  1074,  1099,  1111, 
-	 1255,   437,   449,   606,   618,   762,   775,   931, 
-	 1087,  1112,  1243,   785,   786,   954,  1267,   787, 
-	  955,  1268,   944,   956,  1100,  1256,   460,   629, 
-	 1123,  1280,  1124,  1281,   450,   619,   631,   788, 
-	 1113,  1125,  1269,  1266,  1279,  1230,   798,  1292, 
-	  799,  1293,   800,   957,  1282,  1294,   729,  1106, 
-	 1223,  1236,  1249,  1262,  1275,  1405,  1418,   950, 
-	 1119,   432,   588,   600,   601,   756,   757,   769, 
-	  770,   782,   913,   925,   926,   938,   939,  1081, 
-	 1082,  1094,  1095,  1107,  1250,  1263,  1276,  1288, 
-	  614,   951,  1108,  1120,  1431,   783,   795,   952, 
-	 1289,   964,  1121,  1445,   796,  1251,  1264,  1277, 
-	 1432,  1290,  1134,  1419,  1459,  1420,  1433,  1446, 
-	 1601,  1122,  1135,  1291,  1460,  1588,  1602,  1447, 
-	 1304,  1616,   601,   614,   769,   770,   782,   926, 
-	  938,   939,   951,  1095,  1107,  1108,  1276,   446, 
-	  602,   615,   771,   783,   795,   927,   940,   952, 
-	 1096,  1109,  1120,  1277,   447,   603,   616,   772, 
-	  784,   796,   928,   941,   953,   964,  1097,  1110, 
-	 1121,  1278,  1289,   459,   628,   785,   797,   954, 
-	 1122,  1290,   460,   629,  1123,  1134,  1291,   798, 
-	 1135,  1304,   799,   955,   968,  1124,  1136,  1292, 
-	 1264,  1265,  1266,  1279,  1137,  1293,   447,   448, 
-	  459,   604,   615,   616,   617,   628,   772,   773, 
-	  784,   785,   796,   797,   929,   941,   942,   952, 
-	  953,   954,  1098,  1110,  1111,  1121,  1122,  1279, 
-	  449,   460,   605,   618,   629,   774,   786,   798, 
-	  930,   943,   955,  1099,  1112,  1123,  1280,  1134, 
-	 1291,   787,   799,   956,  1124,  1135,  1292,   631, 
-	  968,  1125,  1136,  1293,  1304,   800,   969,  1137, 
-	 1306,  1138,  1294,  1267,  1290,  1268,  1281,   950, 
-	 1119,  1288,   782,   795,   951,  1107,  1120,  1276, 
-	 1289,   614,   783,   952,   964,  1121,   796,  1134, 
-	 1290,  1445,   459,   628,   797,  1122,  1135,  1291, 
-	 1304,  1459,   629,   798,  1136,   799,   968,  1292, 
-	 1460,  1137,  1306,  1461,   631,   800,   969,  1138, 
-	 1293,  1462,  1630,  1463,  1476,  1632,   645,  1139, 
-	 1815,  1993,  1994,  1277,  1432,  1601,  1446,  1786, 
-	 1787,  1464,  1602,  1616,  1433,  1588,  1757,  1617, 
-	 1447,  1603,  1590,  1732,  1604,  1775,   343,   344, 
-	  345,   356,  1029,  1198,   357,   535,   536,   704, 
-	 1032,  1200,  1201,   366,   873,   705,  1033,   874, 
-	  706,   865,   875,  1202,   537,   718,   887,  1043, 
-	 1044,  1212,   538,   707,   719,   876,   888,  1034, 
-	 1045,  1203,  1213,  1056,  1057,  1214,  1371,   900, 
-	 1055,  1068,  1069,  1211,  1224,  1225,  1226,  1237, 
-	 1380,  1381,  1382,  1393,   345,   356,   357,  1032, 
-	 1033,  1200,  1201,   865,  1034,  1202,  1203,   697, 
-	  866,   540,   708,   709,   877,  1035,   707,   876, 
-	  878,   539,   720,   889,  1045,  1046,  1214,  1371, 
-	  371,   384,   552,   553,   565,   721,   722,   733, 
-	  734,   890,   891,   902,  1047,  1058,  1059,  1215, 
-	 1216,  1227,   903,  1060,  1071,  1228,  1383,  1384, 
-	  541,   710,   735,   867,   879,   904,  1048,  1072, 
-	 1229,  1385,  1057,  1070,  1213,  1226,  1239,  1382, 
-	 1395,  1240,  1396,  1073,  1217,  1241,  1397,   347, 
-	  697,   865,   866,  1033,  1034,  1035,  1202,  1203, 
-	  698,   867,   373,   542,   880,  1049,   541,   710, 
-	  568,   724,   893,  1037,   879,   723,   892,  1048, 
-	 1217,   906,  1231,   372,   385,   554,   722,   735, 
-	  878,   891,   904,  1047,  1060,  1216,  1229,   567, 
-	  736,  1061,   905,  1230,  1371,  1386,  1074,  1073, 
-	 1385,  1075,  1375,  1059,  1072,  1215,  1228,  1241, 
-	 1242,  1384,  1397,  1398,  1243,  1399,  1244,   919, 
-	  366,   379,   535,   536,   548,   704,   705,   717, 
-	  729,   873,   886,  1029,  1042,  1198,  1200,  1210, 
-	 1211,  1223,  1236,   874,  1043,  1055,   537,   549, 
-	  706,   718,   730,   875,   887,   899,  1032,  1044, 
-	 1056,  1201,  1212,  1224,   561,  1068,   550,   562, 
-	  707,   719,   731,   743,   876,   888,   900,   912, 
-	 1057,  1069,  1213,  1225,  1237,   574,  1081,  1380, 
-	  563,   575,   720,   732,   744,   756,   889,   901, 
-	  913,   925,  1045,  1070,  1082,  1214,  1226,  1238, 
-	 1250,  1381,  1393,  1058,  1094,  1239,  1251,  1382, 
-	 1394,  1406,  1249,  1405,  1549,  1227,  1263,  1383, 
-	 1395,  1407,  1419,  1550,   538,   550,   706,   707, 
-	  718,   719,   731,   874,   875,   876,   887,   888, 
-	  900,  1032,  1033,  1043,  1044,  1045,  1056,  1057, 
-	 1201,  1202,  1212,  1213,  1225,   539,   551,   708, 
-	  720,   732,   865,   877,   889,   901,  1034,  1046, 
-	 1058,  1203,  1214,  1226,  1371,   563,   744,   913, 
-	 1069,  1070,  1238,   552,   564,   709,   721,   733, 
-	  745,   878,   890,   902,   914,  1059,  1071,  1215, 
-	 1227,  1239,   576,   757,   926,  1082,  1083,  1251, 
-	 1382,   565,   577,   722,   734,   746,   758,   891, 
-	  903,   915,   927,  1047,  1072,  1084,  1216,  1228, 
-	 1240,  1252,  1383,  1381,  1394,  1395,  1095,  1407, 
-	 1060,  1096,  1241,  1253,  1384,  1396,  1408,  1264, 
-	 1420,  1551,  1229,  1265,  1385,  1397,  1409,  1421, 
-	 1552,   540,   552,   708,   709,   720,   721,   733, 
-	  876,   877,   878,   889,   890,   902,  1034,  1045, 
-	 1046,  1047,  1058,  1059,  1203,  1214,  1215,  1227, 
-	  553,   722,   734,   866,   891,   903,  1035,  1060, 
-	 1216,  1228,   372,   385,   541,   554,   566,   579, 
-	  698,   710,   723,   735,   747,   748,   867,   879, 
-	  892,   904,   916,  1048,  1072,  1073,  1217,  1229, 
-	 1241,  1385,   565,   746,   915,  1071,  1240,   917, 
-	 1061,  1242,   578,   759,   928,  1084,  1085,  1253, 
-	 1384,   760,   929,  1086,  1254,   567,   736,   761, 
-	  905,   930,  1074,  1230,  1255,  1383,  1397,  1398, 
-	 1396,  1097,  1409,  1098,  1410,  1099,  1243,  1386, 
-	 1411,  1266,  1422,  1267,  1423,  1268,  1399,  1424, 
-	  554,   710,   723,   867,   879,   892,  1048,  1061, 
-	 1217,   373,   542,   567,   580,   724,   736,   749, 
-	  880,   893,   905,  1049,  1074,  1230,  1386,   568, 
-	  581,   750,   906,  1037,  1075,  1231,   543,   712, 
-	  919,  1244,  1375,   918,  1243,   763,   881,   932, 
-	 1101,  1257,  1413,  1087,   762,   931,  1256,  1270, 
-	 1399,  1100,  1412,  1283,  1388,  1555,  1269,  1425, 
-	 1581,  1113,  1282,  1438,  1451,  1464,  1580,  1593, 
-	 1762,  1632,  1775,  1295,  1127,   716,   729,   872, 
-	 1041,  1210,  1223,  1366,  1236,  1249,   548,   561, 
-	  574,   704,   705,   717,   718,   730,   743,   873, 
-	  874,   886,   887,   899,  1042,  1043,  1055,  1068, 
-	 1106,  1211,  1212,  1224,  1262,  1380,  1405,  1418, 
-	  587,   731,   756,   900,   912,  1056,  1081,  1225, 
-	 1237,  1275,  1393,  1431,   925,   950,  1069,  1250, 
-	 1381,  1406,  1549,  1094,  1119,  1238,  1394,  1562, 
-	 1263,  1288,  1419,  1550,  1575,  1407,  1432,  1588, 
-	 1601,  1732,   574,   718,   730,   731,   743,   874, 
-	  886,   887,   899,   900,   912,  1042,  1043,  1055, 
-	 1056,  1068,  1081,  1211,  1212,  1224,  1225,  1237, 
-	 1380,   575,   587,   719,   732,   744,   756,   875, 
-	  888,   901,   913,   925,  1044,  1057,  1069,  1082, 
-	 1094,  1213,  1226,  1238,  1250,  1381,  1393,   576, 
-	  588,   720,   733,   745,   757,   769,   876,   889, 
-	  902,   914,   926,   938,  1045,  1058,  1070,  1083, 
-	 1095,  1214,  1227,  1239,  1251,  1263,  1382,  1394, 
-	  600,  1107,  1406,   589,   601,   746,   758,   770, 
-	  915,   927,   939,  1071,  1096,  1108,  1240,  1252, 
-	 1264,  1276,  1395,  1407,  1383,  1419,  1084,  1265, 
-	 1277,  1396,  1408,  1420,  1432,  1549,  1550,  1562, 
-	 1551,  1575,  1253,  1409,  1421,  1433,  1445,  1564, 
-	  577,   589,   721,   733,   734,   745,   746,   757, 
-	  758,   770,   877,   889,   890,   901,   902,   903, 
-	  913,   914,   915,   926,   927,   939,  1045,  1046, 
-	 1057,  1058,  1059,  1070,  1071,  1082,  1083,  1084, 
-	 1095,  1096,  1214,  1215,  1226,  1227,  1228,  1238, 
-	 1239,  1240,  1251,  1252,  1264,  1383,  1395,   578, 
-	  590,   722,   735,   747,   759,   771,   878,   891, 
-	  904,   916,   928,   940,  1047,  1060,  1072,  1085, 
-	 1097,  1216,  1229,  1241,  1253,  1265,  1384,  1396, 
-	  602,  1108,  1109,  1277,  1408,   591,   603,   748, 
-	  760,   772,   917,   929,   941,  1073,  1098,  1110, 
-	 1242,  1254,  1266,  1278,  1397,  1409,  1407,  1420, 
-	 1385,  1421,  1433,  1086,  1267,  1279,  1398,  1410, 
-	 1422,  1434,  1552,  1564,  1565,  1446,  1577,  1255, 
-	 1411,  1423,  1435,  1447,  1578,   579,   591,   735, 
-	  747,   748,   759,   760,   772,   891,   903,   904, 
-	  915,   916,   917,   928,   929,   941,  1047,  1059, 
-	 1060,  1072,  1073,  1084,  1085,  1086,  1097,  1098, 
-	 1216,  1228,  1229,  1240,  1241,  1242,  1253,  1254, 
-	 1266,  1385,  1397,   592,   723,   736,   761,   773, 
-	  879,   892,   905,   930,   942,  1048,  1061,  1099, 
-	 1217,  1230,  1255,  1267,  1398,   580,   749,   774, 
-	  918,   943,  1074,  1087,  1243,  1268,  1386,   604, 
-	 1110,  1111,  1279,  1410,   605,  1112,  1280,  1411, 
-	  593,   762,   931,  1100,  1256,  1281,  1399,  1409, 
-	 1422,  1423,  1424,  1435,  1436,  1269,  1412,  1437, 
-	 1567,  1555,  1448,  1449,  1580,  1425,  1450,   426, 
-	  764,   881,  1388,  1115,   713,  1453,  1127,   716, 
-	  729,   872,  1041,  1210,  1223,  1236,  1249,  1405, 
-	 1106,  1262,  1275,  1418,   574,   587,   600,   730, 
-	  731,   743,   744,   756,   769,   887,   899,   900, 
-	  912,   913,   925,   950,  1055,  1056,  1068,  1069, 
-	 1081,  1094,  1119,  1212,  1224,  1225,  1237,  1238, 
-	 1250,  1380,  1393,  1406,  1431,   757,   926,   938, 
-	 1082,  1107,  1251,  1263,  1288,  1419,   770,   782, 
-	  939,  1095,  1264,  1276,  1432,  1381,  1394,  1407, 
-	  951,  1108,  1420,  1445,  1549,  1562,  1575,  1588, 
-	 1120,  1277,  1433,  1601,   600,   744,   756,   757, 
-	  769,   900,   912,   913,   925,   926,   938,  1068, 
-	 1069,  1081,  1082,  1094,  1107,  1225,  1237,  1238, 
-	 1250,  1251,  1263,  1406,   601,   745,   758,   770, 
-	  901,   914,   927,   939,  1070,  1083,  1095,  1108, 
-	 1226,  1239,  1252,  1264,  1276,  1407,  1419,   602, 
-	  746,   759,   771,   782,   902,   915,   928,   940, 
-	  951,  1071,  1084,  1096,  1109,  1227,  1240,  1253, 
-	 1265,  1277,  1408,  1420,  1120,  1432,   614,   772, 
-	  783,   941,   952,  1097,  1121,  1266,  1278,  1289, 
-	 1421,  1433,  1445,   615,   784,   795,   953,   964, 
-	 1110,  1122,  1279,  1290,  1434,  1446,  1394,  1395, 
-	 1396,  1409,  1422,  1291,  1435,  1447,  1575,  1588, 
-	 1577,  1601,  1590,  1602,  1448,  1459,  1603,   603, 
-	  747,   759,   760,   771,   772,   783,   903,   915, 
-	  916,   927,   928,   929,   939,   940,   941,   952, 
-	 1071,  1072,  1083,  1084,  1085,  1096,  1097,  1108, 
-	 1109,  1110,  1228,  1240,  1241,  1252,  1253,  1254, 
-	 1264,  1265,  1266,  1277,  1278,  1409,  1421,   604, 
-	  748,   761,   773,   784,   904,   917,   930,   942, 
-	  953,  1073,  1086,  1098,  1111,  1229,  1242,  1255, 
-	 1267,  1279,  1410,  1422,   615,  1121,  1122,  1290, 
-	 1434,   616,   774,   785,   943,   954,  1099,  1123, 
-	 1268,  1280,  1291,  1423,  1435,   796,  1447,   617, 
-	  786,   797,   955,  1112,  1124,  1281,  1292,  1436, 
-	 1448,  1397,  1433,  1446,  1398,  1411,  1424,  1134, 
-	 1459,  1135,  1293,  1437,  1449,  1460,  1578,  1590, 
-	 1591,  1603,  1604,  1616,  1304,  1450,  1461,  1605, 
-	 1617,   605,   761,   773,   774,   785,   917,   929, 
-	  930,   941,   942,   943,   954,  1073,  1085,  1086, 
-	 1098,  1099,  1110,  1111,  1112,  1242,  1254,  1255, 
-	 1266,  1267,  1268,  1279,  1280,  1411,  1423,   749, 
-	  762,   786,   905,   918,   931,   955,  1074,  1087, 
-	 1230,  1243,  1256,  1281,  1424,   606,   775,   787, 
-	  944,   956,  1100,  1113,  1269,  1412,   617,  1123, 
-	 1124,  1292,  1436,   618,  1125,  1293,  1437,  1282, 
-	 1294,  1425,   798,  1449,   799,   968,  1450,   619, 
-	  788,   800,   957,   969,  1126,  1438,  1435,  1448, 
-	 1399,  1136,  1461,  1137,  1462,  1138,  1295,  1451, 
-	 1463,  1580,  1593,  1581,  1605,  1306,   782,   783, 
-	  939,   951,   952,  1107,  1108,  1120,  1264,  1276, 
-	 1277,  1289,  1445,   784,   795,   940,   953,   964, 
-	 1109,  1121,  1265,  1278,  1290,  1446,   785,   796, 
-	  941,   954,  1110,  1122,  1134,  1266,  1279,  1291, 
-	 1447,   628,   797,  1123,  1135,  1292,  1459,   798, 
-	 1304,  1460,  1136,   799,   968,  1137,  1293,  1306, 
-	 1461,  1433,  1434,  1435,  1448,  1462,  1630,  1616, 
-	 1602,  1138,  1294,  1463,   628,   785,   786,   796, 
-	  797,   942,   953,   954,   955,  1110,  1111,  1122, 
-	 1123,  1134,  1135,  1267,  1279,  1280,  1290,  1291, 
-	 1292,  1448,   629,   787,   798,   943,   956,  1112, 
-	 1124,  1136,  1268,  1281,  1293,  1304,  1449,  1460, 
-	  799,   968,  1125,  1137,  1294,  1461,   800,   969, 
-	 1306,  1462,  1138,  1463,  1476,  1436,  1459,  1437, 
-	 1450,  1630,  1632,  1617,  1139,   645,  1464,  1815, 
-	 1993,  1994,  1605,  1787,  1786,  1762,  1775,   787, 
-	  798,   799,   955,   956,   968,  1112,  1124,  1125, 
-	 1136,  1137,  1281,  1292,  1293,  1294,  1450,   631, 
-	  788,   800,   944,   957,   969,  1113,  1138,  1269, 
-	 1282,  1306,  1126,  1295,  1451,  1462,  1463,  1139, 
-	 1464,  1476,   645,  1127,  1461,  1438,  1632,   196, 
-	 1366,  1029,  1041,  1198,  1210,   872,  1223,  1236, 
-	  873,  1042,  1211,  1249,  1405,  1380,  1418,  1200, 
-	 1549,  1381,  1393,  1431,  1562,  1550,  1575,  1406, 
-	 1551,  1732,  1588,  1757,  1262,  1275,  1032,  1201, 
-	 1043,  1212,  1224,  1371,  1382,  1394,  1395,  1407, 
-	 1552,  1564,  1786,  1762,  1775,  1787,  1202,  1383, 
-	 1384,  1396,  1565,  1577,  1578,  1590,  1591,  1567, 
-	 1603,  1604,  1580,  1616,  1029,  1198,  1366,   872, 
-	 1041,  1210,  1200,  1032,  1042,  1201,  1211,  1223, 
-	  704,   873,  1380,   874,  1043,  1055,  1212,  1224, 
-	  717,   886,  1236,  1249,  1405,   875,   887,  1044, 
-	 1056,  1068,  1202,  1213,  1225,  1237,  1381,  1393, 
-	 1549,  1418,  1371,  1382,  1394,  1550,  1406,  1562, 
-	 1551,  1575,  1033,  1034,  1203,   876,   888,  1045, 
-	 1057,  1069,  1214,  1226,  1238,  1383,  1395,  1046, 
-	 1058,  1215,  1227,  1239,  1384,  1396,  1407,  1552, 
-	 1408,  1564,  1565,  1577,  1032,  1033,  1200,  1201, 
-	 1202,  1371,   865,  1034,  1203,   697,   866,  1035, 
-	 1046,  1215,  1214,   878,  1047,  1059,  1216,  1228, 
-	 1384,   709,   877,   890,  1045,  1058,  1071,  1227, 
-	 1240,  1383,  1385,  1396,  1552,   891,  1060,  1072, 
-	 1229,  1241,  1397,  1226,  1239,  1382,  1395,  1551, 
-	  879,  1048,  1073,  1217,  1242,  1398,  1408,  1564, 
-	 1409,  1565,  1386,  1410,  1411,  1423,  1555,  1567, 
-	 1550,  1577,  1578,  1422,  1580,  1590,  1591,   697, 
-	  866,  1034,  1035,  1203,  1371,   698,   867,   879, 
-	 1048,  1217,   373,   542,   723,   724,   880,   892, 
-	  893,   905,  1037,  1049,  1061,  1074,  1230,  1231, 
-	 1386,  1399,  1047,  1216,   710,  1060,  1229,  1385, 
-	  736,  1243,  1555,   878,   891,  1215,  1228,  1384, 
-	 1073,  1242,  1398,   906,  1075,  1375,   904,  1241, 
-	 1397,  1244,  1412,  1087,  1256,  1410,  1411,  1567, 
-	 1425,  1581,   919,  1257,  1413,  1046,  1383,  1552, 
-	 1059,  1396,  1565,  1438,  1227,  1409,  1551,  1580, 
-	 1388,  1578,  1270,  1366,  1041,  1210,   872,  1223, 
-	 1198,  1236,   873,  1042,  1211,  1249,  1405,  1055, 
-	 1224,  1262,  1380,  1418,   716,  1068,  1106,  1212, 
-	 1237,  1275,  1393,  1431,  1549,  1381,  1406,  1562, 
-	 1550,  1575,  1419,  1588,  1551,  1732,  1432,  1564, 
-	 1601,  1757,  1288,  1786,  1762,  1787,  1445,  1775, 
-	 1602,  1119,  1616,  1617,  1993,  1081,  1094,  1107, 
-	 1238,  1250,  1251,  1263,  1276,  1394,  1407,   950, 
-	 1264,  1420,  1120,  1277,  1289,  1433,  1446,   873, 
-	  886,  1042,  1043,  1055,  1200,  1211,  1212,  1224, 
-	 1236,  1249,  1380,  1405,  1381,  1393,  1044,  1056, 
-	 1213,  1225,  1237,  1382,  1394,  1549,  1068,  1406, 
-	 1057,  1069,  1214,  1226,  1238,  1250,  1395,  1407, 
-	 1550,  1562,  1081,  1419,  1070,  1082,  1227,  1239, 
-	 1251,  1263,  1383,  1408,  1420,  1551,  1575,  1418, 
-	 1396,  1432,  1552,  1564,  1588,  1577,  1565,  1601, 
-	 1732,  1421,  1433,  1578,  1590,  1602,  1757,  1045, 
-	 1057,  1213,  1214,  1225,  1226,  1238,  1371,  1381, 
-	 1382,  1383,  1394,  1395,  1550,  1046,  1058,  1215, 
-	 1227,  1239,  1384,  1396,  1551,  1070,  1251,  1407, 
-	 1408,  1059,  1071,  1216,  1228,  1240,  1252,  1397, 
-	 1409,  1552,  1564,  1083,  1264,  1420,  1421,  1072, 
-	 1084,  1229,  1241,  1253,  1265,  1385,  1410,  1422, 
-	 1565,  1577,  1433,  1398,  1434,  1578,  1590,  1591, 
-	 1602,  1567,  1603,  1575,  1588,  1732,  1601,  1757, 
-	 1423,  1435,  1580,  1604,  1616,  1047,  1059,  1215, 
-	 1216,  1227,  1228,  1240,  1383,  1384,  1385,  1396, 
-	 1397,  1552,  1060,  1229,  1241,  1398,   879,   892, 
-	 1048,  1061,  1073,  1086,  1217,  1230,  1242,  1254, 
-	 1255,  1386,  1410,  1411,  1567,  1072,  1253,  1409, 
-	 1565,  1399,  1085,  1266,  1422,  1423,  1578,  1267, 
-	 1424,  1074,  1243,  1268,  1412,  1555,  1580,  1435, 
-	 1591,  1436,  1437,  1593,  1408,  1421,  1564,  1577, 
-	 1434,  1590,  1581,  1603,  1604,  1605,  1425,  1450, 
-	 1616,  1617,  1762,  1081,  1225,  1237,  1238,  1250, 
-	 1380,  1381,  1393,  1394,  1406,  1419,  1549,  1550, 
-	 1562,  1082,  1094,  1226,  1239,  1251,  1263,  1382, 
-	 1395,  1407,  1420,  1432,  1551,  1575,  1083,  1095, 
-	 1227,  1240,  1252,  1264,  1276,  1383,  1396,  1408, 
-	 1421,  1433,  1552,  1564,  1588,  1107,  1445,  1096, 
-	 1108,  1253,  1265,  1277,  1409,  1434,  1446,  1565, 
-	 1577,  1601,  1422,  1578,  1590,  1602,  1603,  1732, 
-	 1591,  1757,  1447,  1604,  1616,  1084,  1096,  1228, 
-	 1240,  1241,  1252,  1253,  1264,  1265,  1277,  1383, 
-	 1384,  1395,  1396,  1397,  1408,  1409,  1420,  1421, 
-	 1422,  1433,  1434,  1552,  1564,  1565,  1577,  1085, 
-	 1097,  1229,  1242,  1254,  1266,  1278,  1385,  1398, 
-	 1410,  1423,  1435,  1578,  1590,  1109,  1446,  1447, 
-	 1602,  1098,  1110,  1255,  1267,  1279,  1411,  1436, 
-	 1448,  1567,  1591,  1603,  1424,  1580,  1604,  1616, 
-	 1605,  1617,  1593,  1732,  1757,  1449,  1086,  1098, 
-	 1242,  1254,  1255,  1266,  1267,  1279,  1385,  1397, 
-	 1398,  1410,  1411,  1422,  1423,  1424,  1435,  1436, 
-	 1567,  1578,  1591,  1099,  1230,  1243,  1268,  1280, 
-	 1386,  1399,  1437,  1555,  1580,  1087,  1256,  1281, 
-	 1412,  1425,  1593,  1111,  1448,  1449,  1604,  1112, 
-	 1450,  1605,  1100,  1269,  1438,  1581,  1617,  1462, 
-	 1630,  1762,  1451,  1463,  1775,  1616,  1786,  1787, 
-	 1632,  1107,  1251,  1263,  1264,  1276,  1406,  1407, 
-	 1419,  1420,  1432,  1445,  1575,  1588,  1108,  1252, 
-	 1265,  1277,  1408,  1421,  1433,  1446,  1564,  1577, 
-	 1601,  1109,  1253,  1266,  1278,  1289,  1409,  1422, 
-	 1434,  1447,  1565,  1578,  1590,  1602,  1120,  1121, 
-	 1279,  1290,  1435,  1459,  1591,  1603,  1122,  1291, 
-	 1448,  1460,  1604,  1616,  1617,  1757,  1732,  1461, 
-	 1605,  1630,  1786,  1110,  1254,  1266,  1267,  1278, 
-	 1279,  1290,  1409,  1410,  1421,  1422,  1423,  1434, 
-	 1435,  1446,  1447,  1448,  1578,  1590,  1591,  1602, 
-	 1603,  1111,  1255,  1268,  1280,  1291,  1411,  1424, 
-	 1436,  1449,  1567,  1580,  1604,  1616,  1122,  1459, 
-	 1460,  1123,  1281,  1292,  1437,  1461,  1593,  1605, 
-	 1617,  1124,  1293,  1304,  1450,  1462,  1630,  1762, 
-	 1786,  1775,  1787,  1632,  1112,  1268,  1280,  1281, 
-	 1292,  1411,  1423,  1424,  1436,  1437,  1448,  1449, 
-	 1450,  1580,  1593,  1604,  1605,  1617,  1256,  1269, 
-	 1293,  1412,  1425,  1581,  1113,  1282,  1294,  1438, 
-	 1451,  1124,  1461,  1462,  1125,  1463,  1630,  1306, 
-	 1126,  1295,  1464,  1632,  1476,  1762,  1413,  1775, 
-	 1787,  1786,   950,  1106,  1119,  1262,  1275,  1288, 
-	 1418,  1431,   951,  1107,  1120,  1263,  1264,  1276, 
-	 1277,  1289,  1419,  1420,  1432,  1433,  1445,  1575, 
-	 1588,  1601,  1446,  1602,   964,  1121,  1290,  1459, 
-	  795,  1134,  1291,  1447,  1603,  1616,   796,  1460, 
-	 1757,   952,  1135,  1304,  1461,  1278,  1434,  1590, 
-	 1292,  1617,  1630,  1562,  1604,  1136,  1786,  1732, 
-	 1448,  1591,  1605,  1787,  1293,  1462,  1137,  1306, 
-	  968,  1138,  1294,  1463,  1476,  1632,  1449,  1775, 
-	 1762,  1137,  1294,  1306,  1450,  1462,  1463,  1630, 
-	 1138,  1295,  1451,  1476,  1632,  1464,  1139,  1127, 
-	  645,  1815,  1775,  1787,  1203,  1371,  1381,  1382, 
-	 1383,  1549,  1550,  1551,  1552,  1214,  1215,  1384, 
-	 1395,  1396,  1564,  1565,  1035,  1216,  1228,  1385, 
-	 1397,  1409,  1577,  1394,  1562,  1229,  1398,  1410, 
-	 1567,  1578,  1217,  1386,  1411,  1422,  1423,  1555, 
-	 1580,  1590,  1591,  1732,  1399,  1593,  1575,  1602, 
-	 1603,  1757,  1604,  1605,  1616,  1581,  1762,  1424, 
-	 1617,  1786,  1775,  1787,  1408,  1588,  1601,  1434, 
-	 1435,  1436,  1448,  1412,  1425,  1437,  1449,  1815, 
-	 1993,  1994,  1216,  1217,  1228,  1229,  1383,  1384, 
-	 1385,  1386,  1396,  1397,  1398,  1409,  1410,  1552, 
-	 1564,  1565,  1567,  1578,  1048,  1230,  1242,  1399, 
-	 1411,  1555,  1580,  1412,  1037,  1049,  1231,  1375, 
-	 1413,  1581,  1423,  1591,  1244,  1425,  1438,  1593, 
-	 1257,  1388,  1270,  1451,  1422,  1577,  1762,  1775, 
-	 1605,  1787,  1283,  1464,  1632,  1732,  1786,  1604, 
-	 1453,  1815,  1993,  1994,  1393,  1549,  1550,  1562, 
-	 1394,  1406,  1551,  1575,  1395,  1407,  1552,  1564, 
-	 1588,  1732,  1419,  1565,  1577,  1601,  1757,  1786, 
-	 1762,  1787,  1775,  1432,  1551,  1564,  1575,  1577, 
-	 1588,  1601,  1732,  1757,  1565,  1578,  1590,  1591, 
-	 1602,  1603,  1447,  1604,  1616,  1617,  1605,  1786, 
-	 1580,  1593,  1762,  1787,  1775,  1993,  1435,  1567, 
-	 1436,  1448,  1449,  1460,  1994,  1119,  1275,  1288, 
-	 1406,  1418,  1419,  1431,  1445,  1549,  1562,  1459, 
-	 1630,  1304,  1461,  1134,  1135,  1437,  1555,  1581, 
-	 1632,  1815,  1476,  1290,  1289,  1446,  1306,  1462, 
-	 1463, 
+	    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,     0,     0,    71,   142,   206,   206,   241, 
-	    0,     0,   329,   142,   206,   206,   241,     0, 
-	  359,   410,   142,   206,   206,   241,   463,   529, 
-	  608,   667,   206,   206,   241,   739,   825,   897, 
-	  667,   963,   963,  1021,  1151,   897,  1227,  1295, 
-	  963,   963,  1328,  1328,  1328,  1295,   963,   963, 
-	  963,   241,  1393,     0,    71,   142,   206,   206, 
-	 1393,     0,  1453,  1533,  1618,   206,   206,  1687, 
-	 1755,  1838,  1938,   667,   206,   206,  2025,  2089, 
-	 2191,  2291,   667,   963,   206,  2376,  2466,  2557, 
-	 1227,  1295,   963,   963,  2620,  1328,  1328,  1295, 
-	  963,   963,   963,  1328,   963,   963,   963,   963, 
-	  963,   963,  1687,  1393,  1393,    71,  2692,   206, 
-	  206,  1687,  2745,  2824,  2926,  1618,   206,   206, 
-	 1687,  3026,  3133,  3253,  3356,   206,   206,  3427, 
-	 3503,  3613,  3732,  3356,   963,   963,  3830,  3898, 
-	 3966,  1227,  1295,   963,   963,  4031,  1328,  1328, 
-	 1295,   963,   963,   963,  1328,   963,   963,   963, 
-	  963,   963,   963,  1687,  1687,  4102,  4156,  4231, 
-	  206,   206,  1687,  4296,  4388,  4497,  4600,   206, 
-	  206,  4669,  4738,  4848,  4965,  3356,  5063,   206, 
-	 5071,  5148,  5255,  5369,   963,   206,   206,  3830, 
-	 5462,  5524,  5591,  1295,   206,   206,  4031,  5524, 
-	 1328,   963,   963,   963,   963,   963,   963,   963, 
-	  963,   963,   963,   963,  5631,  5692,  5692,  5764, 
-	 5831,   206,   206,  5907,  5975,  6039,  6109,  4600, 
-	  206,   206,  4669,  6179,  6245,  6310,   963,  5063, 
-	  206,  5907,  6369,  6427,  6484,   963,   206,   206, 
-	 6530,  6530,  5524,  6601,   963,   963,   963,  4031, 
-	 4031,   963,   963,   963,   963,   963,   963,   963, 
-	  963,   963,   963,   963,   963,  5631,  5631,  5631, 
-	 6620,  6690,   963,   963,  5907,  6748,  6620,  6620, 
-	  963,   963,   963,  5907,  6771,  6771,  6771,   963, 
-	  963,   963,  5907,  6771,  6771,  5524,   963,   963, 
-	  963,  6771,  6771,  5524,   963,   963,   963,   963, 
-	 6771,  4031,   963,   963,   963,   963,   963,   963, 
-	  963,   963,   963,   963,   963,   963,  5631,  5907, 
-	 6620,  6620,  5524,   963,   963,  5907,  6620,  5524, 
-	 5524,   963,   963,   963,  6620,  5524,  5524,   963, 
-	  963,   963,   963,  6620,  5524,   963,   963,   963, 
-	  963,   963,  6620,   963,   963,   963,   963,   963, 
-	  963,   963,   963,   963,   963,   963,   963,   963, 
-	  963,   963,   963,   963,   963,   963,   963, 
+	    0,     4,     8,    12,    16,    20,    24,    28, 
+	   32,    36,    40,    44,    48,    52,    52, 
 };
 
 static long _vq_fitlength_lsp12_0[] = {
-	   71,    71,    71,    71,    64,    35,    35,    88, 
-	   71,    71,    30,    64,    35,    35,    88,    71, 
-	   51,    53,    64,    35,    35,    88,    66,    79, 
-	   59,    72,    35,    35,    88,    86,    72,    66, 
-	   72,    58,    58,   130,    76,    66,    68,    33, 
-	   58,    58,    65,    65,    65,    33,    58,    58, 
-	   58,    88,    60,    71,    71,    64,    35,    35, 
-	   60,    71,    80,    85,    69,    35,    35,    68, 
-	   83,   100,    87,    72,    35,    35,    64,   102, 
-	  100,    85,    72,    58,    35,    90,    91,    63, 
-	   68,    33,    58,    58,    72,    65,    65,    33, 
-	   58,    58,    58,    65,    58,    58,    58,    58, 
-	   58,    58,    68,    60,    60,    71,    53,    35, 
-	   35,    68,    79,   102,   100,    69,    35,    35, 
-	   68,   107,   120,   103,    71,    35,    35,    76, 
-	  110,   119,    98,    71,    58,    58,    68,    68, 
-	   65,    68,    33,    58,    58,    71,    65,    65, 
-	   33,    58,    58,    58,    65,    58,    58,    58, 
-	   58,    58,    58,    68,    68,    54,    75,    65, 
-	   35,    35,    68,    92,   109,   103,    69,    35, 
-	   35,    69,   110,   117,    98,    71,     8,    35, 
-	   77,   107,   114,    93,    58,    35,    35,    68, 
-	   62,    67,    40,    33,    35,    35,    71,    67, 
-	   65,    58,    58,    58,    58,    58,    58,    58, 
-	   58,    58,    58,    58,    61,    72,    72,    67, 
-	   76,    35,    35,    68,    64,    70,    70,    69, 
-	   35,    35,    69,    66,    65,    59,    58,     8, 
-	   35,    68,    58,    57,    46,    58,    35,    35, 
-	   71,    71,    67,    19,    58,    58,    58,    71, 
-	   71,    58,    58,    58,    58,    58,    58,    58, 
-	   58,    58,    58,    58,    58,    61,    61,    61, 
-	   70,    58,    58,    58,    68,    23,    70,    70, 
-	   58,    58,    58,    68,    62,    62,    62,    58, 
-	   58,    58,    68,    62,    62,    67,    58,    58, 
-	   58,    62,    62,    67,    58,    58,    58,    58, 
-	   62,    71,    58,    58,    58,    58,    58,    58, 
-	   58,    58,    58,    58,    58,    58,    61,    68, 
-	   70,    70,    67,    58,    58,    68,    70,    67, 
-	   67,    58,    58,    58,    70,    67,    67,    58, 
-	   58,    58,    58,    70,    67,    58,    58,    58, 
-	   58,    58,    70,    58,    58,    58,    58,    58, 
-	   58,    58,    58,    58,    58,    58,    58,    58, 
-	   58,    58,    58,    58,    58,    58,    58, 
+	    4,     4,     4,     4,     4,     4,     4,     4, 
+	    4,     4,     4,     4,     4,     4,     4, 
 };
 
 static encode_aux_pigeonhole _vq_auxp_lsp12_0 = {
-	0.15, 0.01, 40, 7,
+	0.06, 0.002, 405, 15,
         _vq_pigeonmap_lsp12_0,
-	6833,
+	56,
         _vq_fitlist_lsp12_0,
         _vq_fitmap_lsp12_0,
         _vq_fitlength_lsp12_0
 };
 
 static static_codebook _vq_book_lsp12_0 = {
-	3, 2197,
+	1, 43,
         _vq_lengthlist_lsp12_0,
-	1, 1605579571, 1597274849, 6, 1,
+	1, 1602140242, 1592812110, 9, 1,
         _vq_quantlist_lsp12_0,
         NULL,
         NULL,
         &_vq_auxp_lsp12_0,
+	0
 };
 
 

1.3       +311 -2009 vorbis/lib/books/lsp30_0.vqh

Index: lsp30_0.vqh
===================================================================
RCS file: /usr/local/cvsroot/vorbis/lib/books/lsp30_0.vqh,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- lsp30_0.vqh	2000/11/06 00:07:11	1.2
+++ lsp30_0.vqh	2001/01/22 01:38:30	1.3
@@ -5,9 +5,8 @@
  * 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-2000             *
- * by Monty <monty at xiph.org> and the XIPHOPHORUS Company            *
- * http://www.xiph.org/                                             *
+ * THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2001             *
+ * by the XIPHOPHORUS Company, http://www.xiph.org/                 *
  *                                                                  *
  ********************************************************************
 
@@ -21,2052 +20,355 @@
 
 static long _vq_quantlist_lsp30_0[] = {
         0,
-	5,
+	2,
+	4,
         6,
-	7,
         8,
-	9,
         10,
         12,
         14,
         16,
         18,
+	20,
         22,
+	24,
         26,
-	30,
+	28,
+	31,
+	35,
+	39,
+	43,
+	47,
+	51,
+	55,
+	63,
+	73,
+	83,
+	93,
 };
 
 static long _vq_lengthlist_lsp30_0[] = {
-	 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-	 0, 0, 0,20,18,16,15,17,18, 0, 0, 0, 0, 0, 0, 0,
-	19,17,15,14,16,19,20, 0, 0, 0, 0, 0, 0, 0,20,16,
-	15,16,16, 0, 0, 0, 0, 0, 0, 0, 0,20, 0,20,16,19,
-	18, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,20,17,18,
-	 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,18,17, 0, 0,
-	 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,20,18, 0,20, 0, 0,
-	 0, 0, 0, 0, 0, 0, 0,19, 0,18, 0,20, 0,20, 0, 0,
-	 0, 0, 0, 0, 0, 0, 0,19, 0, 0, 0, 0, 0, 0, 0, 0,
-	 0, 0, 0, 0,19, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-	 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-	 0, 0,20, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-	20,20, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,19,
-	 0, 0, 0, 0, 0,19,16,14,13,13,15,18,20,20, 0, 0,
-	 0, 0, 0, 0, 0, 0,16,16,16,19,19, 0, 0, 0, 0, 0,
-	 0, 0, 0, 0, 0,17,17,20, 0, 0, 0, 0, 0, 0, 0, 0,
-	 0, 0, 0,17,17,19, 0,19,17,20, 0, 0, 0, 0, 0, 0,
-	 0,17,16,17, 0,14,17, 0, 0, 0, 0, 0, 0, 0, 0,16,
-	18,18,17,14,20, 0, 0, 0, 0, 0, 0,20,19,16,18,16,
-	14,13,19, 0, 0, 0, 0, 0, 0, 0,20,18,16,15,15,15,
-	20,20, 0, 0, 0, 0, 0, 0,18,16,16,18,18,18,17, 0,
-	 0, 0, 0, 0,20, 0,17,18,18,20,17,18,18, 0, 0, 0,
-	 0, 0, 0,19,19,17,15,15,16,18,20, 0, 0, 0, 0, 0,
-	 0, 0,20,17,19, 0, 0,20, 0, 0, 0, 0, 0, 0, 0, 0,
-	 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-	20,19, 0,20, 0, 0, 0, 0,19,17,15,15,14,14,17,18,
-	 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,20,17, 0, 0, 0, 0,
-	 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,17, 0, 0, 0,18, 0,
-	 0, 0, 0, 0, 0, 0, 0,18,15,18,20,18,20, 0, 0, 0,
-	 0, 0, 0, 0, 0,14,18,18, 0,20,18, 0, 0, 0, 0, 0,
-	 0, 0, 0,14,17,19,18,15,20, 0, 0, 0, 0, 0, 0,19,
-	18,17,16,18,16,15, 0,20, 0, 0, 0, 0, 0, 0,19,16,
-	16,15,15,15,19,20, 0, 0, 0, 0, 0, 0,20,18,17,15,
-	15,15,17,18, 0, 0,20,17,18, 0,17,18,18,17,14,16,
-	18,19, 0, 0, 0, 0, 0,17,17,16,14,15,15,18,20, 0,
-	 0, 0, 0, 0, 0, 0,19,19,18,17,20, 0, 0, 0, 0, 0,
-	 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-	 0, 0,20,15,17,18,18,20,20, 0, 0, 0, 0,16,15,16,
-	14,15,16,18,19,20,18, 0, 0, 0, 0, 0, 0, 0, 0,18,
-	18, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,19,16,20,
-	19,19,20, 0, 0, 0, 0, 0, 0, 0,18,15,16, 0,19,20,
-	18, 0, 0, 0, 0, 0,19,18,16,15,17,18,18,17, 0, 0,
-	 0, 0, 0, 0, 0,20,17,18,18,17, 0,16,20, 0, 0, 0,
-	 0, 0, 0,20,17,14,15,17,16,15,20,20, 0, 0, 0, 0,
-	 0, 0,19,17,15,13,13,14,17,17, 0, 0, 0, 0,19, 0,
-	 0,17,17,14,13,14,17,20, 0, 0,20,19, 0,20, 0,18,
-	17,14,13,15,15,20, 0, 0, 0, 0,20,18,16,16,14,14,
-	13,19,20, 0, 0, 0, 0, 0, 0, 0, 0,17,16,14,18,18,
-	 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,20,
-	 0, 0, 0, 0, 0,17,15,14,15,16,17,19,20, 0, 0, 0,
-	 0,20,19,15,14,15,16,16,20,17,20, 0, 0, 0, 0, 0,
-	 0, 0, 0,19,18, 0, 0,19, 0, 0, 0, 0, 0, 0, 0, 0,
-	 0,17,16,16,16,17, 0,20, 0, 0, 0, 0,19,16,15,15,
-	17,18,16,17,18, 0, 0, 0, 0, 0,16,15,14,17,16,17,
-	17,17,18,19, 0, 0, 0,20, 0,17, 0,16,14,15,15,15,
-	18,19, 0, 0, 0, 0, 0,20,17,16,14,15,14,14,16,16,
-	 0, 0, 0, 0, 0, 0,19,16,15,13,13,13,16,17, 0, 0,
-	 0, 0, 0,20,18,18,16,13,12,13,19,19, 0, 0,20, 0,
-	 0, 0,20,16,14,13,12,14,18, 0, 0, 0, 0, 0,18,18,
-	17,15,13,13,11,17, 0,17, 0, 0, 0, 0, 0,17,17,18,
-	15,12,19, 0, 0,20, 0, 0, 0, 0, 0, 0, 0, 0,19, 0,
-	 0, 0, 0, 0, 0, 0, 0,18,17,16,14,14,15,16,16,17,
-	18, 0, 0, 0, 0, 0,19,18,14,16,16,18,17,17,20, 0,
-	 0, 0, 0, 0, 0, 0,18,18,18,17,17,18, 0, 0, 0, 0,
-	 0, 0, 0, 0,18,16,15,15,16,16,19, 0, 0, 0, 0, 0,
-	20,16,15,16,19,15,15,14,19, 0, 0, 0, 0,19,19,18,
-	15,17,16,14,15,15,18, 0, 0, 0, 0, 0, 0, 0,20,14,
-	14,15,14,14,16,17, 0, 0, 0, 0,20, 0,18,15,14,14,
-	13,13,17,19, 0, 0, 0, 0, 0,20,19,15,14,13,12,12,
-	19,13, 0, 0, 0,20, 0,18,17,15,13,12,12,12,20,16,
-	 0,20, 0,20,18,17,17,15,12,11,11,13,19,16, 0, 0,
-	 0,19,17,16,19,14,12,12,12,16, 0,16, 0, 0, 0, 0,
-	17,17,16,16,15,13,17,20,18,17, 0, 0, 0, 0, 0, 0,
-	 0,19,16,18, 0, 0,18,18, 0, 0,18,15,14,14,14,14,
-	16,17,15,16,19, 0, 0, 0, 0, 0, 0,18,16,16,16,16,
-	16,16,19,19, 0, 0, 0, 0, 0,18,16,16,16,16,17,16,
-	 0, 0, 0, 0, 0, 0, 0,18,16,16,16,16,15,15,17, 0,
-	 0, 0, 0, 0, 0, 0,17,16,17,14,14,14,20,18, 0, 0,
-	 0, 0, 0, 0,20,17,15,13,14,13,16, 0, 0, 0, 0,19,
-	15,18,18,16,14,13,13,13,15,20, 0, 0, 0, 0,19,20,
-	17,15,13,12,11,12,15,20, 0,19, 0, 0,18,19,16,13,
-	12,11,10,11,15, 9, 0,18,18,19, 0,16,15,13,11,10,
-	 9,12,18,17, 0,20,17,16,16,15,14,12,10,10, 9,13,
-	19,16,20,14,17,18,17,15,15,13,12,11,10,15,16,13,
-	 0,19,20,17,16,18,19,17,12,14,17,20,14,14,20, 0,
-	20,18,20, 0,19,16,14,13, 0,19,17,18, 0, 0, 0,18,
-	15,14,14,15,17,17,15,15,17,20, 0,17, 0, 0,17, 0,
-	17,14,14,15,15,15,19,18, 0, 0, 0, 0, 0,19,16,14,
-	15,16,15,15,20,18, 0, 0, 0, 0,16,16,14,14,16,15,
-	13,14,19, 0, 0, 0,20,15,15, 9,15,15,16,13,12,13,
-	17,20, 0, 0,16,14,12,13,13,15,14,13,12,13,16, 0,
-	 0, 0,18,16,13,13,14,14,13,12,11,11,14,20, 0, 0,
-	 0,20,20,16,14,12,11,10, 9,10,14,18, 0,20, 0,16,
-	16,15,14,11, 9, 7, 8,10,15,18, 0,16,17,16,14,14,
-	13,10, 8, 7, 7,11,15,16,18,17,16,16,14,13,11, 9,
-	 8, 7, 8,12,16,14,20,13,16,15,14,14,12,11,10,10,
-	10,13,14,14,15,17,18,17,18,18,19,13,11,12,16,16,
-	16,16,19,20,18,20, 0, 0,17,13,12,19,17,16,15,17,
-	 0, 0, 0,19,18,17,15,15,16,17,15,15,19,20, 0,13,
-	 0,20, 0,18,16,15,15,15,15,16,17,20, 0,13,17,17,
-	17,18,16,16,15,14,16,16,20,20, 0,14,16,16,14,14,
-	14,15,15,14,14,14,18,19,16,15,18,13,13,13,14,14,
-	14,14,13,13,16,20,14,16,17,17,14,15,15,15,14,13,
-	12,12,16,19,19,18, 0,17,17,16,15,13,12,11,10,11,
-	15, 0, 0,16,20,16,14,14,14, 9, 8, 8, 8, 9,15, 0,
-	20,15,14,12,11,11,11, 8, 6, 6, 6, 9,14, 0,17,14,
-	16,14,13,11,10, 7, 5, 5, 6,10,15,15,17,13,14,13,
-	13,12,10, 7, 6, 6, 7,11,13,14,14,13,14,14,13,12,
-	12,10, 9,10, 9,11,15,15,15,17,18,16,17,17,16,13,
-	11,13,14,14,14,18, 0,19, 0,20,20, 0,18,12,12,16,
-	16,14,15,18, 0, 0, 0, 0,19,20,20,20,20,18,17,16,
-	19,20, 0,18,18, 0, 0,18,18,14,17,16,16,16,18,18,
-	 0, 0, 0,20,17,15,13,15,16,15,16,14,16, 0, 0,16,
-	15,15,15,14,14,14,14,15,15,13,16, 0, 0,16,14,14,
-	13,15,13,14,13,13,14,12,16,20, 0,17,16,16,14,14,
-	14,14,13,12,12,11,16,20, 0,15,18,16,15,15,14,13,
-	11,10,10,10,15, 0,18,13,15,13,12,12,12,10, 8, 7,
-	 7, 9,14,19,15,12,13,12,11,11,10, 8, 6, 5, 6, 9,
-	14, 0,14,12,13,12,12,11, 9, 7, 4, 4, 6, 8,15,19,
-	14,12,13,13,12,11, 9, 7, 6, 5, 6, 9,13, 0,12,12,
-	14,13,13,12,11,10, 9, 9, 8,10,16,20,17,14,16,15,
-	15,14,14,14,13,15,12,13,14,19,20, 0,20,20, 0,17,
-	14,11,13,15,15,13,17,18, 0, 0, 0, 0, 0, 0, 0, 0,
-	 0, 0,18,18,20,19, 0,19, 0, 0,19,17,19,15,15,16,
-	17,15,17, 0, 0,20,20,19,18,19,15,14,14,15,17,14,
-	16, 0, 0, 0, 0,17,16,16,14,13,13,15,15,13,16, 0,
-	 0,18,20,17,14,14,13,12,13,13,13,12,16, 0,20,19,
-	18,16,15,14,14,13,12,12,11,12,16, 0, 0,15,16,16,
-	15,14,13,12,11,10, 9,10,16, 0,17,12,14,14,13,13,
-	12,10, 8, 7, 7,10,15,18,14,11,14,13,12,12,11, 7,
-	 6, 5, 6,10,15,19,13,11,13,13,12,11, 9, 7, 5, 5,
-	 6, 9,15,20,13,10,13,12,11,11, 9, 7, 6, 5, 6, 8,
-	15,20,14,11,13,12,13,12,11,10, 9, 9, 9,11,17,17,
-	18,13,14,14,14,14,14,13,13,13,12,13,14, 0, 0,18,
-	17,16,14,14,12,11,13,16,16,14,18,20, 0, 0, 0, 0,
-	 0, 0, 0, 0, 0, 0,20,16,17,19, 0, 0, 0, 0, 0, 0,
-	18,15,17,19,18,15,14,20, 0, 0, 0, 0, 0,20,17,16,
-	15,16,17,15,16, 0, 0, 0, 0, 0,20,19,17,16,15,15,
-	15,15,15, 0,20, 0, 0, 0,20,17,16,15,14,14,14,14,
-	16, 0,20, 0,20, 0,18,18,16,14,13,13,13,13,17, 0,
-	20,16,18,16,18,16,15,13,12,12,12,13,17, 0,18,13,
-	16,15,13,13,12,11,11,10,11,12,16, 0,14,12,15,14,
-	13,12,12,10, 9,10,10,11,16, 0,14,11,14,15,14,13,
-	12, 9, 9,10,10,11,17, 0,14,11,13,14,13,12,11,10,
-	10,10, 9,10,17, 0,16,12,13,13,13,13,13,11,11,11,
-	10,12, 0, 0,20,14,14,14,15,16,13,12,14,14,12,13,
-	17, 0, 0,16,16,13,13,12,11,13,18,16,15,14, 0, 0,
-	 0, 0, 0, 0, 0, 0, 0, 0, 0,20,20,17,16,18, 0, 0,
-	 0, 0, 0,20, 0,17,18, 0, 0, 0,18, 0, 0, 0, 0, 0,
-	 0, 0,20,19,20, 0, 0,16,17,20, 0, 0, 0, 0, 0, 0,
-	 0,18, 0, 0,20,16,15, 0, 0,20, 0, 0, 0, 0, 0,20,
-	 0,20, 0,16,15, 0, 0,20,20, 0, 0, 0,20,18,18,17,
-	17,15,16, 0, 0,20, 0, 0, 0, 0,20,17,17,16,16,16,
-	17, 0, 0,18, 0,19, 0,18,16,15,13,14,14,15,20, 0,
-	20,16,20,20,18,17,15,13,13,15,14,14,19, 0,20,14,
-	15,16,16,16,14,11,13,14,13,14,20, 0,20,14,14,14,
-	14,14,12,11,12,13,12,13,20,20, 0,14,16,17,18,20,
-	16,14,13,13,13,14,20, 0, 0,17,15,15,14,15,15,16,
-	18,16,13,13, 0, 0, 0,16,14,14,14,13,14,16, 0, 0,
-	16,17, 0,19, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,18,
-	18,20, 0, 0, 0, 0, 0, 0,20, 0, 0, 0, 0,20,19, 0,
-	 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-	 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-	 0, 0, 0, 0,19,20, 0,20,19,20, 0, 0, 0, 0, 0,20,
-	 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,20,
-	 0,20,20,20,20, 0, 0, 0, 0, 0, 0,20, 0,19,19, 0,
-	20,17,20, 0, 0, 0, 0, 0, 0, 0, 0,19,18,17,19,18,
-	 0, 0,20, 0,20,19,19,20,19,17,17,19,19,17, 0, 0,
-	 0, 0, 0,20, 0, 0,18,19,17,16,16,15, 0, 0, 0, 0,
-	 0,20,20, 0, 0,20,18,16,14,14, 0, 0, 0,17,16,15,
-	16, 0,20, 0,18,18,15,16, 0, 0, 0,16,16,15,15,17,
-	 0,19, 0, 0,18,16,18, 9,
+	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,
+	17,18,17,18,18,18,18,18,15,15,14,17,18,18,18,18,
+	18,18,18,18,18,18,18,18,18,18,18,17,18,18,18,16,
+	16,15,13,13,13,13,18,18,18,18,18,18,18,18,18,18,
+	18,18,18,17,17,17,16,15,14,13,13,13,14,13,12,13,
+	15,18,17,18,18,18,18,18,18,18,18,18,18,18,18,16,
+	18,13,12,12,13,15,15,14,12,13,17,16,18,18,18,18,
+	18,18,18,18,18,18,16,18,18,17,16,13,12,13,14,14,
+	13,13,13,13,18,15,18,18,18,18,18,18,18,18,17,16,
+	18,18,16,17,14,11,12,13,14,14,14,13,13,13,14,15,
+	15,15,16,18,18,18,18,17,18,17,17,15,18,15,13,12,
+	12,12,12,13,12,12,12,11,13,13,14,15,14,18,18,18,
+	18,18,17,16,18,15,14,12,11,12,12,12,12,12,12,12,
+	11,10,11,11,13,15,13,18,18,18,18,18,17,17,16,15,
+	15,13,12,12,16,14,14,14,12,11,10,10,10,10,13,14,
+	13,18,18,18,18,18,17,17,16,17,15,16,12,13,13,13,
+	15,14,12,10, 9,10,11,11,14,13,12,18,18,18,17,18,
+	17,16,16,16,16,15,14,14,12,11,11,11,10, 9, 9,11,
+	11,11,12,11,12,18,18,18,18,17,16,18,15,17,15,13,
+	11,11,10,11,10,10, 9, 9, 8,10, 9,11,11,12,13,18,
+	17,18,18,16,18,18,16,15,13,12,10,11,10,10,10, 9,
+	 8, 8, 7, 8, 9,10,12,12,14,17,18,18,18,18,17,18,
+	16,14,12,11, 9, 9,10,10, 9, 8, 7, 6, 6, 7, 8,10,
+	11,12,14,18,18,18,18,18,18,16,15,12,11,10,10,10,
+	10, 8, 7, 6, 5, 4, 4, 6, 7, 9,11,11,13,18,18,18,
+	18,16,15,14,13,12,11,11,11,11,10, 9, 8, 7, 5, 4,
+	 3, 4, 6, 8,10,10,13,17,18,17,18,13,12,11,12,12,
+	12,12,12,12,11, 9, 9, 8, 7, 5, 4, 5, 6, 8,10,11,
+	16,18,18,18,15,13,12,11,11,10,10,10,11,12,10, 9,
+	 9, 9, 8, 6, 6, 6, 7, 9,10,12,16,17,18,18,15,13,
+	13,11,11,10,10,10,12,13,13,12,11,10, 9, 8, 8, 8,
+	 9,10,12,14,18,18,18,18,16,14,12,12,12,11,11,11,
+	14,15,14,12,12,12,11,10,10, 9, 9,12,14,16,15,16,
+	16,18,14,14,14,13,13,12,12,12,14,14,14,13,13,12,
+	12,11,11,10,11,12,15,18,16,15,14,18,15,14,16,14,
+	14,14,14,12,11,10, 9, 8, 8, 8, 8, 8, 8,10,12,15,
+	15,16,16,16,16,17,17,16,17,17,16,14,14,13,12,10,
+	 9,10, 9, 9, 9,10,14,16,15,16,13,17,16,16,18,18,
+	18,18,18,18,17,16,18,15,14,13,12,13,13,15,18,18,
+	18,17,16,16,18,17,17,17,18,17,18,18,18,18,18,18,
+	18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,17,
+	17,18,18,18,
 };
 
 static long _vq_pigeonmap_lsp30_0[] = {
             0,     0,     0,     0,     0,     0,     1,     1, 
-	    2,     2,     3,     3,     3,     3,     4,     4, 
-	    4,     4,     5,     5,     5,     5,     5,     5, 
-	    5,     6,     6,     6,     6,     6, 
+	    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[] = {
-	  983,  1178,  1179,    19,    32,   984,   408,    59, 
-	   46,   213,   789,   594,    33,   409,   214,   985, 
-	 1180,   790,   410,   605,    20,    34,    47,    48, 
-	   61,   215,   216,   411,   595,   986,   606,   230, 
-	  412,   607,   801,   802,   803,   998,    62,    21, 
-	   35,   426,   608,   804,   999,   662,   844,   845, 
-	  858,   871,  1000,  1040,  1053,  1195,   663,  1387, 
-	 1054,  1430,  1624,  1638,  1652,  1390,  1444,  1583, 
-	 1597,  1611,  1263,    49,    63,    77,   217,   231, 
-	  245,   299,   650,   259,   427,   664,   677,   846, 
-	  859,   495,   678,   873,  1041,   860,  1055,   691, 
-	   19,    20,    32,    33,    34,    21,    48,    35, 
-	   47,    22,    49,    36,   594,   789,   595,   400, 
-	   46,    61,    62,    63,   790,   791,   215,   596, 
-	  216,   217,   230,    50,    77,   231,   984,   986, 
-	  213,   214,   410,   411,   412,   401,   413,   792, 
-	  426,   608,    23,   218,   245,   427,   609,   409, 
-	  987,   606,   607,   597,   988,   232,   414,   623, 
-	 1182,   804,   805,    37,    24,    38,    64,   598, 
-	  219,    78,    79,   233,   793,   794,   415,   246, 
-	  610,   220,   247,   611,   989,   990,   442,   624, 
-	  234,  1185,   806,   807,    22,    23,    36,    37, 
-	   50,   401,   597,    24,    38,   598,   207,   403, 
-	  599,   221,   795,   600,   220,   234,    79,    93, 
-	  613,   796,   991,   612,   107,   458,   640,   263, 
-	  793,   794,   247,   809,   989,   990,   219,  1187, 
-	  233,   415,   808,   277,   459,   641,   823,   992, 
-	 1005,   611,   654,   836,  1004,   655,   837,  1186, 
-	  807,  1019,  1188,  1018,   473,   261,   275,   109, 
-	  121,   289,   290,   291,   457,   471,   485,   487, 
-	  614,   669,   810,   851,  1033,   667,   668,   850, 
-	  486,   446,   683,   865,   207,   403,   599,   795, 
-	  221,   600,   796,   991,   992,   614,  1188,   109, 
-	  263,   264,   446,   810,   613,   277,   459,   278, 
-	  460,   642,  1006,   809,   641,   123,   291,   473, 
-	  823,   655,   837,   474,   656,  1384,   292,  1005, 
-	 1019,  1202,  1385,  1201,   488,   852,  1034,   265, 
-	  487,   669,   306,   684,   866,   839,  1048,  1203, 
-	 1230,   851,  1033,  1398,   880,  1062,  1244,  1412, 
-	 1580,  1215,  1581,  1229,  1426,  1258,   983,  1178, 
-	 1179,    32,   408,    19,    59,    46,   213,   984, 
-	  409,    33,   214,   605,   410,   801,  1180,  1375, 
-	 1376,  1387,   606,   789,   985,   594,   790,   986, 
-	 1181,  1182,   802,   411,   607,   998,  1377,  1571, 
-	  803,   215,   595,   791,   987,  1378,   216,   412, 
-	  608,   999,  1183,   804,   230,   426,  1000,  1195, 
-	  844,  1014,  1196,  1209,  1572,  1573,  1574,  1583, 
-	 1768,  1390,  1597,  1585,  1598,  1769,  1611,  1430, 
-	 1779,  1770,  1599,  1780,  1612,    20,    21,    34, 
-	   47,    48,    61,    62,    35,    49,    22,    63, 
-	   36,    50,    77,    64,   215,   216,   230,   412, 
-	  217,   231,   413,    23,   218,   245,   426,   427, 
-	   37,    78,   232,   259,   414,   411,   608,   609, 
-	  623,   246,   273,   455,   610,   804,   805,   637, 
-	  650,   662,   663,   845,  1000,  1014,   819,   260, 
-	  442,   469,   624,   651,   806,    33,    46,   607, 
-	  803,   844,   664,   677,   846,   858,   859,   871, 
-	 1028,  1040,  1041,   999,   299,   300,   495,   287, 
-	  678,   873,  1054,   860,   496,   691,  1042,  1055, 
-	  314,   692,   887,    22,    23,    36,    50,    64, 
-	   37,    24,    38,    78,    79,    92,   219,    93, 
-	  233,   220,    77,   218,   232,   414,   246,   260, 
-	  415,   247,   442,   234,   261,   245,   259,   610, 
-	  611,   273,   624,   274,   456,   275,   457,   612, 
-	  806,   638,   807,   639,   820,   470,   652,   471, 
-	  808,   107,   106,   288,   289,   287,   484,   458, 
-	  485,   640,   667,   290,   654,   681,   836,   834, 
-	  666,   835,   849,   863,  1004,  1018,   848,   680, 
-	 1002,  1003,  1016,  1017,  1031,  1045,  1200,  1198, 
-	 1030,  1199,  1212,   862,  1044,  1213,    35,    48, 
-	   49,    62,    63,    77,    36,    50,    64,    78, 
-	   92,   230,   245,   259,   217,   231,   413,   426, 
-	  427,   218,   232,    37,   246,   273,   414,   455, 
-	  637,   260,   287,   442,   609,   623,   219,   469, 
-	  610,   624,   650,   663,   651,   233,   274,   456, 
-	  483,   638,   664,   677,   846,   662,   805,   819, 
-	  845,   859,  1014,  1028,   833,   665,   820,   299, 
-	  678,   860,   873,  1042,   847,   288,   470,   652, 
-	  679,   834,    38,    79,    93,   107,   220,   234, 
-	  121,   275,   221,   290,   458,   640,   109,   263, 
-	  613,   277,   459,   641,   289,   486,   247,   261, 
-	  457,   612,   471,   291,   303,   485,   654,   668, 
-	  836,   123,   473,   655,   487,   614,   667,   304, 
-	  264,   305,   446,   669,   808,   850,   809,   823, 
-	  683,   810,   851,   500,   864,   278,   460,   501, 
-	  642,   865,   878,  1005,   837,   879,  1006,   656, 
-	  639,   835,   849,  1004,  1018,  1200,  1032,  1019, 
-	 1201,  1033,  1047,  1046,  1214,  1228,  1215,  1229, 
-	 1060,  1242,  1061,  1243,  1202,   109,   123,   277, 
-	  264,   278,   291,   446,   460,   614,   642,   810, 
-	  292,   474,   656,   265,   488,   306,   473,   684, 
-	  487,   669,   852,   866,   839,   880,  1048,  1062, 
-	 1006,  1034,  1230,  1203,  1244,  1202,  1076,  1258, 
-	  698,   867,  1272,   894,   881,  1245,   320,   516, 
-	 1090,   712,   908,   503,   699,  1077,   334,   530, 
-	 1104,   726,   895,   321,   517,  1286,  1273,  1300, 
-	  922,  1091,   713,  1412,  1426,  1440,  1454,  1399, 
-	 1413,  1468,  1118,  1287,   909,  1441,  1482,  1469, 
-	 1496,  1314,  1105,    49,    63,    77,    50,    64, 
-	   78,    92,   259,   106,   245,   273,   299,   119, 
-	  287,   246,   300,   455,   469,   495,   496,   232, 
-	   79,    93,   260,   274,   637,   651,   664,   677, 
-	  678,   483,   107,   288,   231,   427,   650,   218, 
-	  442,   456,   623,   663,   665,   301,   470,   484, 
-	  314,   497,   261,   275,   289,   302,   315,   457, 
-	  471,   498,   511,   666,   680,   693,   846,   233, 
-	  247,   638,   652,   860,   679,   692,   510,   691, 
-	  861,   875,   862,   876,   888,   328,   889,   819, 
-	  833,   847,   859,   873,  1042,  1056,   848,   706, 
-	  316,   694,   707,    78,    79,    92,   106,    93, 
-	  107,   121,   135,   119,   260,   274,   261,   275, 
-	  289,   458,   288,   290,   302,   303,   486,   233, 
-	  247,   456,   470,   457,   234,   471,   485,   640, 
-	  484,   654,   301,   315,   680,   499,   668,   498, 
-	  316,   304,   317,   652,   666,   639,   667,   681, 
-	  836,   694,   512,   695,   500,   513,   850,   497, 
-	  862,   876,   863,   877,   864,   878,   329,   511, 
-	  890,   330,   891,   849,   708,   318,   696,   709, 
-	  107,   121,   135,   221,   290,   458,   109,   263, 
-	  304,   486,   613,   668,   277,   459,   123,   303, 
-	  500,   641,   264,   278,   292,   305,   319,   460, 
-	  474,   275,   289,   485,   640,   654,   809,   291, 
-	  446,   487,   317,   499,   501,   318,   488,   515, 
-	  656,   473,   614,   642,   683,   655,   696,   331, 
-	  514,   697,   306,   684,   669,   332,   333,   864, 
-	  878,   865,   879,   892,   893,   513,   710,   528, 
-	  711,   529,   866,   880,   823,   837,   851,   852, 
-	  906,   907,   698,   109,   123,   264,   278,   446, 
-	  460,   292,   474,   642,   488,   656,   265,   306, 
-	  684,   305,   125,   320,   319,   698,   516,   334, 
-	  839,   867,   712,   894,   503,   881,   530,   866, 
-	  880,  1245,   699,  1077,   726,   908,   321,   852, 
-	 1090,   333,   347,   348,   517,   544,   713,   531, 
-	  895,   727,   909,   922,   740,  1105,   936,  1104, 
-	 1091,  1118,  1132,   923,   545,  1286,  1300,  1273, 
-	 1287,  1314,  1301,  1328,  1119,   741,  1315,  1482, 
-	 1496,  1469,  1483,  1510,  1497,  1524,  1133,    32, 
-	   46,    59,   213,   408,   409,    33,    47,    61, 
-	  214,   410,    48,    62,   215,   216,   230,   426, 
-	  662,   844,   871,   605,   411,   606,   412,   607, 
-	  663,   858,  1053,    49,    63,    77,   299,   650, 
-	  677,   845,   859,  1040,  1054,   801,   802,   300, 
-	  495,   664,   846,   873,  1041,   803,   998,  1263, 
-	  691,   608,   999,  1430,  1444,  1055,  1289,  1387, 
-	 1638,  1652,  1583,  1597,  1611,  1625,  1680,  1264, 
-	 1624,  1639,  1862,  1082,   496,   534,   887,  1195, 
-	 1390,  1598,  1612,   678,  1431,  1458,  1512,  1694, 
-	 1303,   692,   730,  1278,  1265,  1653,  1445,    35, 
-	   48,    49,    61,    62,    63,    77,   230,   231, 
-	  299,   426,   650,   662,   663,   677,   844,   845, 
-	  858,   859,   871,  1040,  1053,   245,   259,   495, 
-	  664,   300,   846,   873,  1054,   496,   691,   119, 
-	  314,   510,   534,   692,   887,  1041,   340,   535, 
-	  718,   730,   888,   678,  1055,  1263,  1082,   706, 
-	 1278,  1264,  1289,  1303,   536,   731,   926,  1109, 
-	  803,   999,   860,  1028,  1042,  1223,  1056,  1265, 
-	 1445,  1446,  1458,  1459,  1070,  1084,  1279,  1097, 
-	 1292,  1473,  1121,  1266,  1280,  1304,  1474,   915, 
-	 1305,    63,    77,   245,   259,   273,   299,   300, 
-	  495,   663,   664,   677,    64,    78,    92,   119, 
-	  287,   455,   469,   496,   678,   314,   691,   301, 
-	  483,   692,   510,   340,   534,   315,   328,   497, 
-	  706,   887,   535,   718,   524,   536,   888,   902, 
-	  731,  1082,   730,  1097,   342,   915,  1070,  1084, 
-	 1278,  1279,  1109,  1292,  1098,   538,   733,   916, 
-	 1111,  1266,  1280,  1293,  1294,  1123,  1112,  1124, 
-	 1307,  1304,  1305,  1474,  1475,  1319,   930,  1125, 
-	 1308,  1320,  1476,  1488,  1489,  1490,  1502,  1126, 
-	 1321,  1503,    78,    92,   106,   119,   273,   287, 
-	  299,   300,    93,   107,   121,   302,   315,   288, 
-	  289,   301,   316,   328,   329,   497,   498,   511, 
-	  524,   148,   314,   340,   342,   510,   135,   525, 
-	  496,   275,   484,   693,   303,   485,   694,   707, 
-	  512,   706,   483,   692,   274,   470,   680,   538, 
-	  330,   343,   708,   721,   317,   526,   539,   889, 
-	  890,   902,   903,   499,   904,   536,   733,   916, 
-	  917,   344,   722,   735,   107,   121,   135,   148, 
-	  304,   317,   318,   331,   109,   123,   332,   344, 
-	  345,   500,   513,   514,   527,   289,   302,   498, 
-	  303,   316,   696,   330,   709,   710,   315,   329, 
-	  485,   694,   499,   290,   512,   526,   540,   722, 
-	  528,   541,   723,   695,   486,   708,   343,   891, 
-	  892,   525,   904,   905,   906,   539,   918,   919, 
-	  736,   346,   724,   737,  1087,  1088,  1100,  1101, 
-	 1102,  1114,   932,  1115,   542,   920,   933,  1283, 
-	 1284,  1296,  1297,  1298,  1310,  1128,  1311,   738, 
-	 1116,  1129,  1324,   934,  1312,  1325,  1479,  1480, 
-	 1492,  1493,  1494,  1506,  1507,  1130,   135,   304, 
-	  109,   123,   305,   319,   264,   278,   292,   306, 
-	  333,   460,   474,   488,   501,   515,   656,   684, 
-	  317,   318,   331,   500,   697,   711,   529,   291, 
-	  332,   514,   527,   320,   347,   698,   345,   528, 
-	  346,   725,   516,   543,   513,   696,   277,   487, 
-	  710,   542,   473,   683,   724,   334,   712,   669, 
-	  906,   893,   907,   894,   920,   921,   541,   738, 
-	  739,   530,   908,   879,   880,   934,   935,   726, 
-	   46,    47,    59,    61,   213,   214,   215,   408, 
-	  409,   410,   605,   606,   662,   801,   802,   844, 
-	  871,  1053,    48,    62,   216,   230,   411,   426, 
-	  607,   663,   803,   845,   858,   998,  1040,  1054, 
-	 1263,  1430,   299,   677,   859,   495,   650,   664, 
-	  873,  1289,   300,   691,   496,  1444,  1680,   534, 
-	  314,   887,  1512,  1055,  1082,  1264,   730,   535, 
-	  340,  1458,  1694,  1303,   718,  1330,  1485,  1121, 
-	  536,   731,   926,   328,   342,  1387,  1611,  1652, 
-	  733,  1625,  1123,   524,   538,  1124,  1639,  1278, 
-	 1317,  1318,  1319,   355,   746,   915,  1125,  1320, 
-	 1331,  1431,  1653,  1862,  1526,  1109,   551,   916, 
-	  930,   942,  1111,  1137,  1321,  1332,  1304,  1307, 
-	 1514,  1515,  1513,  1305,  1333,   119,   299,   300, 
-	  314,   495,   496,   534,   691,   287,   301,   340, 
-	  510,   535,   692,   718,   887,   730,   328,   536, 
-	  706,   731,   524,   342,   329,   355,   538,   733, 
-	  343,   551,   746,  1124,   356,   926,  1123,   930, 
-	 1125,   915,   916,  1319,  1320,   942,  1137,  1321, 
-	 1331,  1332,   747,  1111,  1126,   552,   943,  1138, 
-	  315,   511,   148,   525,   539,   721,   748,   357, 
-	  944,  1139,   553,  1140,  1121,  1289,  1303,  1330, 
-	 1317,  1318,  1526,  1540,  1333,  1358,  1527,  1513, 
-	 1514,  1722,  1345,  1334,  1346,  1109,  1528,   370, 
-	 1152,  1335,  1347,   957,  1541,  1305,   106,   119, 
-	  301,   302,   314,   315,   328,   329,   340,   342, 
-	  497,   510,   511,   524,   536,   107,   121,   148, 
-	  316,   498,   525,   538,   707,   135,   343,   355, 
-	  330,   344,   331,   356,   357,   526,   527,   539, 
-	  540,   552,   722,   735,   736,   345,   553,   551, 
-	  748,   358,   541,   749,   370,   554,   512,   721, 
-	  317,   513,   930,   931,   932,   944,   566,   945, 
-	  371,   750,   917,   918,   733,   747,   359,   567, 
-	  946,  1126,  1127,   746,   723,  1128,   737,   943, 
-	 1140,  1141,   555,   763,  1142,   135,   148,   304, 
-	  317,   318,   331,   332,   344,   345,   500,   513, 
-	  514,   527,   540,   109,   123,   528,   541,   710, 
-	  723,   330,   526,   346,   357,   736,   358,   542, 
-	  724,   737,   359,   553,   554,   738,   555,   750, 
-	  178,   360,   751,   371,   556,   709,   343,   722, 
-	  372,   539,   932,   933,   934,   567,   946,   568, 
-	  947,   752,   919,   920,   569,   948,  1128,  1129, 
-	  749,  1130,  1142,  1143,   763,   764,   765,  1144, 
-	 1115,  1116,  1324,  1325,   945,  1326,  1338,  1339, 
-	  959,   960,   961,  1340,  1311,  1312,  1141,  1155, 
-	 1156,   570,  1157,   109,   123,   305,   318,   332, 
-	  345,   346,   514,   528,   541,   319,   333,   501, 
-	  515,   542,   697,   711,   529,   306,   347,   320, 
-	  516,   543,   698,   725,   334,   712,   724,   738, 
-	  739,   530,   359,   360,   178,   348,   361,   726, 
-	  555,   556,   934,   557,   935,   544,   751,   740, 
-	  753,   192,   193,   362,   375,   558,   936,   949, 
-	  752,  1132,   570,  1145,   907,   908,   948,   569, 
-	  921,  1130,  1131,   922,  1144,   765,   766,   754, 
-	 1103,  1326,  1104,  1327,   947,  1328,   961,  1340, 
-	  767,  1341,   125,   320,   334,   347,   516,   530, 
-	  712,   348,   321,   503,   517,   544,   699,   713, 
-	  531,   726,   740,   362,   545,   727,   909,   361, 
-	  923,   558,   936,   741,   754,   375,   557,   193, 
-	  951,  1133,  1147,  1329,  1132,  1342,  1160,   922, 
-	 1105,  1119,  1328,  1525,  1538,  1118,  1356,  1343, 
-	 1314,  1301,  1315,  1524,  1539,  1510,  1497,  1511, 
-	 1734,   965,  1720,  1721,  1552,  1161,  1735,  1706, 
-	 1707,  1357,  1916,  1930,  1748,  1931,  1902,  1903, 
-	 1553,   328,   340,   342,   355,   356,   524,   536, 
-	  538,   551,   733,   746,   930,   552,   747,   942, 
-	  357,   748,   943,   370,   944,   553,   566,  1138, 
-	 1139,  1140,   957,  1152,  1334,  1335,  1345,  1346, 
-	 1347,  1137,  1333,  1336,  1153,  1348,   958,   749, 
-	  371,   567,   763,  1154,   945,  1349,   959,  1350, 
-	  731,   915,   916,  1111,  1112,  1124,  1125,  1126, 
-	 1320,  1321,   343,   539,   721,   735,   917,  1322, 
-	 1123,  1307,  1308,   931,  1113,  1319,  1332,  1516, 
-	 1517,  1127,  1309,  1518,  1530,  1531,  1141,  1532, 
-	 1503,  1504,  1323,  1337,   344,   355,   356,   357, 
-	  551,   552,   553,   748,   370,   345,   358,   554, 
-	  749,   371,   566,   750,   359,   567,   372,   555, 
-	  763,   568,   178,   764,   945,   946,   958,   959, 
-	  569,   960,  1155,   765,  1156,  1141,   751,  1142, 
-	  957,  1154,  1351,   961,  1169,  1352,  1337,   947, 
-	 1338,  1153,  1350,  1364,   974,  1157,  1365,  1143, 
-	 1349,  1362,  1547,  1353,  1548,  1533,  1339,  1534, 
-	 1546,  1170,  1545,  1560,  1366,  1561,  1729,  1535, 
-	 1730,  1742,  1743,  1744,  1549,  1741,  1756,  1562, 
-	 1757,  1925,  1731,  1926,  1938,  1939,  1754,  1940, 
-	 1745,  1937,  1952,  1758,  1953,   346,   358,   359, 
-	  371,   554,   555,   750,   372,   178,   360,   556, 
-	  751,   567,   568,   192,   764,   569,   570,   765, 
-	  752,   961,   766,   960,   947,   948,   962,  1144, 
-	 1156,  1157,   974,  1158,  1143,  1170,  1353,  1171, 
-	 1354,  1339,  1340,  1352,  1169,  1367,  1366,  1550, 
-	 1535,  1536,  1548,  1549,  1365,  1562,  1563,  1731, 
-	 1732,  1744,  1745,  1561,  1746,  1758,  1564,  1759, 
-	 1927,  1928,  1940,  1941,  1757,  1942,  1954,  1760, 
-	 1955,   178,   192,   361,   557,   348,   753,   193, 
-	  362,   375,   544,   558,   740,   936,   949,   570, 
-	  754,   569,   766,   767,  1160,   360,   556,   752, 
-	  765,   948,   962,  1159,  1342,  1355,  1356,  1369, 
-	  961,  1144,  1145,  1158,  1538,  1551,  1171,  1354, 
-	 1341,  1367,  1550,  1537,  1563,  1746,  1564,  1552, 
-	 1734,  1733,  1747,  1565,  1759,  1174,  1748,  1929, 
-	 1942,  1760,  1761,  1370,  1930,  1943,  1944,  1956, 
-	 1957,  1566,   193,   362,   375,   558,   754,   545, 
-	  741,   951,  1133,  1147,  1329,  1160,  1342,  1343, 
-	 1356,   965,  1161,  1174,   767,  1159,  1538,  1355, 
-	 1357,  1539,  1552,  1370,   783,  1553,  1175,  1734, 
-	 1748,  1566,  1371,  1735,  1749,  1762,  1567,  1930, 
-	 1931,  1944,  1945,  1958,  1763,   983,  1178,  1179, 
-	  984,   789,   408,   213,   409,   594,   790,   985, 
-	 1180,   214,   605,   410,   215,   606,   801,  1181, 
-	  986,   411,   802,   595,  1182,   216,   607,   791, 
-	  412,   230,   426,   608,   803,   987,   998,   804, 
-	  999,   662,   844,  1000,  1195,   858,   871,  1040, 
-	 1053,  1209,   845,  1624,  1638,  1387,  1390,  1430, 
-	 1652,  1583,  1597,  1611,  1054,  1444,  1598,  1625, 
-	 1431,  1585,  1612,  1639,  1680,  1263,  1458,  1264, 
-	 1779,  1862,  1626,  1289,  1445,  1459,  1807,  1653, 
-	 1640,  1375,  1376,  1571,  1377,  1572,  1599,  1780, 
-	 1613,  1627,  1808,  1821,   594,   789,   790,   595, 
-	  791,   986,   400,   596,   214,   985,  1182,   216, 
-	  792,   987,  1183,   215,   410,   411,   606,   412, 
-	  607,   217,   230,   608,   988,   401,   413,   597, 
-	 1184,   802,   803,   426,   804,   231,   609,   218, 
-	  427,   793,   805,  1000,   232,   245,   414,   610, 
-	  623,   819,  1001,   259,   637,  1181,   998,   999, 
-	  989,  1014,  1196,   806,  1015,  1197,   455,   624, 
-	  833,  1378,  1379,  1380,  1195,  1185,  1209,  1210, 
-	 1002,  1211,   650,  1028,   651,   820,  1029,  1377, 
-	  845,  1223,  1392,  1198,  1393,   846,  1224,   847, 
-	 1016,  1225,   400,   596,   792,   401,   597,   793, 
-	  598,   794,   989,   217,   988,  1184,   218,  1185, 
-	  231,   413,   609,   414,   219,   232,   610,   990, 
-	  415,  1186,   245,   427,   623,   805,   806,   233, 
-	  246,   611,   624,   220,   807,   442,   820,  1002, 
-	  234,   247,   612,  1003,   260,   638,   261,   639, 
-	  819,  1001,  1016,  1198,   808,  1017,  1199,   456, 
-	  834,   457,   835,  1380,  1381,  1382,   637,  1015, 
-	 1197,  1212,  1004,  1213,   652,  1030,  1031,   833, 
-	 1211,  1394,  1200,  1395,   848,  1226,   849,  1018, 
-	 1227,   598,   794,   990,  1186,   207,   403,   599, 
-	  795,   991,  1187,   221,   600,   796,   219,   220, 
-	  233,   415,   611,   807,   247,   234,   612,   613, 
-	  992,   808,  1004,   640,   809,   823,  1005,  1188, 
-	  458,   654,   836,  1018,  1032,  1200,  1214,   263, 
-	  277,   459,   473,   641,   655,   837,  1019,  1033, 
-	 1201,  1215,   850,   291,   614,   669,   851,  1003, 
-	 1382,  1383,  1384,   290,   668,  1046,  1228,   487, 
-	  810,   865,  1047,  1229,  1199,   639,  1017,  1396, 
-	 1397,   486,   864,  1242,  1006,  1243,  1578,  1579, 
-	  835,  1213,  1410,  1411,  1580,  1060,  1424,   683, 
-	 1061,  1202,  1425,   215,   216,   230,   410,   411, 
-	  412,   606,   607,   608,   802,   803,   998,   426, 
-	  804,   999,   662,   844,  1000,  1195,   845,   858, 
-	 1014,  1040,  1053,  1196,  1209,   217,   231,   413, 
-	  427,   609,   650,   663,   805,   846,   859,   871, 
-	 1028,  1041,  1054,  1210,  1223,   245,   623,   664, 
-	  677,   678,   860,   873,  1042,  1055,  1224,  1390, 
-	 1392,  1405,  1263,  1056,  1238,  1264,  1418,  1406, 
-	 1419,  1432,  1070,  1252,  1265,  1420,  1433,   217, 
-	  230,   231,   412,   413,   426,   608,   609,   804, 
-	 1000,   245,   427,   623,   650,   805,   218,   232, 
-	  259,   414,   455,   610,   637,   819,  1001,   246, 
-	  273,   442,   624,   651,   806,   833,   662,   663, 
-	  664,   844,   845,   846,   858,   859,  1014,  1028, 
-	 1041,  1196,  1210,   469,  1015,   260,   287,   456, 
-	  638,   665,   820,   847,  1002,   999,  1040,  1195, 
-	 1209,  1223,  1197,  1029,   860,  1042,  1211,   483, 
-	  652,   834,   861,  1016,  1043,  1198,   231,   245, 
-	  259,   427,   609,   623,   637,   650,   663,   664, 
-	  677,   805,   819,   845,   846,   859,  1028,   273, 
-	  455,   469,   651,   678,   833,   860,  1015,   232, 
-	  246,   260,   287,   442,   483,   610,   624,   638, 
-	  665,   806,   820,   847,  1029,   274,   456,   470, 
-	  652,   679,   834,   861,  1016,   299,   873,  1042, 
-	  300,  1043,   288,   301,   484,   666,   848,   875, 
-	 1030,  1001,  1041,  1055,  1224,  1056,  1211,  1002, 
-	 1225,  1057,  1212,   495,  1238,   496,  1070,  1239, 
-	  497,   680,   862,  1044,  1071,  1226,   233,   247, 
-	  260,   261,   274,   288,   442,   456,   470,   484, 
-	  611,   638,   639,   652,   666,   807,   834,   848, 
-	 1030,   275,   457,   471,   680,   835,   862,  1017, 
-	  234,   289,   485,   612,   640,   667,   808,   849, 
-	 1031,   458,   654,   681,   836,   863,  1018,  1044, 
-	  302,   876,  1045,   290,   303,   486,   668,   850, 
-	  877,  1032,  1003,  1226,  1058,  1213,  1004,  1227, 
-	 1059,  1214,  1240,   498,  1072,  1241,   499,   864, 
-	 1046,  1073,  1228,   415,   624,   806,   820,  1002, 
-	 1016,  1198,  1212,  1199,  1200,  1394,  1395,  1408, 
-	 1254,  1409,  1255,  1396,   290,   458,   486,   640, 
-	  654,   668,   836,   850,  1032,   221,   613,   809, 
-	  864,   878,  1046,  1060,   263,   277,   304,   459, 
-	  500,   641,   655,   823,   837,  1005,  1019,  1074, 
-	 1201,   473,   291,   487,   669,   851,  1033,   614, 
-	  683,   810,   865,   879,  1047,  1061,   264,   305, 
-	  446,   460,   642,  1006,   696,   501,  1075,   278, 
-	  474,   656,   697,   852,  1034,  1228,  1242,  1256, 
-	 1215,  1229,  1243,  1257,  1202,  1270,   892,  1271, 
-	  292,   893,  1048,  1230,   808,  1004,  1018,  1200, 
-	 1214,  1396,  1410,  1424,  1397,  1411,  1425,  1438, 
-	 1439,  1398,   650,   662,   663,   664,   677,   845, 
-	  846,   858,   859,   871,  1041,  1054,   299,   495, 
-	  678,   860,   873,  1042,  1055,   300,   496,   691, 
-	 1056,   692,   887,  1070,  1082,   314,   510,   888, 
-	 1028,  1238,  1264,  1252,  1265,  1266,  1278,   706, 
-	 1084,  1279,   844,  1040,  1053,  1223,  1263,  1224, 
-	 1432,  1445,  1446,  1459,  1289,  1458,  1460,  1431, 
-	 1444,  1473,  1485,   718,   902,  1097,  1280,  1292, 
-	 1433,  1434,  1447,  1448,  1461,  1462,  1474,  1098, 
-	 1293,  1475,   259,   273,   287,   299,   300,   455, 
-	  469,   495,   496,   637,   651,   664,   665,   677, 
-	  678,   691,   833,   847,   860,   873,  1056,   483, 
-	  679,   692,   861,  1043,   260,   274,   288,   301, 
-	  456,   470,   497,   638,   652,   666,   834,   848, 
-	  875,  1057,   484,   680,   693,   862,  1044,   887, 
-	 1070,   314,   888,  1071,   302,   315,   498,   876, 
-	  889,  1058,   510,   706,   511,   694,   707,  1072, 
-	 1084,   328,   902,  1085,   316,   329,   512,   890, 
-	  903,  1029,  1252,  1239,  1030,  1253,  1240,  1266, 
-	 1267,  1254,  1268,  1097,  1280,   524,  1098,  1281, 
-	  525,   708,  1086,  1099,   261,   275,   288,   289, 
-	  302,   457,   470,   471,   484,   498,   639,   666, 
-	  667,   680,   835,   849,   862,   876,  1058,   485, 
-	  681,   694,   863,  1045,   290,   303,   458,   499, 
-	  640,   654,   668,   836,   850,   877,  1059,   486, 
-	  695,   864,  1046,  1072,   316,   890,  1073,   304, 
-	  317,   500,   878,   891,  1060,   512,   708,   513, 
-	  696,   709,  1074,  1086,   330,   904,  1087,   318, 
-	  331,   514,   892,   905,  1031,  1254,  1241,  1032, 
-	 1255,  1242,  1268,  1269,  1256,  1270,  1282,   526, 
-	 1100,  1283,   527,   710,  1088,  1101,   290,   304, 
-	  486,   500,   668,   864,   878,  1060,   263,   277, 
-	  459,   641,   655,   696,   823,   837,   892,  1074, 
-	  291,   318,   473,   487,   669,   851,   865,  1019, 
-	 1033,  1047,   683,   305,   501,   879,  1061,   264, 
-	  278,   446,   460,   642,   656,   697,   893,  1075, 
-	  292,   319,   474,   488,   852,   866,  1034,  1048, 
-	  514,  1088,   710,   515,  1089,   684,   711,   880, 
-	 1062,   906,   332,   907,   306,   333,  1076,   528, 
-	 1102,   724,   529,  1103,   698,   725,   894,  1256, 
-	 1270,  1215,  1229,  1243,  1257,  1271,  1230,  1244, 
-	 1284,  1285,  1258,  1272,  1298,   920,  1299,   320, 
-	  921,  1090,   605,   801,  1387,  1583,  1597,  1624, 
-	 1638,  1652,   408,   409,   410,   606,   662,   802, 
-	  844,   858,   871,   998,  1040,  1053,  1430,  1444, 
-	 1598,  1611,  1612,  1625,  1639,  1680,  1862,  1054, 
-	 1263,  1431,  1458,   299,   495,   663,   677,   845, 
-	  859,   873,  1041,  1055,  1082,  1264,  1289,  1626, 
-	 1445,  1459,   691,   887,  1278,  1512,  1653,  1694, 
-	  534,   730,  1303,  1485,  1585,  1779,  1807,  1876, 
-	 1121,  1304,  1473,   926,  1109,  1640,   535,   718, 
-	 1292,  1305,  1317,  1499,  1821,  1667,   301,   314, 
-	  315,   328,   497,   510,   524,   693,   706,   889, 
-	  902,   511,   707,  1085,   302,   316,   329,   498, 
-	  525,   694,   890,   903,   512,   708,   721,  1086, 
-	  915,  1098,   342,   916,  1099,   330,   343,   526, 
-	  904,   917,   538,   733,   539,   722,   735,  1100, 
-	 1112,   930,  1113,   344,   540,   918,   931,  1097, 
-	 1281,  1282,  1111,  1294,  1295,  1296,  1125,  1308, 
-	 1126,  1309,   736,  1114,  1127,  1293,  1307,  1321, 
-	 1322,   932,  1310,  1323,  1477,  1478,  1490,  1491, 
-	 1492,  1504,  1505,  1128,   318,   332,   514,   528, 
-	  710,   906,   305,   501,   683,   697,   724,   879, 
-	  920,  1102,   319,   346,   515,   893,  1075,  1089, 
-	  711,   333,   529,   907,   306,   684,   698,   725, 
-	  880,   921,  1103,   320,   347,   516,   894,  1076, 
-	 1090,   542,  1116,   738,   543,  1117,   712,   739, 
-	  908,   934,   935,   334,   530,  1104,  1130,  1131, 
-	  726,   922,  1298,  1271,  1285,  1299,  1272,  1286, 
-	 1312,  1313,  1300,  1326,  1327,   348,  1118,   544, 
-	 1314,  1494,  1467,  1481,  1495,  1468,  1482,  1508, 
-	 1509,  1496,  1522,  1523,   740,   871,  1289,  1512, 
-	 1680,  1694,  1263,  1458,  1303,  1485,   534,   730, 
-	  926,  1121,  1304,  1330,   535,   731,  1708,  1317, 
-	 1499,   340,   536,   718,  1109,  1123,  1318,  1124, 
-	 1319,  1305,  1513,   733,   915,  1111,  1125,  1320, 
-	 1331,  1514,  1526,  1332,  1515,   746,  1137,   355, 
-	  551,   942,  1138,  1333,  1527,  1722,  1500,  1540, 
-	 1709,   342,   538,   916,  1307,   930,  1112,  1126, 
-	 1321,   747,   356,   552,   748,   943,  1139,  1334, 
-	  524,  1308,  1322,  1516,   944,  1335,  1528,  1501, 
-	 1918,  1345,  1529,  1140,  1346,  1530,  1502,  1503, 
-	 1517,  1336,  1347,  1531,   329,   342,   343,   525, 
-	  538,   721,   733,   917,   930,   539,   735,  1113, 
-	  330,   344,   526,   722,   918,   931,   540,   736, 
-	 1114,   355,   356,   551,   746,  1125,  1126,  1322, 
-	  357,   552,   748,   932,  1127,  1323,   747,   942, 
-	  943,   944,   553,   749,  1128,   345,   358,   541, 
-	  723,   737,   919,   945,  1324,  1140,   554,   750, 
-	  933,  1141,   370,  1139,  1336,   371,   566,   946, 
-	 1337,   957,   958,   567,   763,  1142,   359,   372, 
-	  555,   751,   959,  1338,  1309,  1310,  1321,  1138, 
-	 1115,  1129,  1335,  1152,  1153,  1154,   568,   947, 
-	 1155,   346,   542,   738,   934,   333,   360,   515, 
-	  529,   711,   725,   907,   921,  1103,  1130,  1326, 
-	  347,   543,  1117,   739,   935,   334,   361,   516, 
-	  530,   712,   726,   908,   922,  1104,  1131,  1327, 
-	  348,   544,  1118,   359,   555,   751,   556,   752, 
-	  557,   753,   740,   936,   947,   948,   949,  1132, 
-	 1144,  1145,   362,  1328,  1340,   570,   375,  1341, 
-	  558,   754,   569,   765,   766,   961,   962,   767, 
-	 1157,  1299,  1313,  1300,  1314,  1143,  1158,  1159, 
-	 1342,  1522,  1523,  1339,  1524,  1536,  1537,  1353, 
-	 1354,  1355,  1495,  1509,  1496,  1510,  1538,  1330, 
-	 1526,   534,   535,   730,   731,   926,  1121,  1123, 
-	 1317,  1318,  1331,  1513,  1514,  1540,  1722,  1319, 
-	 1332,   746,   942,  1137,  1333,  1527,   355,   551, 
-	  747,  1138,  1345,  1528,   943,  1139,  1334,  1358, 
-	 1346,  1529,  1736,  1152,  1347,  1541,  1554,   957, 
-	 1348,  1542,  1709,  1723,  1543,  1737,  1360,  1544, 
-	 1738,  1724,  1555,  1739,  1932,  1933,  1556,  1919, 
-	 1725,  1934,  1946,  1920,  2128,  1740,  1751,  1935, 
-	  355,   551,   746,   747,   942,   943,  1137,  1138, 
-	 1139,  1333,  1334,   356,   552,   748,   944,  1140, 
-	 1335,  1345,  1346,  1529,   370,   566,   957,  1152, 
-	 1336,  1347,  1530,  1153,  1348,  1542,   958,  1154, 
-	 1349,  1531,  1543,  1350,  1360,  1544,   357,   553, 
-	  749,   945,   371,   567,   763,   959,  1155,  1361, 
-	 1362,  1141,  1545,  1351,  1546,  1541,  1555,  1556, 
-	 1557,  1364,   410,   605,   606,   801,   802,   998, 
-	  411,   607,   803,   999,   412,   426,   608,   662, 
-	  804,   844,  1000,  1040,  1053,  1195,  1209,  1390, 
-	 1387,   858,   871,  1196,  1430,   663,   845,  1041, 
-	 1054,  1223,  1585,  1598,   859,  1263,  1418,  1431, 
-	 1597,  1611,  1014,  1405,  1444,  1599,  1583,  1612, 
-	 1625,  1210,  1392,  1432,  1445,  1587,  1600,  1613, 
-	 1626,  1780,  1639,  1419,  1458,  1601,  1614,  1627, 
-	 1640,  1795,  1055,  1264,  1433,  1446,  1459,  1653, 
-	 1460,  1615,  1628,  1641,  1808,  1796,  1809,  1822, 
-	 1447,  1629,  1642,  1655,  1810,  1823,   413,   427, 
-	  609,   623,   650,   663,   804,   805,   845,   846, 
-	 1000,  1001,  1014,  1028,  1041,  1196,  1209,  1210, 
-	 1223,   245,   637,   664,   819,   833,  1015,  1042, 
-	 1197,  1224,   259,   414,   455,   610,   624,   651, 
-	  806,   847,  1002,  1029,  1211,   246,   442,   469, 
-	  638,   665,   820,   834,  1016,  1043,  1198,  1225, 
-	  677,   859,   860,  1055,   678,  1056,  1238,   273, 
-	  861,   260,   456,   483,   652,   679,   848,  1030, 
-	 1057,  1212,  1239,  1392,  1393,   873,  1406,  1252, 
-	 1407,   875,  1044,  1226,  1253,  1394,   446,   614, 
-	  642,   810,  1006,  1202,   264,   460,   656,   852, 
-	 1034,   278,   292,   474,   488,   866,  1048,  1230, 
-	 1244,   265,   684,   839,   880,  1062,  1076,  1203, 
-	 1258,  1412,  1426,   306,  1272,  1398,  1440,  1399, 
-	 1454,  1413,   867,  1245,  1595,  1594,  1608,  1622, 
-	 1636,  1468,  1650,  1609,  1441,  1790,  1804,  1818, 
-	 1832,  1664,  1791,  1623,   698,   894,  1090,  1286, 
-	  881,  1077,  1273,  1482,  1637,  1469,  1846,  1860, 
-	 1678,  1651,   455,   623,   637,   650,   651,   663, 
-	  664,   677,   678,   819,   833,   846,   859,   860, 
-	  873,  1001,  1015,  1028,  1029,  1041,  1042,  1055, 
-	 1056,  1197,  1211,  1224,  1238,   273,   469,   665, 
-	  847,   861,  1043,  1070,  1225,  1252,   287,   442, 
-	  456,   483,   624,   638,   652,   679,   820,   834, 
-	  875,  1002,  1016,  1030,  1057,  1198,  1212,  1239, 
-	  274,   470,   666,   848,   862,  1044,  1071,  1226, 
-	 1253,   495,   691,  1265,   496,   692,  1266,   288, 
-	  484,   497,   680,   693,   876,  1058,  1240,  1267, 
-	 1420,  1407,  1421,  1408,   887,  1434,   888,  1435, 
-	  889,  1072,  1254,  1422,   288,   457,   470,   484, 
-	  639,   652,   666,   680,   834,   835,   848,   862, 
-	  876,  1003,  1017,  1030,  1031,  1044,  1058,  1199, 
-	 1213,  1226,  1240,   275,   471,   667,   849,   863, 
-	 1045,  1072,  1227,  1254,   289,   458,   485,   640, 
-	  654,   681,   836,   877,  1004,  1018,  1032,  1059, 
-	 1200,  1214,  1241,   668,   850,   864,  1046,  1073, 
-	 1228,  1255,   498,   694,  1268,   290,   486,   499, 
-	  695,   878,  1060,  1242,  1269,  1422,  1409,  1423, 
-	 1410,  1436,   890,  1437,   891,  1074,  1256,  1424, 
-	  290,   486,   654,   668,   836,   850,   864,   878, 
-	 1032,  1046,  1060,  1228,  1242,   304,   500,   613, 
-	  641,   809,   823,  1005,  1019,  1074,  1201,  1256, 
-	 1270,   263,   277,   459,   473,   655,   696,   837, 
-	  851,  1033,  1215,  1229,   669,   865,  1047,   291, 
-	  487,   683,   879,  1061,  1243,   305,   446,   501, 
-	  614,   642,   810,  1006,  1075,  1202,  1257,  1271, 
-	  264,   278,   460,   474,   656,   697,   852,  1034, 
-	 1230,   892,  1088,   893,   292,   488,   866,  1048, 
-	 1089,  1244,  1424,  1438,  1452,  1397,  1411,  1425, 
-	 1439,  1453,  1398,  1412,  1466,  1284,  1467,   684, 
-	 1062,  1285,  1426,   300,   469,   483,   495,   496, 
-	  651,   665,   678,   679,   691,   692,   847,   860, 
-	  861,   887,   888,  1029,  1043,  1056,  1057,  1070, 
-	 1225,  1239,  1252,  1265,  1266,   875,  1071,  1084, 
-	 1253,   301,   470,   484,   497,   652,   666,   680, 
-	  693,   848,   862,   889,  1030,  1044,  1058,  1226, 
-	 1240,  1267,   876,  1072,  1085,  1254,  1279,   510, 
-	  706,  1280,   302,   498,   511,   694,   707,   890, 
-	 1268,  1281,   314,   902,  1097,  1098,   315,   903, 
-	 1086,  1099,  1293,   524,  1294,   316,   512,   525, 
-	  708,   721,   904,  1282,  1295,  1448,  1435,  1449, 
-	 1436,  1462,  1463,  1450,  1464,   915,  1476,   916, 
-	 1477,   917,  1100,   302,   471,   485,   498,   667, 
-	  680,   681,   694,   849,   862,   863,   876,   890, 
-	 1031,  1045,  1058,  1059,  1072,  1227,  1241,  1254, 
-	 1268,   877,  1073,  1086,  1255,   303,   486,   499, 
-	  654,   668,   695,   850,   864,   891,  1032,  1046, 
-	 1060,  1228,  1242,  1269,   878,  1074,  1087,  1256, 
-	  512,   708,  1282,   304,   500,   513,   696,   709, 
-	  892,  1270,  1283,   316,   904,  1100,   317,   905, 
-	 1088,  1101,   526,   722,  1296,   318,   514,   527, 
-	  710,   723,   906,  1284,  1297,  1450,  1437,  1451, 
-	 1438,  1464,  1465,  1452,  1466,  1478,   918,  1479, 
-	  919,  1102,   304,   500,   696,   864,   878,   892, 
-	 1060,  1074,  1256,  1270,   318,   459,   473,   514, 
-	  641,   655,   669,   837,   851,  1019,  1033,  1047, 
-	 1088,  1215,  1229,  1284,   277,   291,   487,   683, 
-	  710,   865,   879,  1061,  1243,  1257,  1075,   305, 
-	  501,   697,   893,  1271,   319,   460,   474,   515, 
-	  642,   656,   852,  1034,  1048,  1089,  1230,  1285, 
-	  278,   292,   488,   684,   711,   866,   880,  1062, 
-	 1244,  1258,   906,  1102,   907,   306,  1076,  1103, 
-	 1272,   332,   528,  1298,   724,   333,   529,  1299, 
-	  698,   725,   894,   920,  1116,   921,   320,   516, 
-	 1090,  1117,  1286,  1452,  1466,  1411,  1425,  1439, 
-	 1453,  1467,  1412,  1426,  1440,  1480,  1481,  1454, 
-	 1468,  1494,  1312,  1495,   712,  1313,   495,   691, 
-	  887,  1082,  1264,  1265,  1278,  1289,  1303,  1473, 
-	  496,   534,   692,   718,   888,  1070,  1084,  1109, 
-	 1266,  1279,  1292,  1304,  1474,   730,   926,  1121, 
-	 1485,   510,   535,   706,   731,  1097,  1280,  1293, 
-	 1305,  1487,  1317,   340,   536,   915,  1111,  1123, 
-	 1318,  1460,  1461,  1475,  1499,  1488,  1500,  1124, 
-	 1307,  1319,  1501,  1668,  1669,  1489,  1513,  1320, 
-	 1502,  1514,  1656,  1670,  1681,  1682,  1683,  1684, 
-	 1696,  1503,  1515,  1697,  1671,  1695,  1685,  1709, 
-	 1516,  1698,  1710,  1865,  1866,  1878,  1879,  1880, 
-	 1892,  1699,  1711,  1893,   539,   721,   735,   917, 
-	  930,  1113,  1125,  1126,  1309,  1321,  1322,   931, 
-	 1127,   540,   722,   736,   918,  1114,  1310,  1323, 
-	  932,  1128,   343,   355,   356,   551,   552,   746, 
-	  747,   748,   942,   943,  1138,  1518,   344,   357, 
-	  553,   749,   944,  1140,  1324,  1519,  1139,  1334, 
-	 1335,  1336,   945,  1141,   358,   541,   554,   737, 
-	  750,   933,  1115,  1129,  1311,  1337,  1520,   946, 
-	 1142,  1325,   370,   566,   957,  1152,  1532,   371, 
-	  567,   763,   958,  1154,  1338,  1533,  1153,  1348, 
-	 1349,  1350,   959,  1155,   372,   555,   568,   751, 
-	  764,   947,  1143,  1351,  1534,  1505,  1506,  1517, 
-	 1531,   960,  1339,   541,   723,   736,   737,   919, 
-	  932,  1115,  1128,  1311,  1324,   933,  1129,   542, 
-	  724,   738,   920,  1116,  1312,  1325,   934,  1130, 
-	  345,   358,   553,   554,   749,   750,   945,  1141, 
-	 1520,   346,   359,   555,   751,   946,  1142,  1326, 
-	 1521,  1337,  1338,   947,  1143,   360,   556,   752, 
-	 1339,  1522,   948,  1144,   372,   567,   568,   763, 
-	  764,   959,  1155,  1534,   569,   765,   960,  1156, 
-	 1340,  1535,  1351,  1352,   961,  1157,   570,   766, 
-	 1353,  1536,  1507,  1508,   962,   789,   790,   984, 
-	  985,   986,  1180,  1181,  1375,  1376,  1182,  1377, 
-	 1378,   410,   605,   606,   801,   802,   998,  1572, 
-	 1573,   411,   607,   791,   803,   987,   999,  1183, 
-	 1574,   412,   608,   804,  1000,  1195,  1379,  1390, 
-	 1196,  1209,   844,  1014,  1040,  1210,  1223,  1585, 
-	 1392,  1405,  1418,  1571,  1768,  1769,  1770,  1598, 
-	 1575,  1587,  1599,  1600,  1406,  1419,  1431,  1588, 
-	 1601,  1613,  1430,  1432,  1444,  1612,  1614,  1626, 
-	 1795,   791,   986,   987,  1182,  1377,  1378,  1183, 
-	  792,   988,  1379,  1184,   595,   607,   802,   803, 
-	  998,  1574,   596,   804,  1000,  1380,  1575,   412, 
-	  608,   999,  1195,  1196,   413,   609,   805,  1001, 
-	 1014,   623,   793,   819,   989,  1185,  1197,  1576, 
-	  426,  1209,  1390,  1210,  1392,   427,  1015,  1028, 
-	  414,   610,   637,   806,   833,  1002,  1211,  1381, 
-	 1393,   650,   845,   846,  1041,  1223,  1224,  1405, 
-	 1406,   624,   651,   820,   847,  1016,  1029,  1198, 
-	 1225,  1407,  1042,  1043,  1212,  1573,  1419,  1588, 
-	 1394,  1589,  1238,  1420,  1239,  1421,  1770,  1771, 
-	 1772,  1587,  1577,  1601,  1602,  1603,  1408,  1769, 
-	 1418,  1600,  1433,  1615,  1784,  1590,  1785,  1434, 
-	 1616,  1435,  1617,   793,   988,   989,  1184,  1380, 
-	 1185,   794,   990,  1381,  1186,   597,   805,  1001, 
-	 1576,   598,   806,  1002,  1382,  1577,   414,   610, 
-	  819,  1015,  1197,   624,   820,  1198,   415,   611, 
-	  807,  1003,  1016,  1199,  1578,   833,  1029,  1211, 
-	 1393,   638,   834,  1212,  1394,  1017,  1030,   612, 
-	  639,   808,   835,  1004,  1213,  1395,   652,   848, 
-	 1226,  1408,   849,  1018,  1031,  1200,  1227,  1409, 
-	 1044,  1045,  1214,  1225,  1407,  1590,  1396,  1591, 
-	 1240,  1422,  1241,  1423,  1772,  1773,  1774,  1589, 
-	 1604,  1605,  1410,  1421,  1603,  1786,  1592,  1787, 
-	 1436,  1618,  1437,  1619,   990,  1186,  1382,   599, 
-	  795,  1578,   403,   612,   808,   991,  1187,  1383, 
-	  600,   796,  1579,   613,   809,   992,  1188,   807, 
-	 1003,   220,   234,   611,   639,   835,  1004,  1017, 
-	 1199,  1200,  1213,  1395,   221,   823,  1005,  1201, 
-	 1384,  1031,  1018,  1019,   640,   836,  1214,  1396, 
-	  654,   850,  1032,  1228,  1410,  1046,   641,   837, 
-	 1215,  1397,   655,   851,  1033,  1229,  1411,  1580, 
-	  458,   668,   864,  1060,  1242,  1424,  1592,   459, 
-	  473,   614,   669,   810,   865,  1006,  1047,  1061, 
-	 1202,  1243,  1425,  1593,   878,  1256,  1438,   683, 
-	  879,  1257,  1439,  1774,  1775,  1227,  1409,  1606, 
-	 1607,  1776,  1074,  1620,  1075,  1398,  1621,  1591, 
-	 1788,  1789,  1270,  1452,  1634,  1271,  1453,  1635, 
-	 1970,  1971,  1423,  1605,  1802,  1803,  1972,  1816, 
-	 1412,  1594,  1817,   796,   992,  1188,  1384,  1580, 
-	  614,   810,  1006,  1202,  1385,  1776,   446,   642, 
-	 1398,  1581,   837,   851,  1019,  1033,  1047,  1215, 
-	 1229,  1397,  1411,   656,   852,  1034,  1230,  1412, 
-	 1048,  1203,   460,   474,   866,  1062,  1244,  1426, 
-	 1594,   488,   684,   880,  1076,  1258,  1440,  1608, 
-	 1243,  1425,  1777,  1399,  1622,  1593,  1607,  1790, 
-	 1272,  1454,  1636,  1413,  1972,  1439,  1621,  1973, 
-	 1804,  1595,  1818,   804,   844,   999,  1000,  1014, 
-	 1040,  1053,  1195,  1196,  1209,  1223,  1390,   845, 
-	  858,  1028,  1041,  1054,  1210,  1224,  1392,  1405, 
-	 1418,   662,   871,  1431,   650,   663,   846,   859, 
-	 1042,  1055,  1238,  1406,  1419,  1432,  1587,  1263, 
-	 1445,  1600,  1264,  1420,  1433,  1446,  1588,  1601, 
-	 1599,  1613,  1614,  1627,  1434,  1447,  1602,  1615, 
-	 1628,  1783,  1459,  1641,  1796,  1460,  1616,  1629, 
-	 1642,  1784,  1797,   650,   805,   819,   845,   846, 
-	  859,  1001,  1014,  1015,  1028,  1041,  1042,  1055, 
-	 1196,  1197,  1210,  1223,  1224,  1238,  1392,  1405, 
-	 1406,  1419,   637,   833,   860,  1029,  1056,  1211, 
-	 1225,  1393,  1420,   651,   806,   820,   847,  1002, 
-	 1016,  1043,  1198,  1239,  1407,   638,   834,   861, 
-	 1030,  1057,  1212,  1226,  1394,  1421,   664,   873, 
-	 1252,  1433,  1070,  1434,   665,  1253,   652,   848, 
-	  875,  1044,  1071,  1240,  1408,  1435,  1588,  1589, 
-	 1265,  1447,  1602,  1266,  1448,  1603,  1267,  1422, 
-	 1449,  1590,  1601,  1615,  1616,  1617,  1629,  1630, 
-	 1436,  1604,  1631,  1784,  1785,  1461,  1643,  1798, 
-	 1462,  1644,  1799,  1463,  1618,  1645,  1786,   652, 
-	  807,   834,   848,  1003,  1016,  1017,  1030,  1044, 
-	 1198,  1199,  1212,  1226,  1240,  1394,  1408,   639, 
-	  835,   862,  1031,  1058,  1213,  1227,  1395,  1422, 
-	  808,   849,  1004,  1018,  1045,  1200,  1241,  1409, 
-	  640,   836,   863,  1032,  1059,  1214,  1228,  1396, 
-	 1423,   666,  1254,   876,  1072,  1436,   667,  1255, 
-	  654,   850,   877,  1046,  1073,  1242,  1410,  1437, 
-	 1590,  1591,  1604,  1268,  1450,  1605,  1269,  1424, 
-	 1451,  1592,  1618,  1619,  1632,  1438,  1606,  1633, 
-	 1786,  1787,  1800,  1464,  1646,  1801,  1465,  1620, 
-	 1647,  1788,   654,   836,   850,  1018,  1032,  1046, 
-	 1200,  1214,  1228,  1242,  1396,  1410,   668,   809, 
-	  864,   878,  1005,  1060,  1256,  1424,  1438,   613, 
-	  641,   823,   837,  1019,  1074,  1201,  1215,  1397, 
-	 1033,  1229,   655,   851,  1047,  1243,  1411,   669, 
-	  683,   810,   865,   879,  1006,  1061,  1257,  1425, 
-	 1439,   614,   642,  1075,  1202,  1398,  1270,  1452, 
-	 1271,  1453,   656,   852,  1034,  1230,  1412,  1592, 
-	 1606,  1620,  1593,  1607,  1621,  1634,  1466,  1635, 
-	 1048,  1467,  1594,  1648,  1649,  1244,  1426,  1608, 
-	 1788,  1802,  1816,  1789,  1803,  1817,  1830,  1662, 
-	 1831,  1663,  1790,   663,   845,   846,   858,   859, 
-	  871,  1014,  1028,  1040,  1041,  1042,  1053,  1054, 
-	 1055,  1209,  1210,  1223,  1224,  1263,  1264,  1392, 
-	 1405,  1406,  1418,  1419,  1431,  1432,  1445,   664, 
-	  677,   860,   873,  1056,  1238,  1252,  1265,  1420, 
-	 1433,  1446,  1459,   678,  1070,  1082,  1266,  1434, 
-	 1447,  1460,  1601,  1614,  1602,  1615,  1628,  1278, 
-	 1448,  1461,  1616,  1629,  1588,  1627,  1641,  1642, 
-	 1655,  1462,  1630,  1643,  1656,  1797,  1810,  1798, 
-	 1811,  1473,  1824,  1474,  1644,  1657,  1812,  1825, 
-	  678,   833,   847,   860,   873,  1015,  1029,  1042, 
-	 1043,  1055,  1056,  1070,  1211,  1224,  1225,  1238, 
-	 1252,  1265,  1266,  1393,  1407,  1420,  1433,  1434, 
-	 1447,   665,   861,  1057,  1239,  1253,  1421,  1448, 
-	  679,   834,   848,   875,  1016,  1030,  1044,  1071, 
-	 1212,  1226,  1267,  1394,  1408,  1435,   666,   862, 
-	 1058,  1240,  1254,  1422,  1449,   887,  1461,   888, 
-	 1084,  1462,   680,   876,   889,  1072,  1085,  1268, 
-	 1436,  1463,  1616,  1603,  1617,  1604,  1279,  1630, 
-	 1280,  1631,  1281,  1450,  1618,  1589,  1629,  1643, 
-	 1644,  1590,  1645,  1657,  1658,  1464,  1632,  1659, 
-	 1812,  1799,  1813,  1800,  1475,  1826,  1476,  1827, 
-	 1477,  1646,  1814,   680,   835,   849,   862,   876, 
-	 1017,  1031,  1044,  1045,  1058,  1072,  1213,  1226, 
-	 1227,  1240,  1254,  1268,  1395,  1409,  1422,  1436, 
-	  667,   863,  1059,  1241,  1255,  1423,  1450,   681, 
-	  836,   850,   877,  1018,  1032,  1046,  1073,  1214, 
-	 1228,  1269,  1396,  1410,  1437,   668,   864,  1060, 
-	 1242,  1256,  1424,  1451,   890,  1086,  1464,   878, 
-	  891,  1074,  1087,  1270,  1438,  1465,  1618,  1605, 
-	 1619,  1606,  1632,  1282,  1633,  1283,  1452,  1620, 
-	 1591,  1646,  1592,  1647,  1660,  1466,  1634,  1661, 
-	 1814,  1801,  1815,  1802,  1828,  1478,  1829,  1479, 
-	 1648,  1816,   864,   878,  1046,  1060,  1074,  1228, 
-	 1242,  1256,  1270,  1424,  1438,   696,   823,   837, 
-	  892,  1005,  1019,  1033,  1201,  1215,  1397,  1452, 
-	 1466,   641,   655,   669,   851,   865,  1047,  1088, 
-	 1229,  1243,  1411,  1425,  1061,  1257,   683,   879, 
-	 1075,  1271,  1439,   697,   893,  1006,  1034,  1202, 
-	 1398,  1453,  1467,   642,   656,   852,   866,  1048, 
-	 1089,  1230,  1244,  1412,  1426,  1284,  1285,   684, 
-	  880,  1062,  1258,  1440,  1620,  1634,  1648,  1593, 
-	 1607,  1621,  1635,  1649,  1594,  1608,  1662,  1480, 
-	 1663,  1076,  1481,  1622,  1272,  1454,  1636,  1816, 
-	 1830,  1844,  1789,  1803,  1817,  1831,  1845,  1790, 
-	 1804,  1858,  1676,  1859,  1677,  1818,  1624,  1638, 
-	 1652,  1387,  1583,  1597,  1598,  1611,  1779,  1053, 
-	 1430,  1444,  1585,  1612,  1625,   871,  1431,   844, 
-	  858,  1040,  1054,  1263,  1418,  1445,  1458,  1626, 
-	 1639,  1680,  1807,  1862,  1432,  1459,  1640,  1653, 
-	 1289,  1264,  1446,  1694,  1821,  1460,  1485,  1627, 
-	 1641,  1655,  1667,  1835,  1876,  1473,  1599,  1613, 
-	 1849,  1628,  1642,  1668,  1836,  1850,  1512,  1822, 
-	 2030,  1614,  1809,  1823,  1837,  1669,  1681,  1863, 
-	 1780,  1795,  1808,  1975,  1989,  1990,  2017,  1991, 
-	 2058,  2005,  2018,  2031,  2019,  2032,  2045,   858, 
-	  871,  1040,  1053,  1054,  1263,  1418,  1431,  1432, 
-	 1444,  1445,  1458,   859,   873,  1041,  1055,  1264, 
-	 1419,  1433,  1446,  1459,  1082,  1265,  1278,  1447, 
-	 1460,  1289,  1473,  1485,  1641,  1655,   887,  1461, 
-	 1303,  1474,  1668,  1279,  1292,  1627,  1640,  1628, 
-	 1642,  1656,  1667,  1304,  1475,  1487,  1669,  1614, 
-	 1653,  1615,  1629,  1643,  1657,  1681,  1488,  1670, 
-	 1682,  1823,  1836,  1824,  1837,  1850,  1838,  1851, 
-	 1852,  1499,  1864,  1500,  1671,  1683,  1865,   860, 
-	  873,  1042,  1055,  1056,  1070,  1082,  1238,  1252, 
-	 1264,  1265,  1278,  1420,  1433,  1434,  1446,  1447, 
-	 1459,  1460,   691,   887,  1266,  1279,  1448,  1461, 
-	 1473,   692,   888,  1084,  1280,  1462,  1474,  1292, 
-	 1097,  1293,  1475,  1109,  1487,   706,   902,  1098, 
-	 1294,  1476,  1488,  1629,  1642,  1630,  1643,  1656, 
-	 1644,  1657,  1658,  1305,  1670,  1489,  1671,  1616, 
-	 1655,  1669,  1683,  1490,  1672,  1684,  1825,  1838, 
-	 1826,  1839,  1852,  1840,  1853,  1854,  1501,  1866, 
-	 1502,  1685,  1867,   692,   861,   875,   887,   888, 
-	 1043,  1057,  1070,  1071,  1084,  1239,  1252,  1253, 
-	 1266,  1279,  1280,  1421,  1435,  1448,  1461,  1462, 
-	 1267,  1449,   693,   862,   876,   889,  1044,  1058, 
-	 1072,  1085,  1240,  1254,  1281,  1422,  1436,  1463, 
-	 1268,  1450,  1097,  1475,   902,  1098,  1476,   694, 
-	  890,   903,  1086,  1099,  1282,  1464,  1477,   706, 
-	 1293,  1294,   707,  1295,   915,  1111,  1489,   916, 
-	 1112,  1490,   708,   904,   917,  1100,  1113,  1296, 
-	 1478,  1491,  1644,  1631,  1645,  1632,  1658,  1659, 
-	 1646,  1660,  1307,  1672,  1308,  1673,  1309,  1617, 
-	 1657,  1618,  1671,  1685,  1686,  1492,  1674,  1687, 
-	 1840,  1827,  1841,  1828,  1854,  1855,  1842,  1856, 
-	 1503,  1868,  1504,  1869,  1505,   694,   863,   877, 
-	  890,  1045,  1059,  1072,  1073,  1086,  1241,  1254, 
-	 1255,  1268,  1282,  1423,  1437,  1450,  1464,  1269, 
-	 1451,   695,   864,   878,   891,  1046,  1060,  1074, 
-	 1087,  1242,  1256,  1283,  1424,  1438,  1465,  1270, 
-	 1452,   904,  1100,  1478,   696,   892,   905,  1088, 
-	 1101,  1284,  1466,  1479,   708,  1296,   709,  1297, 
-	  918,  1114,  1492,   710,   906,   919,  1102,  1115, 
-	 1298,  1480,  1493,  1646,  1633,  1647,  1634,  1660, 
-	 1661,  1648,  1662,  1674,  1310,  1675,  1311,  1619, 
-	 1620,  1688,  1494,  1676,  1689,  1842,  1829,  1843, 
-	 1830,  1856,  1857,  1844,  1858,  1870,  1506,  1871, 
-	 1507,   696,   892,  1074,  1088,  1256,  1270,  1284, 
-	 1452,  1466,   710,   851,   865,   906,  1033,  1047, 
-	 1061,  1229,  1243,  1411,  1425,  1480,   669,   683, 
-	  879,  1075,  1102,  1257,  1271,  1439,  1453,   697, 
-	  893,  1089,  1285,  1467,   711,   852,   866,   907, 
-	 1034,  1048,  1062,  1230,  1244,  1412,  1426,  1481, 
-	  684,   880,  1076,  1103,  1258,  1272,  1440,  1454, 
-	 1298,  1299,   698,   894,  1468,   724,   920,  1494, 
-	 1116,   725,   921,  1495,  1090,  1117,  1286,  1312, 
-	 1313,   712,   908,  1482,  1648,  1662,  1607,  1621, 
-	 1635,  1649,  1663,  1608,  1622,  1636,  1676,  1677, 
-	 1650,  1664,  1690,  1508,  1691,  1104,  1509,  1300, 
-	 1678,  1844,  1858,  1803,  1817,  1831,  1845,  1859, 
-	 1804,  1818,  1832,  1872,  1873,  1846,  1860,  1886, 
-	 1704,  1887,  1705,   880,  1062,  1076,  1244,  1258, 
-	 1272,  1440,  1454,   698,   894,  1090,  1286,  1468, 
-	  712,   867,   908,  1245,  1413,  1482,   881,  1077, 
-	 1104,  1273,  1441,  1300,   699,   895,  1469,  1091, 
-	 1287,   726,   922,  1496,  1118,  1314,   713,   909, 
-	 1483,  1105,  1301,  1636,  1650,  1664,  1609,  1623, 
-	 1637,  1678,  1651,  1692,  1510,  1497,  1832,  1846, 
-	 1860,  1833,  1874,  1847,  1888,  1706,  1875,  1412, 
-	 1426,  1594,  1608,  1622,  1790,  1804,  1399,  1818, 
-	 1595,  1791,  1986,  2000,  2014,  2028,  2042,  2056, 
-	 2070,  1524,  1902,  2084,  2071,  2098,  1652,  1680, 
-	 1862,  1625,  1639,   871,  1053,  1263,  1289,  1430, 
-	 1431,  1444,  1445,  1458,  1459,  1512,  1611,  1612, 
-	 1626,  1640,  1653,  1667,  1694,  1821,  1835,  1876, 
-	 1485,  1303,  1473,  1304,  1109,  1121,  1317,  1487, 
-	 1499,  1708,   730,   926,  1305,  1318,  1500,  1849, 
-	 1668,  1681,  1682,  1330,  1501,  1513,  1695,  1890, 
-	 1669,  1863,  1683,  1904,  1514,  1696,  1864,  1877, 
-	 1878,  1526,  1697,  1709,  1891,   718,   902,  1084, 
-	 1097,  1098,  1109,  1279,  1280,  1292,  1293,  1305, 
-	 1475,  1476,  1487,  1488,   915,  1111,  1294,  1307, 
-	 1489,  1123,  1501,   916,  1112,  1124,  1308,  1490, 
-	 1502,  1319,  1320,   733,  1125,  1321,  1503,  1515, 
-	  930,  1126,  1322,  1504,  1516,  1671,  1672,  1684, 
-	 1685,  1686,  1698,  1517,  1699,  1683,  1697,  1711, 
-	 1518,  1700,  1712,  1867,  1868,  1880,  1881,  1882, 
-	 1894,  1713,  1895,   903,   915,   916,  1085,  1098, 
-	 1099,  1111,  1112,  1281,  1294,  1307,  1308,  1477, 
-	 1489,  1490,  1295,   721,   904,   917,  1086,  1100, 
-	 1113,  1282,  1309,  1478,  1491,  1296,  1125,  1503, 
-	  930,  1126,  1504,   722,   918,   931,  1114,  1127, 
-	 1310,  1492,  1505,  1321,  1322,   735,  1323,  1517, 
-	 1518,   736,   932,  1128,  1324,  1506,  1519,  1673, 
-	 1674,  1686,  1687,  1688,  1700,  1701,  1685,  1699, 
-	 1713,  1714,  1520,  1702,  1715,  1869,  1870,  1882, 
-	 1883,  1884,  1896,  1897,   722,   905,   918,  1087, 
-	 1100,  1101,  1114,  1283,  1296,  1310,  1479,  1492, 
-	 1297,   723,   906,   919,  1088,  1102,  1115,  1284, 
-	 1311,  1480,  1493,  1298,   932,  1128,  1506,   724, 
-	  920,   933,  1116,  1129,  1312,  1494,  1507,   736, 
-	 1324,   737,  1325,  1520,   738,   934,  1130,  1326, 
-	 1508,  1521,  1675,  1676,  1688,  1689,  1690,  1702, 
-	 1703,  1716,  1522,  1704,  1717,  1871,  1872,  1884, 
-	 1885,  1886,  1898,  1899,   724,   920,  1102,  1116, 
-	 1298,  1312,  1494,   738,   893,   934,  1089,  1285, 
-	 1467,  1508,   711,   907,  1103,  1130,  1299,  1481, 
-	  725,   921,  1117,  1313,  1495,   739,   894,   935, 
-	 1090,  1286,  1468,  1509,   712,   908,  1104,  1131, 
-	 1300,  1482,  1326,  1327,   726,   922,  1496,  1522, 
-	 1523,  1118,  1314,   740,   936,  1510,  1690,  1663, 
-	 1677,  1691,  1664,  1678,  1704,  1705,  1692,  1718, 
-	 1719,  1132,  1328,  1706,  1886,  1859,  1873,  1887, 
-	 1860,  1874,  1900,  1901,  1888,  1914,  1915,   908, 
-	 1104,  1286,  1300,  1482,   726,   922,  1118,  1314, 
-	 1496,   740,   895,   936,  1091,  1287,  1469,  1510, 
-	  713,   909,  1105,  1132,  1301,  1483,  1328,   727, 
-	  923,  1497,  1119,  1315,  1524,   741,  1511,  1133, 
-	 1329,  1678,  1692,  1706,  1720,  1707,  1525,  1874, 
-	 1888,  1875,  1902,  1916,  1512,  1694,  1708,  1121, 
-	 1289,  1303,  1330,  1485,  1499,  1681,  1304,  1317, 
-	  926,  1500,  1109,  1123,  1305,  1318,  1501,  1513, 
-	 1526,  1319,  1514,  1695,  1709,  1124,  1320,  1331, 
-	 1502,  1515,  1710,  1722,  1332,  1527,  1137,  1540, 
-	 1333,  1528,  1723,   942,  1138,  1334,  1345,  1529, 
-	 1724,  1696,  1516,  1697,  1711,  1918,  1736,  1905, 
-	 1346,  1530,  1541,  1725,  1904,  1682,  1877,  1891, 
-	 1698,  1906,  1919,  1920,  1892,  1712,  1893,  1907, 
-	 2114,  1932,  1542,  1726,  1737,  1921,  1123,  1124, 
-	 1305,  1318,  1319,  1501,  1502,  1513,  1514,  1111, 
-	 1125,  1307,  1320,  1503,  1515,  1321,  1516,  1137, 
-	 1331,  1332,  1527,  1710,  1711,   746,   930,   942, 
-	 1126,  1138,  1322,  1333,  1504,  1517,  1528,  1712, 
-	 1334,   943,  1139,  1529,  1335,  1530,  1345,  1346, 
-	 1541,  1724,  1725,   944,  1140,  1152,  1336,  1347, 
-	 1531,  1542,  1726,  1697,  1698,  1518,  1699,  1713, 
-	 1348,  1532,  1543,  1727,  1709,  1723,  1906,  1907, 
-	 1700,  1908,  1737,  1920,  1921,  1738,  1922,  1893, 
-	 1894,  1714,  1895,  1909,  1544,  1728,  1739,  1923, 
-	  930,  1112,  1124,  1125,  1126,  1307,  1308,  1320, 
-	 1321,  1503,  1504,  1515,  1516,  1322,  1517,  1137, 
-	  942,  1138,  1518,   551,   746,   747,   943,  1139, 
-	 1332,  1333,  1334,  1528,  1529,  1712,  1713,   552, 
-	  748,   931,   944,  1127,  1140,  1323,  1335,  1505, 
-	 1530,  1714,  1336,  1531,  1152,  1532,   957,  1153, 
-	 1346,  1347,  1348,  1542,  1543,  1726,  1727,   566, 
-	  945,   958,  1141,  1154,  1337,  1349,  1544,  1728, 
-	 1699,  1700,  1519,  1350,  1533,  1545,  1711,  1724, 
-	 1725,  1908,  1909,  1701,  1910,  1738,  1739,  1922, 
-	 1923,  1740,  1924,  1895,  1896,  1715,  1546,  1729, 
-	 1741,   931,  1113,  1126,  1127,  1309,  1322,  1505, 
-	 1517,  1518,  1323,   932,  1114,  1128,  1310,  1506, 
-	 1519,  1324,   552,   735,   747,   748,   942,   943, 
-	  944,  1138,  1139,  1140,  1334,  1335,  1714,   553, 
-	  736,   749,   945,  1141,  1336,  1520,  1715,  1530, 
-	 1531,  1532,  1337,   554,   750,   933,   946,  1129, 
-	 1142,  1325,  1507,  1533,  1716,  1338,  1521,   566, 
-	  957,   958,  1152,  1153,  1154,  1348,  1349,  1728, 
-	  567,   763,   959,  1155,  1350,  1534,  1729,  1544, 
-	 1545,  1546,  1351,   568,   764,   947,   960,  1143, 
-	 1156,  1339,  1547,  1730,  1701,  1702,  1713,  1727, 
-	 1352,  1535,  1910,  1911,  1726,  1703,  1912,  1717, 
-	 1924,  1925,  1740,  1741,  1742,  1743,  1926,  1897, 
-	 1898,  1909,  1923,  1548,  1731,   933,  1115,  1128, 
-	 1129,  1311,  1324,  1507,  1520,  1325,   934,  1116, 
-	 1130,  1312,  1508,  1521,  1326,   554,   737,   750, 
-	  945,   946,  1141,  1142,  1337,  1716,   555,   738, 
-	  751,   947,  1143,  1338,  1522,  1717,  1533,  1534, 
-	 1339,   556,   752,   948,  1144,  1535,  1718,  1340, 
-	  568,   764,   959,   960,  1155,  1156,  1351,  1730, 
-	  569,   765,   961,  1157,  1352,  1536,  1731,  1547, 
-	 1548,  1353,   570,   766,   962,  1158,  1549,  1732, 
-	 1703,  1704,  1354,  1912,  1913,  1729,  1914,  1926, 
-	 1927,  1743,  1744,  1745,  1928,  1899,  1900,  1550, 
-	 1130,  1326,  1522,   556,   725,   739,   752,   921, 
-	  935,   948,  1117,  1144,  1299,  1313,  1495,  1509, 
-	 1718,  1131,  1327,  1523,   557,   726,   740,   753, 
-	  922,   936,   949,  1118,  1145,  1300,  1314,  1496, 
-	 1510,  1719,  1132,  1328,   947,  1143,  1339,  1340, 
-	 1341,  1524,  1535,  1536,  1537,   766,   962,   558, 
-	  754,   767,  1720,   570,  1158,  1732,  1354,  1159, 
-	 1733,   362,  1342,  1355,  1538,   961,  1157,  1353, 
-	 1549,  1550,  1551,  1691,  1705,  1692,  1706,  1734, 
-	 1914,  1915,  1731,  1916,  1928,  1929,  1745,  1746, 
-	 1747,  1887,  1901,  1888,  1902,  1930,  1345,  1346, 
-	 1347,  1530,  1541,  1152,  1348,  1531,  1542,   957, 
-	 1153,  1543,  1349,  1544,  1360,  1555,  1738,  1739, 
-	  958,  1154,  1350,  1361,  1545,  1556,  1740,  1362, 
-	 1546,  1557,  1741,  1726,  1737,  1727,  1751,  1934, 
-	 1935,  1936,  1742,  1753,  1937,  1532,   959,  1155, 
-	 1351,  1364,  1547,  1560,  1754,  1728,  1938,  1743, 
-	 1949,  1756,   983,  1178,  1179,  1375,  1571,  1376, 
-	 1624,  1387,  1572,  1638,  1583,  1768,  1597,  1598, 
-	 1611,  1779,  1652,  1585,  1780,  1573,  1807,  1975, 
-	 1769,  2030,  1989,  1375,  1376,  1571,  1377,  1572, 
-	 1573,  1768,  1387,  1583,  1378,  1574,  1769,  1597, 
-	 1779,   998,  1390,  1585,  1598,  1599,  1611,  1770, 
-	 1780,  1612,  1430,  1600,  1613,  1975,  1625,  1807, 
-	 1587,  1626,  1795,  1808,  1989,  1990,  1796,  1809, 
-	 1821,  1978,  1991,  1639,  1822,  1783,  1624,  1638, 
-	 1652,  2030,  1835,  1862,  2017,  1377,  1378,  1572, 
-	 1573,  1768,  1574,  1769,  1770,  1390,  1585,  1195, 
-	 1379,  1575,  1598,  1599,  1780,  1000,  1196,  1209, 
-	 1392,  1405,  1418,  1431,  1587,  1588,  1600,  1601, 
-	 1613,  1771,  1795,  1430,  1612,  1614,  1406,  1419, 
-	 1432,  1602,  1615,  1783,  1796,  1626,  1808,  1627, 
-	 1809,  1628,  1784,  1797,  1810,  1990,  1978,  1991, 
-	 1798,  1811,  1979,  1992,  1822,  1823,  2005,  1824, 
-	 1980,  1993,  2006,  1611,  1625,  1807,  1444,  1639, 
-	 1640,  1821,  1445,  1458,  1641,  1653,  1835,  1836, 
-	 1989,  2017,  1837,  2018,  1849,  2031,  1850,  2019, 
-	 2032,  1379,  1574,  1769,  1770,  1575,  1380,  1771, 
-	 1576,  1390,  1392,  1772,  1196,  1405,  1587,  1406, 
-	 1588,  1197,  1393,  1381,  1407,  1577,  1589,  1210, 
-	 1418,  1419,  1600,  1601,  1783,  1420,  1602,  1784, 
-	 1211,  1198,  1394,  1421,  1603,  1773,  1785,  1433, 
-	 1434,  1615,  1616,  1797,  1798,  1212,  1408,  1435, 
-	 1590,  1617,  1799,  1604,  1614,  1796,  1629,  1811, 
-	 1980,  1786,  1981,  1630,  1812,  1631,  1813,  1979, 
-	 1978,  1993,  1994,  1995,  1800,  1810,  1992,  1825, 
-	 2007,  1982,  1826,  2008,  1827,  2009,  1381,  1576, 
-	 1772,  1577,  1382,  1773,  1578,  1393,  1394,  1774, 
-	 1198,  1407,  1589,  1408,  1590,  1199,  1395,  1409, 
-	 1591,  1970,  1212,  1421,  1603,  1785,  1422,  1604, 
-	 1786,  1213,  1200,  1396,  1423,  1605,  1787,  1436, 
-	 1618,  1800,  1214,  1410,  1437,  1592,  1619,  1801, 
-	 1606,  1617,  1799,  1982,  1788,  1983,  1632,  1814, 
-	 1633,  1815,  1981,  1996,  1997,  1802,  1813,  1995, 
-	 1984,  1828,  2010,  1829,  2011,  1450,  1424,  1451, 
-	 1620,  1646,  1464,  1647,  1438,  1465,  1634,  1660, 
-	 1842,  1661,  1816,  1843,  2024,  1830,  1998,  2025, 
-	 1856,  2038,  1857,  2012,  2039,  1578,  1774,  1383, 
-	 1970,  1187,  1396,  1579,  1775,  1384,  1971,  1188, 
-	 1397,  1580,  1395,  1004,  1018,  1200,  1214,  1409, 
-	 1410,  1423,  1591,  1592,  1605,  1787,  1005,  1019, 
-	 1201,  1215,  1411,  1593,  1776,  1213,  1227,  1424, 
-	 1606,  1788,  1438,  1620,  1802,  1425,  1607,  1789, 
-	 1439,  1621,  1803,  1972,  1242,  1256,  1452,  1634, 
-	 1816,  1984,  1006,  1202,  1243,  1257,  1398,  1453, 
-	 1594,  1635,  1817,  1985,  1466,  1648,  1830,  1412, 
-	 1467,  1649,  1831,  1619,  1801,  1998,  1999,  2012, 
-	 1608,  1790,  2013,  1983,  1662,  1844,  2026,  1663, 
-	 1845,  2027,  2166,  2167,  1815,  1997,  2168,  1804, 
-	 1986,  1384,  1580,  1776,  1385,  1972,  1398,  1581, 
-	 1006,  1202,  1412,  1594,  1777,  1973,  1425,  1439, 
-	 1607,  1621,  1789,  1803,  1426,  1608,  1790,  1440, 
-	 1622,  1804,  1203,  1399,  1413,  1595,  1244,  1258, 
-	 1454,  1636,  1818,  1986,  1468,  1650,  1832,  1609, 
-	 1635,  1817,  2000,  1791,  2014,  1985,  1999,  1664, 
-	 1846,  2028,  2168,  1831,  2013,  2169,  2182,  1860, 
-	 2042,  1623,  2027,  2196,  2056,  2210,  1637,  1833, 
-	 2183,  2181,  2195,  2224,  2365,  2364,  2209,  2238, 
-	 2223,  2378,  2392,  2406,  2391,  2252,  2420,  1392, 
-	 1405,  1406,  1418,  1419,  1431,  1432,  1445,  1587, 
-	 1588,  1600,  1601,  1613,  1614,  1615,  1627,  1628, 
-	 1783,  1795,  1796,  1809,  1420,  1433,  1446,  1602, 
-	 1616,  1629,  1784,  1797,  1810,  1459,  1641,  1642, 
-	 1823,  1434,  1447,  1460,  1630,  1643,  1798,  1811, 
-	 1824,  1978,  1979,  1655,  1837,  1992,  1656,  1812, 
-	 1825,  1838,  1980,  1993,  1991,  2005,  2006,  2019, 
-	 1826,  1839,  1994,  2007,  2020,  1851,  2033,  1852, 
-	 2008,  2021,  2034,  1448,  1461,  1644,  1657,  1473, 
-	 1462,  1474,  1658,  1669,  1670,  1840,  1853,  2047, 
-	 1854,  2022,  2035,  2048,  1865,  1866,  2036,  2049, 
-	 1393,  1407,  1420,  1433,  1434,  1447,  1588,  1589, 
-	 1602,  1615,  1616,  1629,  1630,  1784,  1797,  1798, 
-	 1811,  1421,  1448,  1603,  1617,  1785,  1812,  1394, 
-	 1408,  1435,  1590,  1631,  1799,  1422,  1449,  1604, 
-	 1618,  1786,  1813,  1461,  1643,  1644,  1825,  1462, 
-	 1826,  1645,  1436,  1463,  1632,  1800,  1827,  1980, 
-	 1981,  1657,  1839,  1994,  1658,  1840,  1995,  1659, 
-	 1814,  1841,  1982,  1993,  2007,  2008,  2009,  2021, 
-	 2022,  1828,  1996,  2023,  1853,  2035,  1854,  2036, 
-	 1855,  2010,  2037,  1424,  1438,  1592,  1606,  1620, 
-	 1634,  1788,  1802,  1397,  1452,  1466,  1648,  1816, 
-	 1830,  1411,  1425,  1593,  1607,  1789,  1621,  1439, 
-	 1635,  1803,  1398,  1453,  1467,  1649,  1817,  1831, 
-	 1412,  1426,  1594,  1608,  1790,  1662,  1844,  1663, 
-	 1845,  1440,  1622,  1804,  1984,  1998,  2012,  1985, 
-	 1999,  2013,  2026,  1858,  2027,  1859,  1986,  2040, 
-	 2041,  1636,  1818,  2000,  2054,  2055,  1480,  1481, 
-	 1454,  1676,  1677,  1468,  1650,  1832,  1872,  1873, 
-	 2014,  1664,  1846,  2028,  2068,  2069,  1418,  1431, 
-	 1432,  1444,  1445,  1458,  1599,  1600,  1612,  1613, 
-	 1614,  1626,  1627,  1639,  1640,  1641,  1653,  1795, 
-	 1796,  1808,  1809,  1821,  1822,  1835,  1419,  1433, 
-	 1446,  1459,  1601,  1615,  1628,  1642,  1655,  1783, 
-	 1797,  1810,  1823,  1836,  1849,  1447,  1460,  1629, 
-	 1656,  1811,  1824,  1837,  1850,  1991,  1992,  2005, 
-	 1667,  2018,  1643,  1668,  1825,  1838,  1851,  2006, 
-	 2019,  1978,  2017,  2031,  1979,  1993,  2032,  2045, 
-	 1852,  2007,  2020,  2033,  2046,  1863,  1839,  1864, 
-	 2021,  2034,  2047,  1421,  1435,  1448,  1461,  1462, 
-	 1603,  1616,  1617,  1630,  1643,  1644,  1657,  1658, 
-	 1785,  1799,  1812,  1825,  1826,  1839,  1449,  1631, 
-	 1645,  1813,  1840,  1422,  1436,  1463,  1604,  1618, 
-	 1659,  1786,  1800,  1827,  1450,  1632,  1646,  1814, 
-	 1841,  1475,  1853,  1476,  1854,  1464,  1477,  1660, 
-	 1828,  1855,  2008,  1995,  2009,  1996,  1671,  2022, 
-	 1672,  2023,  1673,  1842,  2010,  1981,  2021,  2035, 
-	 2036,  1982,  2037,  2049,  2050,  1856,  2024,  2051, 
-	 1867,  1868,  1869,  2038,  1423,  1437,  1450,  1464, 
-	 1605,  1618,  1619,  1632,  1646,  1660,  1787,  1801, 
-	 1814,  1828,  1451,  1633,  1647,  1815,  1842,  1424, 
-	 1438,  1465,  1606,  1620,  1661,  1788,  1802,  1829, 
-	 1452,  1634,  1648,  1816,  1843,  1478,  1856,  1466, 
-	 1479,  1662,  1830,  1857,  2010,  1997,  2011,  1998, 
-	 2024,  1674,  2025,  1675,  1844,  2012,  1983,  2038, 
-	 1984,  2039,  2052,  1858,  2026,  2053,  1870,  1871, 
-	 2040,  1492,  1480,  1493,  1676,  1688,  1689,  1506, 
-	 1884,  1494,  1507,  1690,  1872,  1885,  2054,  2066, 
-	 1702,  2067,  1703,  2080,  1886,  2068,  2081,  1898, 
-	 1899,  1638,  1652,  1583,  1597,  1611,  1625,  1680, 
-	 1779,  1862,  2030,  1430,  1598,  1612,  1639,  1780, 
-	 1807,  1821,  1975,  1989,  1444,  1626,  1653,  1808, 
-	 1835,  1458,  1640,  1822,  1445,  1459,  1627,  1641, 
-	 1667,  1809,  1823,  1836,  1849,  1876,  2058,  1655, 
-	 1668,  1837,  1850,  1694,  2017,  1473,  1485,  1681, 
-	 1851,  1863,  1512,  1890,  2031,  2072,  1669,  1682, 
-	 1864,  2018,  2032,  2045,  2046,  1708,  1865,  1877, 
-	 2059,  1990,  2005,  2019,  2033,  2047,  2086,  1878, 
-	 2060,  1904,  2061,  2073,  1446,  1459,  1460,  1627, 
-	 1628,  1640,  1641,  1642,  1655,  1667,  1668,  1810, 
-	 1823,  1824,  1836,  1837,  1849,  1850,  1447,  1461, 
-	 1473,  1629,  1643,  1656,  1669,  1811,  1825,  1838, 
-	 1851,  1485,  1863,  1474,  1657,  1670,  1839,  1852, 
-	 1864,  1681,  1682,  1475,  1487,  1683,  1853,  1865, 
-	 1499,  1877,  1488,  1500,  1671,  1684,  1866,  1878, 
-	 2019,  2032,  2020,  2033,  2046,  2034,  2047,  2048, 
-	 1695,  2060,  1696,  1867,  1879,  2061,  2006,  2045, 
-	 2007,  2021,  2059,  2035,  2049,  2073,  1880,  2062, 
-	 2074,  1891,  1892,  2063,  2075,  1448,  1461,  1462, 
-	 1473,  1474,  1629,  1630,  1642,  1643,  1644,  1656, 
-	 1657,  1669,  1670,  1812,  1825,  1826,  1838,  1839, 
-	 1851,  1852,  1475,  1658,  1671,  1840,  1853,  1487, 
-	 1865,  1476,  1488,  1672,  1854,  1866,  1683,  1684, 
-	 1489,  1685,  1867,  1501,  1879,  1490,  1502,  1686, 
-	 1868,  1880,  2021,  2034,  2022,  2035,  2048,  2036, 
-	 2049,  2050,  1697,  2062,  1698,  1881,  2063,  2008, 
-	 2047,  2061,  2075,  1882,  2064,  2076,  1893,  1894, 
-	 2077,  1449,  1463,  1475,  1476,  1631,  1644,  1645, 
-	 1658,  1671,  1672,  1813,  1827,  1840,  1853,  1854, 
-	 1659,  1841,  1450,  1464,  1477,  1632,  1646,  1673, 
-	 1814,  1828,  1855,  1660,  1842,  1489,  1867,  1490, 
-	 1868,  1478,  1491,  1674,  1856,  1869,  1685,  1686, 
-	 1687,  1503,  1881,  1504,  1882,  1492,  1505,  1688, 
-	 1870,  1883,  2036,  2023,  2037,  2024,  2050,  2051, 
-	 2038,  2052,  1699,  2064,  1700,  2065,  1701,  2009, 
-	 2049,  2010,  2063,  2077,  2078,  1884,  2066,  2079, 
-	 1895,  1896,  1897,  1480,  1648,  1662,  1676,  1844, 
-	 1858,  1439,  1453,  1494,  1621,  1635,  1803,  1817, 
-	 1872,  1467,  1649,  1663,  1831,  1845,  1481,  1677, 
-	 1859,  1440,  1454,  1495,  1622,  1636,  1804,  1818, 
-	 1873,  1468,  1650,  1664,  1832,  1846,  1690,  1691, 
-	 1482,  1860,  1508,  1886,  1509,  1887,  1678,  1704, 
-	 1705,  1496,  1874,  2040,  2054,  1999,  2013,  2027, 
-	 2041,  2055,  2000,  2014,  2028,  2068,  2069,  2042, 
-	 2056,  2082,  1900,  2083,  1901,  1692,  2070,  2096, 
-	 2097,  1680,  1694,  1876,  1512,  1890,  1289,  1485, 
-	 1653,  1667,  1708,  1835,  1836,  1849,  1850,  1863, 
-	 2031,  2045,  2072,  1668,  1681,  1864,  1487,  1499, 
-	 1669,  1682,  1695,  1865,  1877,  1904,  2086,  1500, 
-	 1683,  1696,  1878,  1303,  2059,  1501,  1513,  1709, 
-	 1879,  1891,  1330,  1526,  2100,  1514,  1697,  1710, 
-	 1892,  2060,  2073,  2074,  1722,  1893,  1905,  2087, 
-	 2032,  2046,  2061,  2075,  1906,  2088,  1918,  2089, 
-	 2101,  1487,  1488,  1499,  1500,  1669,  1670,  1682, 
-	 1683,  1695,  1696,  1865,  1866,  1877,  1878,  1489, 
-	 1501,  1671,  1684,  1697,  1867,  1879,  1513,  1891, 
-	 1502,  1514,  1685,  1698,  1880,  1892,  1709,  1710, 
-	 1503,  1515,  1711,  1881,  1893,  1905,  1516,  1699, 
-	 1712,  1894,  1906,  2061,  2062,  2074,  2075,  2076, 
-	 2088,  1895,  1907,  2089,  2073,  2063,  2087,  2077, 
-	 2101,  1908,  2090,  2102,  2091,  2103,  1490,  1672, 
-	 1868,  1686,  1504,  1700,  1882,  1517,  1713,  1518, 
-	 1714,  1896,  2064,  2078,  1909,  1910,  2092,  2104, 
-	 2105,  1491,  1503,  1504,  1673,  1686,  1699,  1700, 
-	 1869,  1881,  1882,  1687,  1492,  1505,  1674,  1701, 
-	 1870,  1883,  1688,  1517,  1895,  1518,  1896,  1506, 
-	 1519,  1702,  1884,  1897,  1713,  1714,  1715,  1909, 
-	 1910,  1520,  1716,  1898,  1911,  2065,  2066,  2078, 
-	 2079,  2080,  2092,  2093,  2077,  2091,  2105,  2106, 
-	 1912,  2094,  2107,  1493,  1506,  1675,  1688,  1702, 
-	 1871,  1884,  1689,  1494,  1507,  1676,  1703,  1872, 
-	 1885,  1690,  1520,  1898,  1508,  1521,  1704,  1886, 
-	 1899,  1716,  1717,  1912,  1522,  1718,  1900,  1913, 
-	 2067,  2068,  2080,  2081,  2082,  2094,  2095,  2108, 
-	 1914,  2096,  2109,  1508,  1690,  1704,  1886,  1481, 
-	 1522,  1677,  1859,  1900,  1495,  1691,  1873,  1509, 
-	 1705,  1887,  1482,  1523,  1678,  1860,  1901,  1496, 
-	 1692,  1874,  1718,  1719,  1510,  1888,  1914,  1915, 
-	 1706,  1524,  1902,  2082,  2055,  2069,  2083,  2056, 
-	 2070,  2096,  2097,  2084,  2110,  2111,  1720,  2098, 
-	 1496,  1678,  1692,  1874,  1510,  1706,  1888,  1483, 
-	 1524,  1902,  1301,  1497,  1720,  1875,  1315,  1511, 
-	 2071,  1916,  1707,  1525,  1903,  1721,  2070,  2084, 
-	 2098,  2085,  2112,  2099,  1708,  1904,  1330,  1526, 
-	 2100,  1317,  1499,  1500,  1513,  1681,  1682,  1695, 
-	 1722,  1877,  1878,  1891,  2073,  1696,  1709,  1514, 
-	 1892,  1515,  1697,  1710,  1893,  1905,  1918,  1711, 
-	 1906,  2087,  1331,  1527,  2101,  1332,  1516,  1528, 
-	 1712,  1723,  1894,  1907,  2102,  1540,  2114,  1724, 
-	 1736,  1529,  1919,  1932,  1725,  1920,  1345,  1541, 
-	 2115,  1346,  1530,  1542,  1726,  1737,  1921,  2116, 
-	 2088,  1908,  2089,  2103,  2128,  1738,  1922,  1933, 
-	 2117,  2074,  2090,  2104,  2310,  1934,  2118,  2129, 
-	 1515,  1516,  1697,  1698,  1710,  1711,  1893,  1894, 
-	 1905,  1906,  1517,  1699,  1712,  1895,  1907,  1527, 
-	 1528,  1713,  1908,  1332,  1333,  1529,  1723,  1724, 
-	 1919,  2102,  2103,  1334,  1518,  1530,  1714,  1725, 
-	 1896,  1909,  1920,  2104,  1726,  1531,  1921,  1541, 
-	 1542,  1727,  1922,  1346,  1347,  1543,  1737,  1738, 
-	 1933,  2116,  2117,  1348,  1532,  1544,  1728,  1739, 
-	 1923,  1934,  2118,  2089,  2090,  1910,  2091,  2105, 
-	 1740,  1924,  1935,  2119,  2101,  2115,  2092,  2129, 
-	 2130,  2106,  1936,  2120,  2131,  1517,  1518,  1699, 
-	 1700,  1712,  1713,  1895,  1896,  1907,  1908,  1714, 
-	 1909,  1529,  1530,  1910,  1334,  1335,  1531,  1724, 
-	 1725,  1726,  1920,  1921,  2104,  2105,  1336,  1519, 
-	 1532,  1715,  1727,  1897,  1922,  2106,  1728,  1923, 
-	 1543,  1544,  1924,  1348,  1349,  1545,  1738,  1739, 
-	 1740,  1934,  1935,  2118,  2119,  1350,  1533,  1546, 
-	 1729,  1741,  1936,  2120,  2091,  2092,  1911,  1742, 
-	 1925,  1937,  2103,  2116,  2117,  2093,  2130,  2131, 
-	 2132,  2107,  1938,  2121,  2133,  1519,  1701,  1714, 
-	 1897,  1909,  1910,  1715,  1520,  1702,  1898,  1911, 
-	 1716,  1336,  1530,  1531,  1532,  1726,  1727,  2106, 
-	 1337,  1533,  1728,  1912,  2107,  1922,  1923,  1924, 
-	 1729,  1338,  1521,  1534,  1717,  1899,  1925,  2108, 
-	 1730,  1913,  1350,  1544,  1545,  1546,  1740,  1741, 
-	 2120,  1351,  1547,  1742,  1926,  2121,  1936,  1937, 
-	 1938,  1743,  1352,  1535,  1548,  1731,  1939,  2122, 
-	 2093,  2094,  2105,  2119,  1744,  1927,  2118,  2095, 
-	 2109,  2132,  2133,  2134,  2135,  1940,  2123,  1521, 
-	 1703,  1716,  1899,  1912,  1717,  1522,  1704,  1900, 
-	 1913,  1718,  1338,  1533,  1534,  1729,  2108,  1339, 
-	 1535,  1730,  1914,  2109,  1925,  1926,  1731,  1340, 
-	 1536,  1927,  2110,  1732,  1352,  1547,  1548,  1743, 
-	 2122,  1353,  1549,  1744,  1928,  2123,  1939,  1940, 
-	 1745,  1354,  1550,  1941,  2124,  2095,  2096,  1746, 
-	 2121,  2135,  2136,  2137,  1942,  1718,  1914,  1340, 
-	 1509,  1523,  1536,  1691,  1705,  1887,  1901,  2110, 
-	 1719,  1915,  1341,  1510,  1524,  1537,  1692,  1706, 
-	 1888,  1902,  2111,  1720,  1535,  1731,  1732,  1733, 
-	 1916,  1927,  1928,  1929,  1550,  1342,  1538,  1551, 
-	 2112,  1354,  2124,  1746,  1355,  2125,  1734,  1747, 
-	 1549,  1745,  1930,  1941,  1942,  1943,  2083,  2097, 
-	 2084,  2098,  2126,  2123,  2137,  2138,  2139,  1524, 
-	 1706,  1720,  1902,  1916,  1342,  1511,  1525,  1538, 
-	 1707,  1903,  2112,  1721,  1734,  1930,  1147,  1343, 
-	 1539,  1735,  2113,  1356,  1552,  2099,  2126,  1748, 
-	 1931,  1944,  1357,  1553,  2127,  2098,  2085,  1749, 
-	 2140,  1945,  2294,  2308,  2336,  2335,  1958,  2154, 
-	 2504,  2505,  2518,  2490,  1540,  1736,  1932,  1358, 
-	 1527,  1528,  1554,  1723,  1724,  1919,  2128,  1345, 
-	 1541,  1920,  2115,  1542,  1725,  1737,  1921,  1738, 
-	 1543,  1933,  1946,  1739,  1934,  1555,  2129,  1360, 
-	 1544,  1556,  1740,  1751,  1935,  2130,  2116,  1936, 
-	 2131,  2117,  1753,  1948,  2132,  2143,  2324,  2325, 
-	 2144,  1922,  1923,  1545,  1741,  1361,  1557,  1362, 
-	 1546,  1742,  1937,  1754,  1938,  1949,  2133,  2118, 
-	 2119,  2134,  2145,  1544,  1545,  1739,  1740,  1741, 
-	 1924,  1935,  1546,  1742,  1936,  1937,  1557,  1938, 
-	 1362,  1753,  1754,  1948,  1949,  2132,  2133,  1364, 
-	 1547,  1560,  1743,  2134,  1756,  1939,  1951,  1952, 
-	 2146,  2120,  2131,  2144,  2145,  2135,  2147,  1546, 
-	 1741,  1742,  1925,  1937,  1351,  1547,  1730,  1743, 
-	 1926,  1938,  2121,  1352,  1548,  1731,  1744,  1927, 
-	 1939,  2122,  1364,  1560,  1754,  2134,  1365,  1561, 
-	 1756,  1940,  2135,  1951,  1952,  1757,  1366,  1549, 
-	 1562,  1745,  1953,  2136,  1758,  1941,  2133,  2148, 
-	 1954,  2149,  2123,  2146,  2147,  2137,  2150,  1548, 
-	 1744,  1927,  1353,  1549,  1732,  1745,  1928,  1940, 
-	 2123,  1354,  1550,  1746,  1941,  2124,  1366,  1561, 
-	 1562,  1757,  2136,  1367,  1563,  1758,  1942,  2137, 
-	 1953,  1954,  1759,  1564,  1955,  2138,  1760,  2150, 
-	 1956,  2151,  2149,  2152,  2319,  2320,  2332,  2333, 
-	 2334,  2346,  2347,  2331,  2345,  2348,  2515,  2516, 
-	 2528,  2529,  2530,  2527,  2541,  1550,  1746,  1733, 
-	 1929,  1942,  1355,  1551,  1564,  2125,  1747,  1734, 
-	 1930,  1943,  1356,  1552,  1565,  2126,  2138,  1760, 
-	 1369,  2139,  1748,  1761,  1563,  1759,  1944,  1955, 
-	 1956,  1957,  1370,  1566,  2140,  2152,  2153,  1762, 
-	 2151,  1958,  2321,  2334,  2335,  2348,  2154,  2336, 
-	 2349,  2333,  2347,  2517,  2518,  2530,  2531,  2544, 
-	 2545,  2529,  1356,  1552,  1748,  1930,  2126,  1735, 
-	 1931,  1944,  1357,  1553,  1566,  2127,  1749,  1370, 
-	 2140,  1762,  1945,  1958,  1371,  1567,  1763,  2154, 
-	 1959,  2155,  2336,  2518,  2545,  2547,  2349,  2741, 
-	 2742,   983,  1178,  1179,  1375,  1571,  1624,  1638, 
-	 1572,  1768,  1583,  1387,  1779,  1769,  1597,  1652, 
-	 2030,  1780,  1975,  1989,  1807,  1990,  2212,  1808, 
-	 1821,  1991,  2017,  2226,  1978,  2240,  1822,  1835, 
-	 1992,  2005,  2018,  2031,  2019,  2032,  2045,  2254, 
-	 1836,  1849,  1979,  2006,  2046,  2202,  2228,  2241, 
-	 2409,  1770,  1585,  1598,  1599,  1612,  1795,  1600, 
-	 1613,  1783,  1796,  1809,  1810,  1823,  1993,  1980, 
-	 1824,  1837,  1994,  2007,  2020,  2033,  2176,  2189, 
-	 2216,  2242,  1611,  1862,  2058,  1850,  2072,  2423, 
-	 2268,  2371,  2203,  2424,  2437,  1768,  1769,  1770, 
-	 1585,  1780,  1575,  1587,  1599,  1600,  1771,  1783, 
-	 1795,  1978,  1390,  1598,  1612,  1613,  1626,  1779, 
-	 1796,  1807,  1808,  1809,  1821,  1975,  1989,  1990, 
-	 1991,  1588,  1601,  1614,  1784,  1797,  1979,  1992, 
-	 1822,  1810,  1980,  1993,  1823,  2005,  2006,  1798, 
-	 1811,  1824,  1994,  2007,  2019,  2020,  2018,  2032, 
-	 2033,  1812,  1825,  2008,  2021,  2034,  2176,  2189, 
-	 2202,  2046,  2190,  2203,  2017,  2228,  2216,  2031, 
-	 2371,  2241,  2409,  2204,  2217,  2230,  1835,  1836, 
-	 1849,  1837,  1850,  2045,  1838,  1851,  2047,  2242, 
-	 2423,  2243,  2424,  1575,  1770,  1771,  1576,  1772, 
-	 1784,  1587,  1783,  1796,  1978,  1588,  1601,  1602, 
-	 1797,  1979,  1980,  1798,  1577,  1589,  1603,  1773, 
-	 1785,  1981,  1810,  1992,  1811,  1993,  1616,  1799, 
-	 1812,  1994,  1590,  1786,  1813,  1995,  1825,  1826, 
-	 2007,  2008,  1604,  1800,  1827,  1982,  2009,  1996, 
-	 1600,  1795,  1809,  1991,  2006,  2021,  2176,  2177, 
-	 2022,  2023,  2005,  2189,  2020,  2190,  2191,  2034, 
-	 2035,  2202,  2203,  2036,  2204,  1814,  2010,  2037, 
-	 2178,  2205,  1990,  2217,  2192,  2019,  2373,  2218, 
-	 2219,  2371,  2361,  2216,  2386,  2387,  2230,  2231, 
-	 2232,  2206,  2233,  2374,  2401,  1577,  1772,  1773, 
-	 1785,  1578,  1774,  1786,  1970,  1799,  1981,  1590, 
-	 1604,  1982,  1603,  1617,  1800,  1813,  1995,  1591, 
-	 1787,  1605,  1801,  1983,  2166,  1814,  1996,  1592, 
-	 1788,  1815,  1997,  1828,  2010,  1606,  1802,  1829, 
-	 1984,  2011,  1998,  2009,  2178,  2179,  2024,  2025, 
-	 2177,  2023,  2191,  2192,  2193,  2037,  2205,  2038, 
-	 2206,  1816,  2012,  2039,  2180,  2207,  1994,  2176, 
-	 2361,  2362,  2194,  2008,  2190,  2204,  2374,  2220, 
-	 2221,  2373,  2219,  2387,  2388,  2233,  2401,  2234, 
-	 2208,  2235,  1970,  1579,  1592,  1774,  1775,  1787, 
-	 1788,  1983,  2166,  1971,  1580,  1593,  1776,  1789, 
-	 2167,  1972,  1801,  1606,  1802,  1815,  1984,  1997, 
-	 1607,  1803,  1985,  1605,  1619,  1816,  1998,  1620, 
-	 1634,  1830,  2012,  1817,  1999,  1594,  1621,  1635, 
-	 1831,  2013,  2168,  1648,  1844,  2026,  2180,  1608, 
-	 1649,  1790,  1845,  1986,  2027,  2181,  1858,  2040, 
-	 1804,  1859,  2041,  2011,  2194,  2195,  2208,  2000, 
-	 2209,  2179,  2025,  2193,  2039,  2207,  2054,  2222, 
-	 2055,  2223,  2362,  2363,  2364,  2236,  2014,  2182, 
-	 2237,  2196,  2391,  2404,  2405,  2221,  2235,  2250, 
-	 2251,  2419,  1784,  1797,  1798,  1810,  1811,  1823, 
-	 1824,  1837,  1978,  1979,  1980,  1992,  1993,  2005, 
-	 2006,  2007,  2019,  2020,  1812,  1825,  1838,  1994, 
-	 2008,  2021,  1851,  2033,  2034,  1826,  1839,  1852, 
-	 2022,  2035,  2047,  2048,  2176,  2189,  2032,  2046, 
-	 2202,  1981,  2190,  2203,  2216,  2228,  1840,  1853, 
-	 1995,  2036,  2049,  2204,  2217,  2230,  2218,  2231, 
-	 2371,  2243,  2244,  2242,  2177,  2386,  2424,  2191, 
-	 2232,  2245,  1836,  1849,  1850,  1991,  2018,  2031, 
-	 2045,  1863,  1864,  2059,  2060,  2241,  1865,  2061, 
-	 2255,  2256,  2409,  2423,  2437,  2257,  1785,  1799, 
-	 1812,  1825,  1826,  1839,  1980,  1981,  1994,  2007, 
-	 2008,  2021,  2022,  1813,  1840,  1995,  2009,  1786, 
-	 1800,  1827,  1982,  2023,  1814,  1841,  1996,  2010, 
-	 1853,  2035,  2036,  1854,  2037,  1828,  1855,  2024, 
-	 2176,  2177,  2049,  2190,  2050,  2191,  2051,  2178, 
-	 2034,  2048,  2189,  2202,  2203,  2204,  2216,  2217, 
-	 2218,  2205,  1983,  2192,  2219,  2230,  2231,  2232, 
-	 1842,  1997,  2038,  2206,  2233,  2220,  2373,  2245, 
-	 2386,  2246,  2387,  2247,  2374,  2244,  2371,  2401, 
-	 2179,  2388,  2415,  2428,  2193,  2234,  2429,  1787, 
-	 1801,  1814,  1828,  1982,  1983,  1996,  2010,  2024, 
-	 1815,  1842,  1997,  2011,  1788,  1802,  1829,  1984, 
-	 2025,  1816,  1843,  1998,  2012,  2038,  1856,  2039, 
-	 1830,  1857,  2026,  2178,  2179,  2192,  2052,  2193, 
-	 2053,  2180,  2037,  2051,  2205,  2206,  2219,  2220, 
-	 2207,  2194,  2221,  2233,  2234,  1844,  2040,  2208, 
-	 2235,  2222,  2374,  2388,  2248,  2249,  2247,  2401, 
-	 2415,  2417,  2429,  2430,  2236,  2404,  2431,  1870, 
-	 1858,  1871,  2054,  2066,  2067,  2065,  2250,  2262, 
-	 2263,  2261,  2443,  2444,  2445,  2432,  1816,  1830, 
-	 1984,  1998,  2012,  2026,  1789,  1844,  1858,  2040, 
-	 1803,  1817,  1985,  1999,  2013,  1831,  2027,  1790, 
-	 1845,  1859,  2041,  1804,  1818,  1986,  2000,  2054, 
-	 2055,  1832,  2014,  2180,  2194,  2208,  2181,  2195, 
-	 2209,  2222,  2223,  2182,  2039,  2053,  2207,  2221, 
-	 2236,  2237,  2235,  2068,  2250,  2028,  2069,  2196, 
-	 2251,  2210,  2404,  2391,  2405,  2419,  2378,  2249, 
-	 2417,  2432,  2433,  2431,  2264,  2446,  2224,  2265, 
-	 2392,  2447,  1872,  1873,  1846,  1860,  2042,  2067, 
-	 2082,  2056,  2083,  2238,  2406,  2263,  2445,  2278, 
-	 2460,  2252,  2279,  2420,  2461,  1804,  1818,  1986, 
-	 2000,  2014,  1832,  2028,  1791,  1846,  1860,  2042, 
-	 1609,  1623,  2056,  1637,  1651,  1833,  1847,  2183, 
-	 1678,  1874,  2210,  2224,  2182,  2196,  2070,  2238, 
-	 2252,  2378,  2392,  2406,  2420,  2434,  2266,  2393, 
-	 2448,  1888,  2084,  1875,  2071,  2280,  2462,  1706, 
-	 1902,  2098,  2085,  2112,  2294,  1916,  2476,  1903, 
-	 2099,  2308,  2617,  2490,  2504,  2030,  1862,  1611, 
-	 1625,  1779,  1780,  1807,  1821,  1975,  1989,  2058, 
-	 2212,  2226,  1808,  1835,  1990,  2017,  1822,  2031, 
-	 1809,  1823,  1836,  1849,  1991,  2005,  2018,  2032, 
-	 2045,  1639,  1680,  1876,  2240,  1837,  1850,  2019, 
-	 2046,  2072,  2033,  1992,  2006,  2254,  1863,  2020, 
-	 2047,  2059,  2228,  2241,  2202,  2242,  2268,  2409, 
-	 2423,  2216,  2243,  2255,  2424,  2437,  1812,  1825, 
-	 1826,  1838,  1839,  1851,  1852,  1993,  1994,  2006, 
-	 2007,  2008,  2020,  2021,  2033,  2034,  2035,  2047, 
-	 2048,  1840,  1853,  2022,  2036,  2049,  1865,  1854, 
-	 1866,  2050,  2189,  2202,  2190,  2203,  2061,  2216, 
-	 2062,  2204,  2217,  2060,  2176,  2228,  2230,  2242, 
-	 2243,  1995,  2009,  2177,  2218,  2231,  2244,  1867, 
-	 2023,  2063,  2191,  2232,  2245,  2246,  2386,  2257, 
-	 2258,  2256,  2371,  2424,  2205,  2373,  2219,  2259, 
-	 2387,  2428,  1813,  1827,  1840,  1853,  1854,  1995, 
-	 2008,  2009,  2022,  2035,  2036,  2049,  2050,  1841, 
-	 2023,  2037,  1814,  1828,  1855,  1996,  2010,  2051, 
-	 1842,  2024,  2038,  1867,  1868,  1856,  1869,  2052, 
-	 2204,  2191,  2205,  2192,  2063,  2218,  2064,  2219, 
-	 2065,  2206,  2062,  2177,  2190,  2203,  2217,  2230, 
-	 2231,  2232,  2244,  2245,  2178,  2246,  2233,  1997, 
-	 2011,  2179,  2220,  2247,  2025,  2193,  2234,  2248, 
-	 2387,  2401,  2388,  2259,  2260,  2415,  2261,  2258, 
-	 2373,  2386,  2428,  2374,  2442,  2429,  2207,  2443, 
-	 2221,  2430,  1862,  2030,  2058,  2212,  2226,  1876, 
-	 1639,  1653,  1680,  1807,  1808,  1821,  1822,  1835, 
-	 1849,  1989,  1990,  2017,  2031,  2072,  2240,  1836, 
-	 2018,  2045,  1850,  2032,  1837,  1851,  1863,  2019, 
-	 2033,  2046,  2059,  1694,  1890,  2254,  1864,  2047, 
-	 2060,  1667,  2086,  1865,  1877,  2073,  1708,  1904, 
-	 2268,  1878,  2061,  2074,  2228,  2241,  2242,  2100, 
-	 2255,  2020,  2034,  2202,  2048,  2216,  2243,  2230, 
-	 2256,  2282,  1891,  2062,  2075,  2087,  2244,  2257, 
-	 2269,  2409,  2423,  2464,  2270,  2424,  2437,  2296, 
-	 2451,  2478,  2258,  2271,  2283,  2453,  2465,  1838, 
-	 1851,  1852,  1863,  1864,  2019,  2020,  2032,  2033, 
-	 2034,  2046,  2047,  2059,  2060,  1839,  1853,  1865, 
-	 2021,  2035,  2048,  2061,  1877,  1866,  1878,  2049, 
-	 2062,  2073,  2074,  1867,  1879,  2075,  1891,  1880, 
-	 1892,  2063,  2076,  2228,  2216,  2242,  2230,  2243, 
-	 2244,  2087,  2256,  2088,  2257,  2189,  2202,  2203, 
-	 2241,  2255,  2022,  2036,  2190,  2204,  2217,  2231, 
-	 2050,  2218,  2245,  2269,  2232,  2258,  2270,  1893, 
-	 2064,  2077,  2089,  2246,  2259,  2271,  2272,  2424, 
-	 2283,  2284,  2453,  2423,  2437,  2451,  2386,  2465, 
-	 2428,  2466,  2260,  2273,  2285,  2442,  2455,  2467, 
-	 1840,  1853,  1854,  1865,  1866,  2021,  2022,  2034, 
-	 2035,  2036,  2048,  2049,  2061,  2062,  1867,  2050, 
-	 2063,  1879,  1868,  1880,  2064,  2075,  2076,  1881, 
-	 2077,  1893,  1882,  1894,  2078,  2217,  2230,  2218, 
-	 2231,  2244,  2232,  2245,  2246,  2089,  2258,  2090, 
-	 2259,  2074,  2190,  2203,  2204,  2216,  2243,  2256, 
-	 2257,  2023,  2037,  2191,  2205,  2051,  2219,  2088, 
-	 2270,  2271,  2233,  2260,  2272,  1895,  2065,  2091, 
-	 2247,  2273,  2274,  2428,  2442,  2285,  2286,  2455, 
-	 2386,  2453,  2387,  2401,  2415,  2284,  2466,  2467, 
-	 2429,  2456,  2468,  2261,  2287,  2443,  2469,  1841, 
-	 1855,  1867,  1868,  2023,  2036,  2037,  2050,  2063, 
-	 2064,  2051,  1842,  1856,  1869,  2024,  2038,  2065, 
-	 2052,  1881,  1882,  1870,  1883,  2066,  2077,  2078, 
-	 2079,  1895,  1896,  1884,  1897,  2080,  2062,  2076, 
-	 2191,  2205,  2218,  2219,  2231,  2232,  2245,  2246, 
-	 2192,  2206,  2220,  2233,  2247,  2260,  2025,  2039, 
-	 2053,  2234,  2248,  2261,  2090,  2259,  2092,  2091, 
-	 2274,  2067,  2093,  2262,  2275,  2258,  2193,  2207, 
-	 2221,  2272,  2273,  2235,  2249,  2286,  2288,  2276, 
-	 2387,  2401,  2415,  2428,  2442,  2388,  2429,  2443, 
-	 2456,  2430,  2444,  2457,  2455,  2287,  2470,  2263, 
-	 2289,  2458,  2471,  2417,  2468,  2469,  2431,  2445, 
-	 1843,  1857,  1870,  2025,  2038,  2039,  2052,  2066, 
-	 2053,  1844,  1858,  1871,  2026,  2040,  2067,  2054, 
-	 1884,  1872,  1885,  2068,  2080,  2081,  1898,  1886, 
-	 1899,  2082,  2065,  2079,  2193,  2207,  2220,  2221, 
-	 2234,  2248,  2194,  2208,  2222,  2235,  2249,  2262, 
-	 2236,  2250,  2263,  2093,  2094,  2276,  2095,  2264, 
-	 2277,  2261,  2275,  2289,  2290,  2278,  2417,  2430, 
-	 2444,  2404,  2431,  2445,  2458,  2432,  2446,  2459, 
-	 2472,  2291,  2460,  2473,  2457,  2471,  1872,  2040, 
-	 2054,  2068,  1831,  1845,  1886,  2013,  2027,  1859, 
-	 2041,  2055,  1873,  2069,  1832,  1846,  1887,  2014, 
-	 2028,  1860,  2042,  2056,  2082,  2083,  1874,  1900, 
-	 1901,  2070,  2096,  2097,  1888,  2067,  2081,  2222, 
-	 2236,  2250,  2195,  2209,  2223,  2237,  2251,  2196, 
-	 2210,  2224,  2264,  2265,  2238,  2095,  2278,  2252, 
-	 2279,  2263,  2181,  2182,  2277,  2110,  2292,  2084, 
-	 2111,  2266,  2293,  2291,  2432,  2446,  2391,  2405, 
-	 2419,  2433,  2447,  2392,  2406,  2420,  2460,  2461, 
-	 2434,  2474,  2448,  2475,  2459,  2378,  2473,  2306, 
-	 2488,  2280,  2307,  2462,  2489,  1890,  2072,  2086, 
-	 1904,  1681,  1708,  1863,  1864,  1877,  2045,  2046, 
-	 2059,  2100,  2241,  2268,  2060,  2073,  1878,  1879, 
-	 1891,  2061,  2074,  2087,  2282,  1892,  2075,  2088, 
-	 1695,  2255,  1893,  1905,  2101,  1722,  1918,  2296, 
-	 1906,  2089,  2102,  2254,  2228,  2242,  2256,  2269, 
-	 2270,  2114,  2283,  2243,  2062,  2244,  2257,  2076, 
-	 2258,  2271,  2284,  2090,  2103,  2272,  2285,  2297, 
-	 2423,  2437,  2464,  2478,  2451,  2492,  2298,  2424, 
-	 2465,  2466,  2310,  2479,  2453,  2467,  2480,  2286, 
-	 2299,  2468,  2481,  2493,  1879,  1880,  1891,  1892, 
-	 2061,  2062,  2074,  2075,  2087,  2088,  1881,  1893, 
-	 2063,  2076,  2089,  1905,  1894,  1906,  2077,  2090, 
-	 2101,  2102,  1895,  1907,  2103,  1908,  2091,  2104, 
-	 2257,  2258,  2270,  2271,  2272,  2284,  2285,  2244, 
-	 2245,  2256,  2269,  2283,  2064,  2246,  2259,  2078, 
-	 2260,  2273,  2297,  2286,  2298,  2092,  2105,  2274, 
-	 2287,  2299,  2300,  2453,  2466,  2467,  2468,  2480, 
-	 2481,  2465,  2479,  2442,  2455,  2456,  2469,  2493, 
-	 2482,  2494,  2288,  2301,  2470,  2483,  2495,  1881, 
-	 1882,  1893,  1894,  2063,  2064,  2076,  2077,  2089, 
-	 2090,  1895,  2078,  2091,  1907,  1896,  1908,  2092, 
-	 2103,  2104,  1909,  2105,  1910,  2106,  2259,  2260, 
-	 2272,  2273,  2274,  2286,  2287,  2102,  2246,  2258, 
-	 2271,  2284,  2285,  2065,  2247,  2079,  2261,  2298, 
-	 2299,  2288,  2300,  2093,  2275,  2301,  2302,  2455, 
-	 2456,  2468,  2469,  2470,  2482,  2483,  2442,  2467, 
-	 2480,  2481,  2443,  2457,  2494,  2495,  2484,  2496, 
-	 2289,  2471,  2497,  1883,  1895,  1896,  2065,  2078, 
-	 2091,  2092,  2079,  1884,  1897,  2066,  2093,  2080, 
-	 1909,  1910,  1898,  1911,  2094,  2105,  2106,  2107, 
-	 1912,  2108,  2090,  2104,  2247,  2260,  2261,  2273, 
-	 2274,  2248,  2262,  2275,  2288,  2067,  2081,  2276, 
-	 2289,  2287,  2302,  2095,  2290,  2303,  2286,  2249, 
-	 2263,  2300,  2301,  2277,  2304,  2443,  2456,  2457, 
-	 2469,  2470,  2444,  2458,  2471,  2484,  2472,  2485, 
-	 2483,  2498,  2291,  2486,  2499,  2482,  2445,  2459, 
-	 2496,  2497,  2473,  1885,  1898,  2067,  2080,  2094, 
-	 2081,  1886,  1899,  2068,  2095,  2082,  1912,  1900, 
-	 1913,  2096,  2108,  2109,  1914,  2110,  2093,  2107, 
-	 2249,  2262,  2263,  2276,  2250,  2264,  2277,  2290, 
-	 2278,  2291,  2304,  2292,  2305,  2289,  2303,  2306, 
-	 2445,  2458,  2459,  2472,  2446,  2460,  2473,  2486, 
-	 2474,  2487,  2500,  2488,  2501,  2485,  2499,  1900, 
-	 2082,  2096,  1873,  1914,  2069,  1887,  2083,  1901, 
-	 2097,  1874,  1915,  2070,  1888,  2084,  2110,  2111, 
-	 1902,  2098,  1916,  2095,  2109,  2264,  2278,  2251, 
-	 2265,  2292,  2279,  2252,  2266,  2293,  2306,  2280, 
-	 2307,  2291,  2237,  2238,  2305,  2124,  2112,  2125, 
-	 2294,  2460,  2474,  2447,  2461,  2488,  2475,  2448, 
-	 2462,  2489,  2502,  2476,  2503,  2487,  2433,  2434, 
-	 2501,  2320,  2308,  2321,  2490,  1888,  2070,  2084, 
-	 1902,  2098,  1875,  1916,  2071,  2085,  2112,  1903, 
-	 2099,  2113,  2266,  2280,  2294,  2308,  2126,  1930, 
-	 2476,  2490,  2504,  2462,  2505,  2518,  2100,  1722, 
-	 1891,  1904,  1918,  2073,  2087,  2114,  2282,  2296, 
-	 1709,  1892,  1905,  2074,  2269,  2088,  2101,  1906, 
-	 1907,  2089,  2102,  2103,  2283,  1723,  1919,  2297, 
-	 1724,  1908,  1920,  2104,  2115,  2298,  1736,  1932, 
-	 2310,  2284,  2116,  2128,  1921,  2117,  1737,  1933, 
-	 2311,  1738,  1922,  1934,  2118,  2129,  2312,  2270, 
-	 2090,  2285,  2299,  2324,  2130,  2313,  2256,  2271, 
-	 2272,  2286,  2300,  1946,  2492,  2493,  2314,  2325, 
-	 2478,  2465,  2479,  2494,  2480,  2507,  2508,  2466, 
-	 2481,  2495,  2326,  2509,  2467,  2468,  2482,  2496, 
-	 1907,  1908,  2089,  2090,  2102,  2103,  1909,  2091, 
-	 2104,  1919,  1920,  2105,  1724,  1725,  1921,  2115, 
-	 2116,  2298,  2299,  1726,  1910,  1922,  2106,  2117, 
-	 2300,  2118,  1923,  1933,  1934,  2119,  1738,  1739, 
-	 1935,  2129,  2130,  2312,  2313,  1740,  1924,  1936, 
-	 2120,  2131,  2314,  2285,  2286,  2297,  2092,  2287, 
-	 2301,  2311,  2132,  2315,  2272,  2273,  2284,  2274, 
-	 2288,  2302,  2325,  2326,  2316,  2327,  2494,  2495, 
-	 2496,  2508,  2509,  2510,  2481,  2482,  2493,  2483, 
-	 2497,  2507,  2328,  2511,  2468,  2469,  2480,  2470, 
-	 2484,  2498,  2521,  2522,  1909,  1910,  2091,  2092, 
-	 2104,  2105,  2106,  1921,  1922,  1726,  1727,  1923, 
-	 2116,  2117,  2118,  2300,  2301,  1728,  1911,  1924, 
-	 2107,  2119,  2302,  2120,  1935,  1936,  1740,  1741, 
-	 1937,  2130,  2131,  2132,  2314,  2315,  1742,  1925, 
-	 1938,  2121,  2133,  2316,  2287,  2288,  2299,  2093, 
-	 2313,  2134,  2274,  2286,  2275,  2289,  2312,  2303, 
-	 2326,  2327,  2328,  2317,  2329,  2496,  2497,  2498, 
-	 2510,  2511,  2512,  2483,  2484,  2495,  2509,  2330, 
-	 2470,  2482,  2471,  2485,  2508,  2499,  2522,  2523, 
-	 2524,  1911,  2093,  2106,  2107,  1912,  2094,  2108, 
-	 1728,  1922,  1923,  1924,  2118,  2119,  2302,  1729, 
-	 1925,  2120,  2303,  2121,  1730,  1913,  1926,  2109, 
-	 2304,  2122,  1742,  1936,  1937,  1938,  2132,  2133, 
-	 2316,  1743,  1939,  2134,  2317,  2135,  1744,  1927, 
-	 1940,  2123,  2318,  2275,  2288,  2289,  2301,  2276, 
-	 2290,  2095,  2315,  2136,  2277,  2291,  2314,  2305, 
-	 2328,  2329,  2330,  2331,  2319,  2498,  2499,  2500, 
-	 2512,  2513,  2514,  2471,  2484,  2485,  2497,  2472, 
-	 2486,  2511,  2332,  2473,  2487,  2510,  2501,  2524, 
-	 2525,  2526,  2527,  1913,  2095,  2108,  2109,  1914, 
-	 2096,  2110,  1730,  1925,  1926,  2121,  2304,  1731, 
-	 1927,  2122,  2305,  2123,  1732,  1928,  2306,  2124, 
-	 1744,  1939,  1940,  2135,  2318,  1745,  1941,  2136, 
-	 2319,  2137,  1746,  1942,  2320,  2277,  2290,  2291, 
-	 2278,  2292,  2138,  2317,  2331,  2332,  2333,  2500, 
-	 2501,  2502,  2514,  2515,  2516,  2473,  2486,  2487, 
-	 2474,  2488,  2334,  2513,  2527,  2528,  2529,  2110, 
-	 1719,  1732,  1901,  1915,  1927,  1928,  2083,  2097, 
-	 2123,  2124,  2279,  2292,  2306,  2111,  1720,  1733, 
-	 1902,  1916,  1929,  2084,  2098,  2125,  2280,  2293, 
-	 2307,  2112,  1746,  1942,  2320,  1734,  1747,  1930, 
-	 1943,  2126,  2294,  2308,  2321,  1941,  2137,  2138, 
-	 2139,  2334,  2335,  2319,  2333,  1944,  1957,  2140, 
-	 2502,  2503,  2504,  2516,  2517,  2475,  2488,  2476, 
-	 2489,  2490,  2518,  2530,  2531,  2515,  2529,  1932, 
-	 2128,  1919,  1920,  1946,  2115,  2116,  2324,  1737, 
-	 1921,  1933,  2117,  2129,  2311,  1934,  2130,  1935, 
-	 2131,  1751,  2325,  1936,  1948,  2132,  2143,  2326, 
-	 2144,  2312,  2327,  2313,  2314,  2145,  2328,  2339, 
-	 2507,  2521,  2340,  2508,  2522,  2523,  2509,  2510, 
-	 2341,  2524,  2535,  1937,  2133,  1753,  1949,  1754, 
-	 1938,  2134,  2146,  2329,  2315,  2316,  2147,  2330, 
-	 2342,  2525,  2511,  2512,  2536,  2343,  2526,  2537, 
-	 1951,  1756,  1939,  1952,  2135,  2148,  2317,  2331, 
-	 2344,  2513,  2538,  2527,  2539,  1938,  2133,  2134, 
-	 1743,  1939,  2122,  2135,  2317,  1744,  1940,  2123, 
-	 2136,  2318,  1756,  1951,  1952,  2146,  2147,  2330, 
-	 1757,  1953,  2148,  2331,  2149,  1758,  1941,  1954, 
-	 2137,  2332,  2150,  2329,  2344,  2345,  2328,  2319, 
-	 2342,  2343,  2333,  2346,  2513,  2514,  2526,  2527, 
-	 2528,  2525,  2540,  2541,  2524,  2515,  2538,  2539, 
-	 2529,  1783,  1795,  1796,  1978,  1979,  1989,  1990, 
-	 1991,  1992,  2005,  2017,  2018,  1784,  1797,  1980, 
-	 1993,  2006,  2019,  2176,  2189,  2202,  2031,  2032, 
-	 1994,  2007,  2020,  2190,  2203,  2228,  2371,  2409, 
-	 2033,  2045,  2216,  2241,  2423,  2386,  2424,  2568, 
-	 1978,  1979,  1980,  1991,  1992,  1993,  1994,  2005, 
-	 2006,  2007,  2019,  2176,  2189,  2190,  2202,  2371, 
-	 2177,  2203,  1981,  2191,  2204,  2361,  2386,  2178, 
-	 2205,  2373,  2216,  2217,  2218,  2387,  2231,  2192, 
-	 2219,  2374,  2232,  2206,  2233,  2388,  2401,  2568, 
-	 2415,  2428,  2429,  2442,  2177,  2191,  2361,  2166, 
-	 2362,  2178,  2373,  2192,  2179,  2374,  2193,  2205, 
-	 2219,  2387,  2206,  2388,  2220,  2180,  2194,  2207, 
-	 2221,  2401,  2234,  2248,  2208,  2235,  2417,  2430, 
-	 2444,  2222,  2249,  2404,  2431,  2363,  2612,  2415, 
-	 2429,  2443,  2445,  2613,  2236,  2432,  2639,  2362, 
-	 2167,  2180,  2363,  2168,  2181,  2364,  2179,  2193, 
-	 2194,  2207,  2195,  2559,  2208,  2209,  2221,  2222, 
-	 2404,  2223,  2391,  2235,  2236,  2417,  2250,  2405, 
-	 2182,  2196,  2237,  2419,  2560,  2249,  2432,  2210, 
-	 2251,  2378,  2433,  2431,  2573,  2392,  2388,  2430, 
-	 2446,  2374,  2447,  2615,  2612,  2613,  2445,  2406, 
-	 2574,  2264,  2224,  2460,  2642,  2420,  2461,  2643, 
-	 2641,  2459,  2265,  2238,  2252,  2434,  2474,  2656, 
-	 2448,  2475,  2616,  2657,  2168,  2364,  2169,  2182, 
-	 2365,  2196,  2560,  2210,  2378,  2391,  2405,  2392, 
-	 2224,  2183,  2406,  2561,  2238,  2420,  2252,  2434, 
-	 2393,  2419,  2574,  2448,  2573,  2616,  2266,  2462, 
-	 2644,  2617,  2212,  2226,  2240,  2254,  1990,  2017, 
-	 2018,  2031,  1991,  2005,  2019,  2032,  2045,  2228, 
-	 2241,  2268,  2409,  2423,  2202,  2464,  2424,  2437, 
-	 2189,  2202,  2228,  2241,  2409,  2423,  2176,  2190, 
-	 2203,  2216,  2242,  2371,  2424,  2217,  2230,  2243, 
-	 2437,  2386,  2451,  2568,  2203,  2216,  2371,  2190, 
-	 2204,  2217,  2218,  2230,  2231,  2244,  2386,  2243, 
-	 2424,  2568,  2373,  2387,  2428,  2623,  2218,  2373, 
-	 2386,  2205,  2387,  2219,  2374,  2401,  2206,  2388, 
-	 2415,  2191,  2231,  2232,  2245,  2246,  2428,  2233, 
-	 2220,  2429,  2568,  2442,  2430,  2443,  2623,  2455, 
-	 2456,  2444,  2457,  2612,  2639,  2259,  2247,  2234, 
-	 2248,  2261,  2417,  2468,  2651,  2469,  2202,  2216, 
-	 2228,  2230,  2241,  2242,  2243,  2255,  2371,  2409, 
-	 2423,  2424,  2437,  2203,  2217,  2231,  2244,  2256, 
-	 2386,  2204,  2218,  2232,  2245,  2257,  2269,  2451, 
-	 2258,  2270,  2453,  2568,  2428,  2465,  2466,  2623, 
-	 2246,  2373,  2387,  2259,  2401,  2442,  2271,  2415, 
-	 2455,  2283,  2272,  2273,  2284,  2285,  2467,  2468, 
-	 2479,  2480,  2456,  2469,  2481,  2651,  2493,  2676, 
-	 2207,  2221,  2234,  2235,  2248,  2388,  2429,  2430, 
-	 2443,  2444,  2249,  2262,  2417,  2431,  2404,  2236, 
-	 2445,  2250,  2263,  2432,  2446,  2613,  2612,  2458, 
-	 2459,  2457,  2639,  2641,  2653,  2654,  2642,  2276, 
-	 2471,  2264,  2277,  2472,  2290,  2278,  2291,  2460, 
-	 2473,  2485,  2486,  2474,  2668,  2487,  2656,  2669, 
-	 2667,  2681,  2682,  2238,  2392,  2406,  2420,  2252, 
-	 2434,  2266,  2393,  2448,  2280,  2462,  2644,  2476, 
-	 2617,  2616,  2574,  2658,  2071,  2085,  2294,  2490, 
-	 2099,  2308,  2504,  2254,  2268,  2228,  2241,  2282, 
-	 2409,  2423,  2464,  2424,  2437,  2255,  2243,  2256, 
-	 2257,  2269,  2451,  2478,  2296,  2270,  2271,  2283, 
-	 2453,  2465,  2466,  2492,  2674,  2467,  2479,  2284, 
-	 2297,  2480,  2310,  2298,  2481,  2493,  2494,  2468, 
-	 2676,  2482,  2495,  2677,  2232,  2245,  2246,  2257, 
-	 2258,  2259,  2270,  2271,  2386,  2428,  2442,  2453, 
-	 2260,  2272,  2455,  2466,  2273,  2285,  2467,  2468, 
-	 2456,  2274,  2469,  2623,  2470,  2481,  2482,  2651, 
-	 2415,  2429,  2443,  2480,  2457,  2483,  2639,  2677, 
-	 2260,  2401,  2415,  2428,  2429,  2442,  2455,  2443, 
-	 2456,  2261,  2430,  2444,  2457,  2247,  2273,  2274, 
-	 2468,  2248,  2262,  2275,  2470,  2469,  2288,  2276, 
-	 2289,  2417,  2431,  2445,  2458,  2471,  2287,  2482, 
-	 2484,  2472,  2623,  2612,  2639,  2653,  2651,  2483, 
-	 2459,  2485,  2654,  2667,  2613,  2641,  2496,  2678, 
-	 2679,  2680,  2302,  2290,  2303,  2301,  2498,  2497, 
-	 2304,  2473,  2486,  2499,  2500,  2668,  2681,  2694, 
-	 2487,  2682,  2695,  2669,  2264,  2432,  2446,  2223, 
-	 2237,  2251,  2278,  2391,  2405,  2419,  2460,  2433, 
-	 2447,  2265,  2224,  2238,  2252,  2279,  2392,  2406, 
-	 2420,  2461,  2434,  2459,  2473,  2474,  2266,  2448, 
-	 2475,  2292,  2293,  2487,  2306,  2488,  2280,  2307, 
-	 2462,  2489,  2642,  2615,  2643,  2616,  2656,  2657, 
-	 2670,  2644,  2671,  2573,  2574,  2669,  2502,  2684, 
-	 2476,  2503,  2658,  2685,  2683,  2501,  2294,  2320, 
-	 2308,  2321,  2490,  2698,  2699,  2697,  2516,  2504, 
-	 2517,  2284,  2453,  2465,  2466,  2467,  2479,  2285, 
-	 2455,  2468,  2480,  2286,  2469,  2481,  2298,  2493, 
-	 2299,  2482,  2494,  2300,  2483,  2495,  2496,  2676, 
-	 2677,  2456,  2651,  2470,  2678,  2484,  2497,  2679, 
-	 2691,  2287,  2288,  2301,  2302,  2498,  2457,  2639, 
-	 2471,  2653,  2680,  2485,  2667,  2290,  2459,  2472, 
-	 2277,  2291,  2304,  2446,  2460,  2473,  2486,  2278, 
-	 2292,  2305,  2474,  2487,  2485,  2499,  2500,  2306, 
-	 2488,  2501,  2502,  2641,  2654,  2668,  2642,  2656, 
-	 2669,  2682,  2670,  2683,  2696,  2684,  2697,  2681, 
-	 2695,  2280,  2294,  2462,  2476,  2308,  2490,  2504, 
-	 2099,  2113,  2505,  2518,  2658,  2699,  2492,  2310, 
-	 2283,  2284,  2297,  2465,  2466,  2479,  2480,  2298, 
-	 2467,  2481,  2493,  2494,  2495,  2324,  2311,  2312, 
-	 2482,  2496,  2507,  2128,  2313,  2508,  2509,  2325, 
-	 2326,  2510,  2521,  2674,  2676,  2677,  2691,  2522, 
-	 2705,  2678,  2706,  2717,  2483,  2497,  2314,  2484, 
-	 2498,  2315,  2511,  2327,  2328,  2512,  2523,  2679, 
-	 2524,  2680,  2694,  2718,  2719,  2316,  2485,  2499, 
-	 2329,  2330,  2513,  2525,  2526,  2667,  2681,  2695, 
-	 2720,  2709,  2485,  2497,  2498,  2303,  2316,  2472, 
-	 2486,  2499,  2304,  2317,  2473,  2487,  2500,  2315, 
-	 2510,  2512,  2511,  2513,  2318,  2501,  2514,  2330, 
-	 2331,  2329,  2524,  2526,  2525,  2527,  2332,  2515, 
-	 2694,  2695,  2696,  2709,  2710,  2667,  2680,  2681, 
-	 2668,  2682,  2528,  2669,  2683,  2706,  2697,  2720, 
-	 2722,  2719,  2711,  2487,  2500,  2305,  2318,  2474, 
-	 2488,  2501,  2306,  2319,  2502,  2513,  2514,  2515, 
-	 2320,  2516,  2332,  2333,  2527,  2528,  2529,  2334, 
-	 2696,  2697,  2698,  2710,  2711,  2712,  2669,  2682, 
-	 2683,  2670,  2684,  2530,  2709,  2724,  2725,  2502, 
-	 2293,  2307,  2320,  2475,  2489,  2503,  2294,  2308, 
-	 2321,  2476,  2490,  2515,  2516,  2698,  2504,  2517, 
-	 2699,  2334,  2335,  2530,  2518,  2531,  2713,  2529, 
-	 2712,  2671,  2684,  2685,  2726,  2727,  2711,  2725, 
-	 2308,  2490,  2504,  2505,  2518,  2335,  2336,  2154, 
-	 1945,  1959,  2155,  2545,  2742,  2713,  2727,  2741, 
-	 2531,  2547,  2349,  2743,  2324,  2311,  2312,  2507, 
-	 2508,  2325,  2326,  2509,  2521,  2327,  2510,  2522, 
-	 2523,  2339,  2340,  2524,  2535,  2717,  2341,  2536, 
-	 2718,  2719,  2705,  2706,  2537,  2720,  2731,  2691, 
-	 2732,  2328,  2511,  2329,  2512,  2525,  2342,  2526, 
-	 2343,  2538,  2539,  2722,  2733,  2734,  2330,  2513, 
-	 2344,  2527,  2540,  2709,  2735,  2330,  2331,  2513, 
-	 2524,  2525,  2526,  2514,  2527,  2332,  2515,  2528, 
-	 2344,  2345,  2343,  2538,  2540,  2539,  2541,  2346, 
-	 2529,  2709,  2710,  2722,  2724,  2725,  2737,  2720, 
-	 2711,  2735,  2734,  2332,  2333,  2515,  2527,  2528, 
-	 2516,  2529,  2334,  2530,  2346,  2347,  2541,  2348, 
-	 2725,  2544,  2726,  2711,  2712,  2724,  2737,  2740, 
-	 2334,  2529,  2530,  2517,  2335,  2348,  2531,  2713, 
-	 2518,  2336,  2349,  2544,  2545,  2726,  2727,  2740, 
-	 2741,  2725, 
+	    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,     0,     0,    88,    88,   172,   252,   318, 
-	    0,     0,   389,   475,   172,   252,     0,     0, 
-	  389,   558,   475,   626,   709,     0,     0,   389, 
-	  787,   875,   944,  1019,  1095,  1183,  1265,  1346, 
-	 1412,  1502,  1019,  1568,  1677,  1677,  1766,  1845, 
-	 1931,  2010,  1677,  2081,  2081,  2164,  2253,  2321, 
-	 2386,     0,  2429,  2429,  2516,  2602,  2681,   252, 
-	    0,     0,  2771,  2839,   475,   626,   709,     0, 
-	 2429,  2771,  2910,  2990,  3076,   709,  2429,  1183, 
-	 3162,  3234,  3324,  3406,   709,  3498,  1183,  1265, 
-	 3574,  1412,  3652,  1019,  3733,  3733,  2081,  3820, 
-	 1845,  3905,  2010,  3991,  4056,  4056,  2164,  2253, 
-	 2321,  2386,   318,   318,   318,  2516,  2602,  2681, 
-	  252,  2429,  4114,  2771,  4198,  2990,  3076,  4278, 
-	 2429,  4114,  2771,  4346,  4436,  4512,   709,  2429, 
-	 3162,  3162,  4603,  4699,  4786,   709,  3498,  4894, 
-	 1265,  3574,  1412,  3652,  1019,  3733,  3733,  2081, 
-	 4980,  5075,  3905,  2010,  3991,  4056,  4056,  2164, 
-	 2253,  2321,  2386,  2429,   318,  5149,  5217,  5323, 
-	 5412,  5531,  2429,  4114,  5595,  5659,  5759,  5842, 
-	 4278,  2429,  4114,  5931,  6008,  6107,  6194,  4278, 
-	 6294,  6375,  6447,  6523,  6629,  6721,  6835,  6918, 
-	 4894,  6981,  7043,  7116,  7180,  7255,  7300,  7374, 
-	 7456,  7545,  7653,  7736,  2010,  3991,  7822,  7822, 
-	 2164,  2253,  2321,  2386,  7874,  7899,  7949,  8033, 
-	 8110,  8197,  8289,  7899,  7949,  8367,  8456,  8110, 
-	 8531,  6835,  6294,  8606,  8367,  8683,  8756,  8531, 
-	 6835,  8841,  8916,  8997,  9065,  8756,  9139,  6835, 
-	 9209,  9273,  9273,  9353,  9403,  9443,  9488,  9516, 
-	 9592,  9669,  9741,  9815,  9869,  9927,  9972,  9972, 
-	10035, 10071, 10119, 10173, 10226, 10257, 10257, 10341, 
-	10427, 10517, 10594,  8289, 10257, 10341, 10682, 10766, 
-	10847, 10926, 11013, 11069, 10682, 11126, 11194, 10847, 
-	10926, 11013, 11274, 11359, 11448, 11535, 11632, 11702, 
-	11013, 11789, 11868, 11943, 12011, 12083, 12135, 12197, 
-	12222, 12304, 12388, 12465, 12547, 12607,  9927, 12671, 
-	12671, 12671, 12749, 10119, 10173, 10226, 10257, 10257, 
-	12801, 12840, 12884, 12927, 12996, 13026, 13048, 13068, 
-	13086, 12884, 12927, 12996, 11274, 13126, 13126, 13086, 
-	13184, 12927, 13235, 13259, 13126, 13300, 13336, 13184, 
-	13404, 13235, 13259, 13473, 13473, 13336, 13517, 13404, 
-	13553, 13566, 13566, 13566, 13634, 13683, 13719, 13752, 
-	13772, 13772, 13772, 13821, 13851, 13872, 13752, 
+	    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[] = {
-	   88,    88,    88,    84,    84,    80,    66,    71, 
-	   88,    88,    86,    83,    80,    66,    88,    88, 
-	   86,    68,    83,    83,    78,    88,    88,    86, 
-	   88,    69,    75,    76,    88,    82,    81,    66, 
-	   90,    66,    76,   109,    89,    89,    79,    86, 
-	   79,    71,    89,    83,    83,    89,    68,    65, 
-	   43,    88,    87,    87,    86,    79,    90,    66, 
-	   88,    88,    68,    71,    83,    83,    78,    88, 
-	   87,    68,    80,    86,    86,    78,    87,    82, 
-	   72,    90,    82,    92,    78,    76,    82,    81, 
-	   78,    90,    81,    76,    87,    87,    83,    85, 
-	   86,    86,    71,    65,    58,    58,    89,    68, 
-	   65,    43,    71,    71,    71,    86,    79,    90, 
-	   66,    87,    84,    68,    80,    86,    86,    68, 
-	   87,    84,    68,    90,    76,    91,    78,    87, 
-	   72,    72,    96,    87,   108,    78,    76,    86, 
-	   81,    78,    90,    81,    76,    87,    87,    83, 
-	   95,    74,    86,    71,    65,    58,    58,    89, 
-	   68,    65,    43,    87,    71,    68,   106,    89, 
-	  119,    64,    87,    84,    64,   100,    83,    89, 
-	   68,    87,    84,    77,    99,    87,   100,    68, 
-	   81,    72,    76,   106,    92,   114,    83,    63, 
-	   86,    62,    73,    64,    75,    45,    74,    82, 
-	   89,   108,    83,    86,    71,    65,    52,    52, 
-	   89,    68,    65,    43,    25,    50,    84,    77, 
-	   87,    92,    78,    50,    84,    89,    75,    87, 
-	   75,    83,    81,    77,    89,    73,    85,    75, 
-	   83,    75,    81,    68,    74,    85,    70,    83, 
-	   64,    80,    80,    50,    40,    45,    28,    76, 
-	   77,    72,    74,    54,    58,    45,    63,    63, 
-	   36,    48,    54,    53,    31,    84,    84,    86, 
-	   90,    77,    88,    78,    84,    86,    84,    81, 
-	   79,    87,    56,    57,    84,    68,    80,    79, 
-	   87,    56,    85,    89,    87,    97,    70,    87, 
-	   56,    79,    75,    68,    72,    52,    62,    25, 
-	   82,    84,    77,    82,    60,    64,    45,    78, 
-	   78,    78,    52,    54,    53,    31,    84,    84, 
-	   39,    44,    43,    69,    30,    22,    20,    18, 
-	   40,    43,    69,    30,    85,    58,    58,    40, 
-	   51,    69,    24,    41,    58,    36,    68,    51, 
-	   69,    24,    41,    44,    44,    68,    36,    69, 
-	   13,    68,    68,    68,    49,    36,    33,    20, 
-	   49,    49,    49,    30,    21,    18,    20, 
+	   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.07, 0.002, 30, 7,
+	0.067, 0.001, 93, 9,
         _vq_pigeonmap_lsp30_0,
-	13890,
+	1693,
         _vq_fitlist_lsp30_0,
         _vq_fitmap_lsp30_0,
         _vq_fitlength_lsp30_0
 };
 
 static static_codebook _vq_book_lsp30_0 = {
-	3, 2744,
+	2, 676,
         _vq_lengthlist_lsp30_0,
-	1, 1603398533, 1592812110, 5, 1,
+	1, 1603348202, 1590714958, 7, 1,
         _vq_quantlist_lsp30_0,
         NULL,
         NULL,
         &_vq_auxp_lsp30_0,
+	0
 };
 
 

1.3       +13 -14    vorbis/lib/books/res0_128_1024_1.vqh

Index: res0_128_1024_1.vqh
===================================================================
RCS file: /usr/local/cvsroot/vorbis/lib/books/res0_128_1024_1.vqh,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- res0_128_1024_1.vqh	2000/11/17 11:47:20	1.2
+++ res0_128_1024_1.vqh	2001/01/22 01:38:30	1.3
@@ -1,13 +1,12 @@
 /********************************************************************
  *                                                                  *
- * THIS FILE IS PART OF THE Ogg Vorbis SOFTWARE CODEC SOURCE CODE.  *
+ * THIS FILE IS PART OF THE OggVorbis 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 GNU LESSER/LIBRARY PUBLIC LICENSE, WHICH IS INCLUDED WITH    *
+ * THIS SOURCE. PLEASE READ THESE TERMS BEFORE DISTRIBUTING.        *
  *                                                                  *
- * THE OggSQUISH SOURCE CODE IS (C) COPYRIGHT 1994-1999             *
- * by 1999 Monty <monty at xiph.org> and The XIPHOPHORUS Company       *
- * http://www.xiph.org/                                             *
+ * THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2001             *
+ * by the XIPHOPHORUS Company, http://www.xiph.org/                 *
  *                                                                  *
  ********************************************************************
 
@@ -21,17 +20,17 @@
 
 static long _vq_quantlist_res0_128_1024_1[] = {
         1,
-	2,
         0,
+	2,
 };
 
 static long _vq_lengthlist_res0_128_1024_1[] = {
-	 1, 4, 4, 4, 7, 7, 5, 7, 7, 5, 8, 8, 8,11,11, 8,
-	11,11, 5, 8, 8, 8,11,11, 8,11,11, 4, 8, 8, 8,11,
-	11, 8,11,11, 8,11,11,11,15,15,11,15,15, 8,11,11,
-	11,15,15,12,15,15, 5, 8, 8, 8,11,11, 8,11,11, 8,
-	11,11,11,15,15,11,15,15, 8,11,11,12,15,15,11,15,
-	15,
+	 1, 4, 4, 4, 8, 8, 4, 8, 8, 5, 8, 8, 9,12,12, 9,
+	12,12, 5, 8, 8, 8,12,12, 8,12,12, 5, 8, 8, 9,12,
+	12, 8,12,12, 9,12,12,12,16,16,13,16,16, 8,12,12,
+	12,16,16,12,16,16, 4, 8, 8, 8,12,12, 8,12,12, 8,
+	12,12,13,16,16,12,16,16, 8,12,12,12,16,16,12,16,
+	16,
 };
 
 static float _vq_quantthresh_res0_128_1024_1[] = {
@@ -39,7 +38,7 @@
 };
 
 static long _vq_quantmap_res0_128_1024_1[] = {
-	    2,    0,    1,
+	    1,    0,    2,
 };
 
 static encode_aux_threshmatch _vq_auxt_res0_128_1024_1 = {

1.2       +10 -11    vorbis/lib/books/res0_128_1024_2.vqh

Index: res0_128_1024_2.vqh
===================================================================
RCS file: /usr/local/cvsroot/vorbis/lib/books/res0_128_1024_2.vqh,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- res0_128_1024_2.vqh	2000/11/08 06:08:13	1.1
+++ res0_128_1024_2.vqh	2001/01/22 01:38:30	1.2
@@ -1,13 +1,12 @@
 /********************************************************************
  *                                                                  *
- * THIS FILE IS PART OF THE Ogg Vorbis SOFTWARE CODEC SOURCE CODE.  *
+ * THIS FILE IS PART OF THE OggVorbis 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 GNU LESSER/LIBRARY PUBLIC LICENSE, WHICH IS INCLUDED WITH    *
+ * THIS SOURCE. PLEASE READ THESE TERMS BEFORE DISTRIBUTING.        *
  *                                                                  *
- * THE OggSQUISH SOURCE CODE IS (C) COPYRIGHT 1994-1999             *
- * by 1999 Monty <monty at xiph.org> and The XIPHOPHORUS Company       *
- * http://www.xiph.org/                                             *
+ * THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2001             *
+ * by the XIPHOPHORUS Company, http://www.xiph.org/                 *
  *                                                                  *
  ********************************************************************
 
@@ -21,15 +20,15 @@
 
 static long _vq_quantlist_res0_128_1024_2[] = {
         1,
-	2,
         0,
+	2,
 };
 
 static long _vq_lengthlist_res0_128_1024_2[] = {
-	 3, 4, 4, 4, 6, 6, 5, 6, 6, 4, 6, 6, 6, 8, 8, 6,
-	 8, 8, 5, 6, 6, 6, 8, 8, 6, 8, 8, 5, 6, 6, 6, 8,
+	 3, 4, 4, 5, 6, 6, 4, 6, 6, 5, 6, 6, 6, 8, 8, 6,
+	 8, 8, 4, 6, 6, 6, 8, 8, 6, 8, 8, 5, 7, 6, 7, 8,
          8, 6, 8, 8, 6, 8, 8, 8,10,10, 8,10,10, 6, 8, 8,
-	 8,10,10, 8,10,10, 5, 6, 7, 6, 8, 8, 7, 8, 8, 6,
+	 8,10,10, 8,10,10, 5, 6, 6, 6, 8, 8, 6, 8, 8, 6,
          8, 8, 8,10,10, 8,10,10, 6, 8, 8, 8,10,10, 8,10,
         10,
 };
@@ -39,7 +38,7 @@
 };
 
 static long _vq_quantmap_res0_128_1024_2[] = {
-	    2,    0,    1,
+	    1,    0,    2,
 };
 
 static encode_aux_threshmatch _vq_auxt_res0_128_1024_2 = {

1.3       +47 -48    vorbis/lib/books/res0_128_1024_3.vqh

Index: res0_128_1024_3.vqh
===================================================================
RCS file: /usr/local/cvsroot/vorbis/lib/books/res0_128_1024_3.vqh,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- res0_128_1024_3.vqh	2000/11/17 11:47:20	1.2
+++ res0_128_1024_3.vqh	2001/01/22 01:38:30	1.3
@@ -1,13 +1,12 @@
 /********************************************************************
  *                                                                  *
- * THIS FILE IS PART OF THE Ogg Vorbis SOFTWARE CODEC SOURCE CODE.  *
+ * THIS FILE IS PART OF THE OggVorbis 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 GNU LESSER/LIBRARY PUBLIC LICENSE, WHICH IS INCLUDED WITH    *
+ * THIS SOURCE. PLEASE READ THESE TERMS BEFORE DISTRIBUTING.        *
  *                                                                  *
- * THE OggSQUISH SOURCE CODE IS (C) COPYRIGHT 1994-1999             *
- * by 1999 Monty <monty at xiph.org> and The XIPHOPHORUS Company       *
- * http://www.xiph.org/                                             *
+ * THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2001             *
+ * by the XIPHOPHORUS Company, http://www.xiph.org/                 *
  *                                                                  *
  ********************************************************************
 
@@ -21,52 +20,52 @@
 
 static long _vq_quantlist_res0_128_1024_3[] = {
         2,
-	3,
-	4,
         1,
+	3,
         0,
+	4,
 };
 
 static long _vq_lengthlist_res0_128_1024_3[] = {
-	 2, 4, 7, 5, 7, 5, 6, 9, 7, 9, 7, 9,13, 9,13, 5,
-	 7, 9, 7, 9, 7, 9,13, 9,13, 5, 7, 9, 7, 9, 7, 8,
-	11, 9,11, 9,11,15,12,15, 7, 9,11, 9,11, 9,11,15,
-	11,15, 7, 9,13, 9,12, 9,11,15,11,15,13,15,19,15,
-	18, 9,11,15,12,15,13,15,19,16,18, 5, 7, 9, 7, 9,
-	 7, 9,11, 9,11, 9,11,15,11,15, 7, 9,11, 9,11, 9,
-	11,15,11,15, 7, 9,12, 9,13, 9,12,15,12,15,13,15,
-	19,15,18, 9,12,15,12,16,13,15,19,15,18, 5, 7, 9,
-	 7, 9, 7, 9,11, 9,11, 9,11,15,12,16, 7, 9,11, 9,
-	11, 9,11,15,12,15, 7, 9,11, 9,11, 9,11,13,11,13,
-	11,13,17,14,17, 9,11,13,11,14,12,14,18,14,18, 9,
-	12,15,12,15,11,14,17,14,17,15,17,18,18,20,12,14,
-	18,14,18,16,17,20,17,21, 7, 9,11, 9,11, 9,11,14,
-	11,13,12,14,18,13,17, 9,11,14,11,14,12,14,18,14,
-	17, 9,12,15,12,15,11,14,18,13,18,15,17,20,17,19,
-	12,14,18,14,18,16,18,20,18,21, 7, 9,13, 9,13, 9,
-	12,16,12,16,13,16,19,15,19, 9,12,15,12,16,13,15,
-	18,16,21, 9,12,15,12,15,11,13,18,14,18,15,18,21,
-	18,19,12,14,18,13,18,15,18,21,17,19,13,16,20,16,
-	19,15,18,21,17,20,19,19,21,20,21,15,18,21,17,20,
-	19,21,21,21,21, 9,12,16,12,16,11,14,18,14,18,15,
-	17,20,17,20,12,14,18,14,18,16,17,21,19,21,13,15,
-	19,16,18,15,18,21,18,20,19,21,21,18,21,16,18,20,
-	18,20,19,21,21,21,20, 5, 7, 9, 7, 9, 7, 9,11, 9,
-	11, 9,12,15,12,15, 7, 9,11, 9,11, 9,12,15,12,15,
-	 7, 9,12, 9,11, 9,11,13,11,13,12,14,17,14,17, 9,
-	11,13,11,13,11,13,18,14,17, 9,12,15,12,15,12,14,
-	17,14,18,15,18,19,19,20,12,13,17,14,18,15,17,19,
-	19,20, 7, 9,11, 9,12, 9,11,14,11,14,12,14,17,14,
-	17, 9,11,14,11,13,12,14,18,13,16, 9,12,15,12,15,
-	12,14,18,14,17,16,18,20,18,20,12,14,17,14,18,16,
-	18,20,17,20, 7, 9,13, 9,13, 9,12,16,12,16,13,15,
-	21,16,20, 9,12,16,12,15,13,16,18,16,21, 9,12,15,
-	12,16,12,14,17,14,17,15,18,21,17,20,11,14,17,14,
-	18,15,17,20,18,21,13,15,19,16,19,15,17,20,18,21,
-	18,20,21,21,21,15,17,20,18,21,20,19,21,21,21, 9,
-	12,16,12,15,12,14,18,14,18,15,18,20,18,21,11,14,
-	18,14,19,16,18,19,17,21,13,16,18,16,19,15,18,21,
-	19,21,19,19,21,21,21,15,17,20,17,20,19,21,20,20,
+	 2, 5, 4, 7, 7, 5, 7, 7, 9, 9, 5, 7, 7, 9, 9, 7,
+	 9, 9,13,13, 7, 9, 9,13,13, 5, 7, 7, 9, 9, 7, 9,
+	 9,12,12, 7, 9, 9,12,12,10,12,12,16,16,10,12,12,
+	16,15, 4, 7, 7, 9, 9, 7, 9, 9,12,12, 7, 9, 9,12,
+	11, 9,12,12,16,16,10,12,12,16,15, 7, 9, 9,12,12,
+	10,12,12,16,16, 9,12,12,16,16,14,16,16,19,20,14,
+	16,16,20,19, 7, 9, 9,13,13,10,12,12,16,16,10,12,
+	12,16,16,14,16,16,19,21,14,16,16,21,20, 5, 7, 7,
+	 9, 9, 7, 9, 9,12,12, 7, 9, 9,12,12, 9,12,12,16,
+	16, 9,12,12,16,16, 7, 9, 9,12,12, 9,11,11,14,14,
+	 9,11,11,14,14,12,14,14,17,18,12,14,14,18,18, 7,
+	 9, 9,12,12, 9,11,11,14,14, 9,11,11,14,14,12,15,
+	14,18,18,12,14,14,19,19,10,12,12,16,16,12,14,14,
+	18,19,12,14,14,19,18,16,17,20,20,21,16,19,20,20,
+	20,10,12,12,16,16,12,14,14,20,20,12,14,14,19,18,
+	16,18,17,21,19,16,18,19,20,20, 5, 7, 7, 9, 9, 7,
+	 9, 9,12,12, 7, 9, 9,12,12, 9,12,12,16,16, 9,12,
+	12,17,16, 7, 9, 9,12,12, 9,11,11,14,14, 9,11,11,
+	14,14,12,14,14,19,19,12,14,14,17,19, 7, 9, 9,12,
+	12, 9,11,11,14,14, 9,11,11,14,14,12,14,14,18,20,
+	12,14,14,18,18, 9,12,12,16,16,12,14,14,19,19,12,
+	14,14,18,20,16,19,19,21,21,16,18,18,21,21, 9,12,
+	12,16,16,12,14,14,19,18,12,14,14,20,19,16,17,18,
+	21,21,16,19,17,21,19, 7,10, 9,13,13, 9,12,12,16,
+	16, 9,12,12,17,16,13,16,16,20,20,13,17,16,21,21,
+	 9,12,12,16,16,12,14,14,19,18,12,14,14,19,19,16,
+	18,19,20,20,16,19,18,21,21, 9,12,12,16,16,12,14,
+	14,21,17,12,14,14,18,19,16,18,18,21,21,16,18,18,
+	21,21,14,16,16,19,20,16,18,18,20,21,16,19,18,21,
+	21,20,20,21,21,21,20,20,21,21,21,13,16,16,20,20,
+	16,20,17,21,20,16,18,18,21,21,19,21,21,21,21,20,
+	21,21,21,21, 7, 9, 9,13,13, 9,12,12,16,16, 9,12,
+	12,17,16,13,16,16,19,20,13,16,16,20,20, 9,12,12,
+	16,16,12,14,14,19,18,12,14,14,19,18,16,18,19,21,
+	21,16,19,19,21,21, 9,12,12,16,16,12,14,14,19,21,
+	12,14,14,20,17,16,19,19,21,21,16,20,18,21,20,14,
+	16,16,21,20,16,19,19,20,21,16,17,18,20,20,20,21,
+	21,21,21,18,21,21,21,21,13,16,16,20,21,16,19,19,
+	21,21,16,17,17,20,21,20,21,19,21,21,19,21,20,20,
         20,
 };
 
@@ -75,7 +74,7 @@
 };
 
 static long _vq_quantmap_res0_128_1024_3[] = {
-	    4,    3,    0,    1,    2,
+	    3,    1,    0,    2,    4,
 };
 
 static encode_aux_threshmatch _vq_auxt_res0_128_1024_3 = {

1.3       +48 -49    vorbis/lib/books/res0_128_1024_4.vqh

Index: res0_128_1024_4.vqh
===================================================================
RCS file: /usr/local/cvsroot/vorbis/lib/books/res0_128_1024_4.vqh,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- res0_128_1024_4.vqh	2000/11/17 11:47:20	1.2
+++ res0_128_1024_4.vqh	2001/01/22 01:38:30	1.3
@@ -1,13 +1,12 @@
 /********************************************************************
  *                                                                  *
- * THIS FILE IS PART OF THE Ogg Vorbis SOFTWARE CODEC SOURCE CODE.  *
+ * THIS FILE IS PART OF THE OggVorbis 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 GNU LESSER/LIBRARY PUBLIC LICENSE, WHICH IS INCLUDED WITH    *
+ * THIS SOURCE. PLEASE READ THESE TERMS BEFORE DISTRIBUTING.        *
  *                                                                  *
- * THE OggSQUISH SOURCE CODE IS (C) COPYRIGHT 1994-1999             *
- * by 1999 Monty <monty at xiph.org> and The XIPHOPHORUS Company       *
- * http://www.xiph.org/                                             *
+ * THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2001             *
+ * by the XIPHOPHORUS Company, http://www.xiph.org/                 *
  *                                                                  *
  ********************************************************************
 
@@ -21,53 +20,53 @@
 
 static long _vq_quantlist_res0_128_1024_4[] = {
         2,
-	3,
-	4,
         1,
+	3,
         0,
+	4,
 };
 
 static long _vq_lengthlist_res0_128_1024_4[] = {
-	 5, 6, 8, 6, 8, 6, 6, 9, 6, 9, 8, 9,11, 9,11, 6,
-	 6, 9, 6, 9, 8, 9,11, 9,11, 6, 7, 9, 6, 9, 6, 7,
-	10, 7,10, 9,10,12,10,12, 7, 7,10, 7,10, 9,10,12,
-	10,12, 8, 9,11, 9,11, 9,10,12,10,12,11,12,14,12,
-	14, 9,10,12,10,12,11,12,15,12,14, 6, 7, 9, 7, 9,
-	 7, 7,10, 7,10, 9,10,12,10,12, 7, 7,10, 7,10, 9,
-	10,12,10,12, 8, 9,11, 9,11, 9,10,12,10,12,11,12,
-	15,12,14, 9,10,12,10,12,11,12,14,12,14, 6, 7, 9,
-	 7, 9, 7, 7,10, 7,10, 9,10,12,10,12, 7, 7,10, 7,
-	10, 9,10,12,10,12, 7, 7,10, 7,10, 7, 8,10, 8,11,
-	10,11,13,11,13, 7, 8,11, 8,11,10,11,13,11,13, 9,
-	10,12,10,12,10,11,13,11,13,12,13,15,13,16,10,11,
-	14,11,13,12,14,15,13,16, 7, 7,10, 8,10, 7, 8,11,
-	 8,11,10,11,13,11,13, 7, 8,11, 8,11,10,11,13,11,
-	13, 9,10,12,10,12,10,11,13,11,13,12,13,15,13,15,
-	10,11,13,11,14,12,13,16,13,16, 8, 9,11, 9,11, 9,
-	10,12,10,12,11,12,15,12,15, 9,10,12,10,12,11,12,
-	15,12,15, 9,10,12,10,12,10,11,13,11,13,12,14,15,
-	13,16,10,11,13,11,13,12,14,16,13,16,11,12,15,12,
-	14,12,13,16,13,17,15,15,17,16,18,12,13,16,13,16,
-	15,16,19,16,17, 9,10,12,10,12,10,11,14,11,13,12,
-	14,15,13,16,10,11,13,11,13,12,13,15,14,16,11,12,
-	14,12,15,12,13,16,13,16,14,15,18,15,17,12,13,16,
-	14,16,14,16,18,16,18, 6, 7, 9, 7, 9, 6, 7,10, 7,
-	10, 9,10,12,10,12, 7, 7,10, 7,10, 9,10,12,10,12,
-	 7, 7,10, 7,10, 7, 8,11, 8,11,10,11,13,11,13, 7,
-	 8,11, 9,11,10,11,13,11,14, 9,10,12,10,12,10,11,
-	13,11,13,12,14,16,13,15,10,11,13,11,13,12,13,15,
-	13,16, 7, 7,10, 8,10, 7, 8,11, 8,11,10,11,13,11,
-	13, 7, 8,11, 8,11,10,11,13,11,13, 9,10,12,10,12,
-	10,11,13,11,13,12,13,16,13,15,10,11,13,11,13,12,
-	13,16,13,15, 8, 9,11, 9,11, 9,10,12,10,12,11,12,
-	14,12,15, 9,10,12,10,12,11,12,15,13,14, 9,10,12,
-	10,12,10,11,14,11,13,12,13,16,13,16,10,11,13,11,
-	13,12,13,17,14,17,11,13,15,12,15,12,13,16,13,16,
-	15,15,19,16,18,12,13,16,13,16,14,15,16,16,18, 9,
-	10,12,10,12,10,11,13,11,14,12,14,15,14,16,10,11,
-	13,11,13,12,13,16,13,15,11,12,14,12,15,12,13,16,
-	14,16,15,16,17,16,17,12,13,16,13,16,15,16,18,15,
-	16,
+	 5, 6, 6, 8, 8, 6, 6, 6, 9, 9, 6, 6, 6, 9, 9, 8,
+	 9, 9,12,12, 8, 9, 9,11,11, 6, 7, 6, 9, 9, 6, 7,
+	 7,10,10, 6, 7, 7,10,10, 9,10,10,13,12, 9,10,10,
+	13,13, 6, 6, 6, 9, 9, 6, 7, 7,10,10, 6, 7, 7,10,
+	10, 9,10,10,13,13, 9,10,10,13,12, 8, 9, 9,12,12,
+	 9,10,10,13,13, 9,10,10,13,13,12,13,13,15,15,12,
+	13,13,16,15, 8, 9, 9,12,12, 9,10,10,13,13, 9,10,
+	10,13,13,12,13,13,16,15,12,13,13,16,15, 6, 7, 7,
+	 9, 9, 7, 8, 8,10,10, 6, 7, 7,10,10, 9,10,10,13,
+	13, 9,10,10,13,13, 6, 8, 7,10,10, 7, 8, 9,11,11,
+	 7, 9, 9,11,11,10,11,11,14,14,10,11,11,14,14, 6,
+	 7, 8,10,10, 7, 9, 8,11,11, 7, 9, 9,11,11,10,11,
+	11,15,14,10,11,11,14,14, 9,10,10,14,13,10,11,11,
+	14,14,10,12,11,14,14,13,14,14,16,17,13,14,15,18,
+	16, 9,10,10,13,14,10,11,11,15,14,10,11,11,14,15,
+	13,14,14,16,16,13,14,15,16,16, 6, 7, 7, 9, 9, 6,
+	 8, 7,10,10, 7, 8, 8,10,10, 9,10,10,13,13, 9,10,
+	10,13,13, 6, 8, 7,10,10, 7, 9, 9,11,11, 7, 8, 9,
+	11,11,10,11,11,14,14,10,11,11,13,14, 6, 8, 7,10,
+	10, 7, 9, 9,11,11, 7, 9, 8,11,11,10,11,11,14,14,
+	10,12,11,14,13, 9,10,10,13,13,10,12,11,14,14,10,
+	11,11,14,14,13,14,14,17,17,13,14,14,15,16, 9,10,
+	10,14,14,10,11,11,14,15,10,11,11,14,14,13,14,15,
+	17,16,13,14,14,16,15, 8, 9, 9,12,12, 9,11,10,14,
+	14, 9,10,10,13,14,12,14,14,16,16,12,13,14,16,16,
+	 9,10,10,13,13,10,11,11,15,14,10,12,12,15,14,14,
+	15,15,17,17,14,15,15,17,16, 9,10,10,13,13,10,12,
+	11,15,14,10,11,12,14,15,13,15,15,16,16,14,14,15,
+	17,17,12,14,13,16,16,13,14,15,17,18,13,15,14,17,
+	17,16,17,17,17,19,16,17,17,18,20,12,13,13,16,16,
+	13,15,14,17,16,13,14,15,16,17,15,17,16,20,17,15,
+	16,18,18,18, 8, 9, 9,12,12, 9,10,10,13,13, 9,11,
+	10,14,13,12,13,14,16,16,13,13,14,16,16, 9,10,10,
+	13,13,10,12,11,14,14,10,11,12,14,15,14,15,14,17,
+	17,14,15,15,17,18, 9,10,10,13,13,10,11,12,14,15,
+	10,12,11,15,14,13,14,15,17,18,14,15,14,16,16,12,
+	13,14,17,16,13,15,14,17,17,13,14,14,17,18,16,17,
+	17,19,18,16,16,17,17,19,12,13,13,16,16,13,15,15,
+	17,17,13,15,14,17,16,16,16,17,18,19,15,17,16,17,
+	19,
 };
 
 static float _vq_quantthresh_res0_128_1024_4[] = {
@@ -75,7 +74,7 @@
 };
 
 static long _vq_quantmap_res0_128_1024_4[] = {
-	    4,    3,    0,    1,    2,
+	    3,    1,    0,    2,    4,
 };
 
 static encode_aux_threshmatch _vq_auxt_res0_128_1024_4 = {

1.3       +33 -19    vorbis/lib/books/res0_128_1024_5.vqh

Index: res0_128_1024_5.vqh
===================================================================
RCS file: /usr/local/cvsroot/vorbis/lib/books/res0_128_1024_5.vqh,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- res0_128_1024_5.vqh	2000/11/17 11:47:20	1.2
+++ res0_128_1024_5.vqh	2001/01/22 01:38:30	1.3
@@ -1,13 +1,12 @@
 /********************************************************************
  *                                                                  *
- * THIS FILE IS PART OF THE Ogg Vorbis SOFTWARE CODEC SOURCE CODE.  *
+ * THIS FILE IS PART OF THE OggVorbis 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 GNU LESSER/LIBRARY PUBLIC LICENSE, WHICH IS INCLUDED WITH    *
+ * THIS SOURCE. PLEASE READ THESE TERMS BEFORE DISTRIBUTING.        *
  *                                                                  *
- * THE OggSQUISH SOURCE CODE IS (C) COPYRIGHT 1994-1999             *
- * by 1999 Monty <monty at xiph.org> and The XIPHOPHORUS Company       *
- * http://www.xiph.org/                                             *
+ * THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2001             *
+ * by the XIPHOPHORUS Company, http://www.xiph.org/                 *
  *                                                                  *
  ********************************************************************
 
@@ -20,41 +19,56 @@
 #include "codebook.h"
 
 static long _vq_quantlist_res0_128_1024_5[] = {
-	3,
-	4,
-	5,
         6,
+	5,
+	7,
+	4,
+	8,
+	3,
+	9,
         2,
+	10,
         1,
+	11,
         0,
+	12,
 };
 
 static long _vq_lengthlist_res0_128_1024_5[] = {
-	 1, 4, 6, 6, 4, 6, 6, 4, 6, 8, 8, 6, 8, 8, 6, 8,
-	11,10, 8,11,11, 6, 9,11,12, 9,11,12, 4, 6, 8, 8,
-	 6, 8, 8, 6, 8,11,10, 8,11,11, 6, 9,11,12, 9,11,
-	12,
+	 1, 4, 4, 6, 6, 6, 6, 8, 8, 9, 9,10,10, 4, 6, 6,
+	 8, 8, 9, 9,11,11,12,12,13,13, 4, 6, 6, 8, 8, 9,
+	 9,11,11,12,12,13,13, 6, 9, 9,12,11,12,12,13,14,
+	14,14,15,15, 6, 9, 9,12,11,12,12,13,13,14,14,15,
+	16, 7, 9, 9,12,12,14,14,15,15,16,16,17,17, 7, 9,
+	 9,12,12,14,14,15,15,16,16,16,17, 8,11,11,14,14,
+	15,15,16,16,17,17,19,18, 8,11,11,14,14,15,15,16,
+	16,17,17,17,18, 9,13,13,15,15,16,16,17,17,18,18,
+	18,18, 9,12,13,15,15,16,16,17,17,18,17,19,18,10,
+	14,14,16,16,18,17,19,20,19,19,19,19,10,14,14,16,
+	16,18,18,18,17,18,19,20,19,
 };
 
 static float _vq_quantthresh_res0_128_1024_5[] = {
-	-2.5, -1.5, -0.5, 0.5, 1.5, 2.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, 
 };
 
 static long _vq_quantmap_res0_128_1024_5[] = {
-	    6,    5,    4,    0,    1,    2,    3,
+	   11,    9,    7,    5,    3,    1,    0,    2,
+	    4,    6,    8,   10,   12,
 };
 
 static encode_aux_threshmatch _vq_auxt_res0_128_1024_5 = {
         _vq_quantthresh_res0_128_1024_5,
         _vq_quantmap_res0_128_1024_5,
-	7,
-	7
+	13,
+	13
 };
 
 static static_codebook _vq_book_res0_128_1024_5 = {
-	2, 49,
+	2, 169,
         _vq_lengthlist_res0_128_1024_5,
-	1, -533200896, 1611661312, 3, 0,
+	1, -531103744, 1611661312, 4, 0,
         _vq_quantlist_res0_128_1024_5,
         NULL,
         &_vq_auxt_res0_128_1024_5,

1.3       +33 -19    vorbis/lib/books/res0_128_1024_6.vqh

Index: res0_128_1024_6.vqh
===================================================================
RCS file: /usr/local/cvsroot/vorbis/lib/books/res0_128_1024_6.vqh,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- res0_128_1024_6.vqh	2000/11/17 11:47:20	1.2
+++ res0_128_1024_6.vqh	2001/01/22 01:38:30	1.3
@@ -1,13 +1,12 @@
 /********************************************************************
  *                                                                  *
- * THIS FILE IS PART OF THE Ogg Vorbis SOFTWARE CODEC SOURCE CODE.  *
+ * THIS FILE IS PART OF THE OggVorbis 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 GNU LESSER/LIBRARY PUBLIC LICENSE, WHICH IS INCLUDED WITH    *
+ * THIS SOURCE. PLEASE READ THESE TERMS BEFORE DISTRIBUTING.        *
  *                                                                  *
- * THE OggSQUISH SOURCE CODE IS (C) COPYRIGHT 1994-1999             *
- * by 1999 Monty <monty at xiph.org> and The XIPHOPHORUS Company       *
- * http://www.xiph.org/                                             *
+ * THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2001             *
+ * by the XIPHOPHORUS Company, http://www.xiph.org/                 *
  *                                                                  *
  ********************************************************************
 
@@ -20,41 +19,56 @@
 #include "codebook.h"
 
 static long _vq_quantlist_res0_128_1024_6[] = {
-	3,
-	4,
-	5,
         6,
+	5,
+	7,
+	4,
+	8,
+	3,
+	9,
         2,
+	10,
         1,
+	11,
         0,
+	12,
 };
 
 static long _vq_lengthlist_res0_128_1024_6[] = {
-	 2, 4, 5, 6, 4, 5, 6, 4, 5, 6, 7, 5, 6, 7, 5, 6,
-	 8, 9, 7, 8, 9, 6, 8, 9,11, 8,10,11, 4, 5, 6, 7,
-	 5, 6, 7, 5, 6, 8, 9, 7, 8, 9, 6, 8,10,11, 8, 9,
-	11,
+	 3, 4, 4, 5, 5, 6, 6, 7, 7, 8, 8, 9, 9, 4, 5, 5,
+	 6, 6, 7, 7, 8, 8, 9, 9,10,10, 4, 5, 5, 6, 6, 7,
+	 7, 8, 8, 9, 9,10,10, 6, 6, 6, 7, 7, 9, 9,10,10,
+	11,11,12,12, 5, 6, 6, 7, 7, 9, 9,10,10,11,11,12,
+	12, 7, 7, 7, 9, 9,10,10,11,11,12,12,13,13, 7, 7,
+	 7, 9, 9,10,10,11,11,12,12,13,13, 8, 9, 9,10,10,
+	11,11,12,12,13,13,14,14, 8, 9, 9,10,10,11,11,12,
+	12,13,13,14,14, 9,10,10,11,11,13,12,13,13,14,14,
+	14,15, 9,10,10,11,11,12,12,13,13,14,14,14,15,10,
+	11,11,12,12,13,13,14,14,15,15,15,15,10,11,11,12,
+	12,14,13,14,14,15,15,15,15,
 };
 
 static float _vq_quantthresh_res0_128_1024_6[] = {
-	-2.5, -1.5, -0.5, 0.5, 1.5, 2.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, 
 };
 
 static long _vq_quantmap_res0_128_1024_6[] = {
-	    6,    5,    4,    0,    1,    2,    3,
+	   11,    9,    7,    5,    3,    1,    0,    2,
+	    4,    6,    8,   10,   12,
 };
 
 static encode_aux_threshmatch _vq_auxt_res0_128_1024_6 = {
         _vq_quantthresh_res0_128_1024_6,
         _vq_quantmap_res0_128_1024_6,
-	7,
-	7
+	13,
+	13
 };
 
 static static_codebook _vq_book_res0_128_1024_6 = {
-	2, 49,
+	2, 169,
         _vq_lengthlist_res0_128_1024_6,
-	1, -533200896, 1611661312, 3, 0,
+	1, -531103744, 1611661312, 4, 0,
         _vq_quantlist_res0_128_1024_6,
         NULL,
         &_vq_auxt_res0_128_1024_6,

1.3       +76 -23    vorbis/lib/books/res0_128_1024_7.vqh

Index: res0_128_1024_7.vqh
===================================================================
RCS file: /usr/local/cvsroot/vorbis/lib/books/res0_128_1024_7.vqh,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- res0_128_1024_7.vqh	2000/11/17 11:47:20	1.2
+++ res0_128_1024_7.vqh	2001/01/22 01:38:30	1.3
@@ -1,13 +1,12 @@
 /********************************************************************
  *                                                                  *
- * THIS FILE IS PART OF THE Ogg Vorbis SOFTWARE CODEC SOURCE CODE.  *
+ * THIS FILE IS PART OF THE OggVorbis 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 GNU LESSER/LIBRARY PUBLIC LICENSE, WHICH IS INCLUDED WITH    *
+ * THIS SOURCE. PLEASE READ THESE TERMS BEFORE DISTRIBUTING.        *
  *                                                                  *
- * THE OggSQUISH SOURCE CODE IS (C) COPYRIGHT 1994-1999             *
- * by 1999 Monty <monty at xiph.org> and The XIPHOPHORUS Company       *
- * http://www.xiph.org/                                             *
+ * THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2001             *
+ * by the XIPHOPHORUS Company, http://www.xiph.org/                 *
  *                                                                  *
  ********************************************************************
 
@@ -20,46 +19,100 @@
 #include "codebook.h"
 
 static long _vq_quantlist_res0_128_1024_7[] = {
-	5,
-	6,
-	7,
-	8,
+	12,
+	11,
+	13,
         10,
+	14,
+	9,
+	15,
+	8,
+	16,
+	7,
+	17,
+	6,
+	18,
+	5,
+	19,
         4,
+	20,
         3,
+	21,
         2,
+	22,
+	1,
+	23,
         0,
+	24,
 };
 
 static long _vq_lengthlist_res0_128_1024_7[] = {
-	 2, 4, 5, 6, 6, 4, 5, 6, 6, 4, 5, 7, 8, 8, 5, 7,
-	 8, 8, 6, 7, 9,10,10, 7, 9,10,10, 6, 8,10,11,10,
-	 8,10,11,11, 6, 8,10,11,12, 8,10,11,12, 4, 5, 7,
-	 8, 8, 5, 7, 8, 8, 6, 7, 9,10,10, 7, 9,10,10, 6,
-	 8,10,11,10, 8,10,11,11, 6, 8,10,11,12, 8,10,11,
-	12,
+	 2, 4, 4, 6, 6, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8,
+	 8, 9, 9, 9, 9, 9, 9,10,10, 4, 6, 6, 7, 7, 8, 8,
+	 9, 9, 9, 9,10,10, 9, 9,10,10,10,10,11,11,11,11,
+	11,12, 4, 6, 6, 7, 7, 8, 8, 9, 9, 9, 9,10,10, 9,
+	 9,10,10,10,10,11,11,11,11,12,12, 6, 7, 7, 9, 9,
+	 9, 9,10,10,11,11,11,11,11,11,11,11,12,12,12,12,
+	13,12,13,13, 6, 7, 7, 9, 8, 9, 9,10,10,11,11,11,
+	11,11,11,11,11,12,12,12,12,13,12,13,13, 7, 8, 8,
+	10, 9,10,10,11,11,11,11,12,12,12,12,12,12,13,13,
+	13,13,13,13,14,14, 7, 8, 8,10, 9,10,10,11,11,11,
+	12,12,12,12,12,13,12,13,13,13,13,14,14,14,14, 8,
+	 9, 9,10,10,11,11,12,12,12,12,13,13,13,13,13,13,
+	13,13,14,14,14,14,15,15, 8, 9, 9,10,10,11,11,12,
+	12,12,12,13,13,13,13,13,13,13,13,14,14,14,14,14,
+	14, 8,10,10,11,11,12,12,12,12,13,13,13,13,13,13,
+	14,14,14,14,14,14,14,15,15,15, 8,10,10,11,11,12,
+	12,12,13,13,13,13,13,13,13,14,14,14,14,14,15,15,
+	15,15,15, 9,10,10,12,12,13,13,13,13,14,14,14,14,
+	14,14,14,14,15,15,15,15,15,15,16,16, 9,10,10,12,
+	12,12,12,13,13,13,13,14,14,14,14,14,14,15,14,15,
+	15,15,15,16,15, 8,10,10,12,11,13,13,13,13,14,13,
+	14,14,14,14,15,15,15,15,15,16,16,16,16,16, 8,10,
+	10,12,11,12,12,13,13,13,13,14,14,15,14,15,14,15,
+	15,15,15,15,15,16,16, 9,11,11,12,12,13,13,14,14,
+	14,14,15,14,15,15,15,15,15,15,16,16,16,16,16,17,
+	 9,11,11,12,12,13,13,14,13,14,14,14,15,15,15,15,
+	15,15,15,16,16,16,16,17,16, 9,11,11,12,13,13,13,
+	14,14,15,14,15,15,15,15,15,16,16,16,16,16,17,16,
+	18,17, 9,11,11,13,13,13,14,14,14,15,15,15,14,15,
+	15,16,16,16,16,16,16,16,16,17,17,10,12,12,13,13,
+	14,14,14,15,15,15,15,15,15,15,16,16,16,17,16,16,
+	17,16,17,17,10,12,12,13,13,14,14,14,14,15,15,15,
+	15,16,16,16,16,16,16,17,16,17,17,17,17,10,12,12,
+	13,13,14,14,15,15,15,15,15,16,17,16,17,16,16,18,
+	17,17,18,17,18,17,10,12,12,13,14,14,14,15,15,15,
+	15,16,15,16,16,16,16,16,17,16,16,19,17,18,17,11,
+	13,12,14,14,15,15,15,15,15,16,16,16,16,17,16,16,
+	18,17,17,17,17,17,17,19,11,13,13,14,14,15,15,15,
+	16,16,16,16,16,17,16,16,16,18,18,17,17,17,17,18,
+	17,
 };
 
 static float _vq_quantthresh_res0_128_1024_7[] = {
-	-4, -2.5, -1.5, -0.5, 0.5, 1.5, 2.5, 4, 
+	-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, 
 };
 
 static long _vq_quantmap_res0_128_1024_7[] = {
-	    8,    7,    6,    5,    0,    1,    2,    3,
-	    4,
+	   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,
 };
 
 static encode_aux_threshmatch _vq_auxt_res0_128_1024_7 = {
         _vq_quantthresh_res0_128_1024_7,
         _vq_quantmap_res0_128_1024_7,
-	9,
-	9
+	25,
+	25
 };
 
 static static_codebook _vq_book_res0_128_1024_7 = {
-	2, 81,
+	2, 625,
         _vq_lengthlist_res0_128_1024_7,
-	1, -531365888, 1611661312, 4, 0,
+	1, -529006592, 1611661312, 5, 0,
         _vq_quantlist_res0_128_1024_7,
         NULL,
         &_vq_auxt_res0_128_1024_7,

1.3       +173 -31   vorbis/lib/books/res0_128_1024_8.vqh

Index: res0_128_1024_8.vqh
===================================================================
RCS file: /usr/local/cvsroot/vorbis/lib/books/res0_128_1024_8.vqh,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- res0_128_1024_8.vqh	2000/11/17 11:47:20	1.2
+++ res0_128_1024_8.vqh	2001/01/22 01:38:30	1.3
@@ -1,13 +1,12 @@
 /********************************************************************
  *                                                                  *
- * THIS FILE IS PART OF THE Ogg Vorbis SOFTWARE CODEC SOURCE CODE.  *
+ * THIS FILE IS PART OF THE OggVorbis 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 GNU LESSER/LIBRARY PUBLIC LICENSE, WHICH IS INCLUDED WITH    *
+ * THIS SOURCE. PLEASE READ THESE TERMS BEFORE DISTRIBUTING.        *
  *                                                                  *
- * THE OggSQUISH SOURCE CODE IS (C) COPYRIGHT 1994-1999             *
- * by 1999 Monty <monty at xiph.org> and The XIPHOPHORUS Company       *
- * http://www.xiph.org/                                             *
+ * THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2001             *
+ * by the XIPHOPHORUS Company, http://www.xiph.org/                 *
  *                                                                  *
  ********************************************************************
 
@@ -20,56 +19,199 @@
 #include "codebook.h"
 
 static long _vq_quantlist_res0_128_1024_8[] = {
-	11,
-	12,
-	13,
-	14,
-	16,
-	19,
+	21,
+	20,
         22,
+	19,
+	23,
+	18,
+	24,
+	17,
+	25,
+	16,
+	26,
+	15,
+	27,
+	14,
+	28,
+	13,
+	29,
+	12,
+	30,
+	11,
+	31,
         10,
+	32,
         9,
+	33,
         8,
+	34,
+	7,
+	35,
         6,
+	36,
+	5,
+	37,
+	4,
+	38,
         3,
+	39,
+	2,
+	40,
+	1,
+	41,
         0,
+	42,
 };
 
 static long _vq_lengthlist_res0_128_1024_8[] = {
-	 2, 4, 5, 6, 7, 6, 8, 4, 5, 6, 7, 6, 8, 4, 6, 7,
-	 8, 8, 8,10, 6, 7, 8, 8, 8,10, 6, 7, 9, 9,10,10,
-	11, 7, 9, 9,10,10,11, 6, 8,10,10,10,10,11, 8,10,
-	10,10,10,11, 7, 9,11,11,11,11,12, 9,11,11,11,11,
-	12, 7, 9,11,11,12,12,13, 9,11,11,12,12,13, 9,11,
-	13,13,13,14,14,11,13,13,13,14,15, 4, 6, 7, 8, 8,
-	 8,10, 6, 7, 8, 8, 8,10, 6, 8, 9, 9,10,10,11, 8,
-	 9, 9,10,10,11, 7, 8,10,10,10,10,11, 8,10,10,10,
-	10,11, 7, 9,11,11,11,11,12, 9,11,11,11,11,12, 7,
-	 9,11,11,11,12,13, 9,11,11,11,12,13, 9,11,13,13,
-	13,13,15,11,13,13,13,14,14,
+	 3, 5, 5, 5, 6, 6, 6, 7, 7, 7, 7, 7, 7, 8, 8, 8,
+	 8, 8, 8, 9, 8, 9, 9, 9, 9, 8, 8, 9, 9, 9, 9, 9,
+	 9,10,10,10,10,10,10,11,10,10,10, 5, 6, 6, 7, 7,
+	 8, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9,10,10,
+	10,10,10,10,10,10,10,10,10,10,11,10,11,11,11,11,
+	11,11,12,12,11,11, 5, 6, 6, 7, 7, 8, 8, 8, 8, 8,
+	 8, 9, 9, 9, 9, 9, 9, 9, 9,10,10,10,10,10,10,10,
+	10,10,10,10,10,11,10,11,11,11,11,11,11,12,12,11,
+	11, 7, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9,10, 9,10,10,
+	10,10,10,10,11,11,11,11,11,11,11,11,11,11,11,11,
+	11,11,12,11,12,12,12,12,12,12,12,12, 7, 8, 7, 8,
+	 8, 9, 9, 9, 9, 9, 9,10, 9,10,10,10,10,10,10,11,
+	10,11,11,11,11,11,11,11,11,11,11,11,11,12,12,12,
+	12,12,12,12,12,12,12, 8, 8, 8, 9, 9, 9,10,10,10,
+	10,10,10,10,11,11,11,11,11,11,11,11,11,11,12,11,
+	11,11,12,12,12,12,12,12,12,12,13,13,13,13,13,13,
+	12,12, 8, 8, 8, 9, 9, 9,10,10,10,10,10,10,10,11,
+	10,11,11,11,11,11,11,12,11,12,12,11,11,12,12,12,
+	12,12,12,12,12,13,13,13,13,13,13,12,12, 8, 9, 9,
+	10,10,10,10,10,10,11,11,11,11,11,11,11,11,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, 8, 9, 9,10,10,10,10,10,
+	10,11,11,11,11,11,11,11,11,12,11,12,12,12,12,12,
+	12,12,12,12,12,13,13,13,13,13,13,13,13,13,13,14,
+	13,13,13, 9,10,10,10,10,11,11,11,11,11,11,12,11,
+	12,12,12,12,12,12,12,12,12,12,13,13,13,13,13,12,
+	13,13,13,13,14,13,14,14,14,14,14,14,13,13, 9,10,
+	10,10,10,11,11,11,11,11,11,11,11,12,12,12,12,12,
+	12,12,12,13,12,13,13,13,12,13,13,13,13,13,13,13,
+	13,14,14,14,14,14,14,13,13, 9,10,10,11,11,11,11,
+	12,12,12,12,12,12,12,12,12,12,12,13,13,13,13,13,
+	13,13,13,13,13,13,13,14,14,14,14,14,14,14,14,14,
+	14,15,14,14, 9,10,10,11,11,11,11,12,11,12,12,12,
+	12,12,12,12,12,13,12,13,13,13,13,13,13,13,13,13,
+	13,14,13,13,14,14,14,14,14,14,14,15,14,14,14,10,
+	11,11,11,11,12,12,12,12,12,12,13,12,13,13,13,13,
+	13,13,13,13,13,13,14,13,13,13,13,13,14,15,14,14,
+	14,14,14,14,14,14,15,15,14,14,10,11,11,11,11,12,
+	12,12,12,12,12,12,12,13,12,13,13,13,13,13,13,13,
+	13,14,14,13,14,14,13,14,14,14,14,14,14,14,15,14,
+	14,15,15,14,14,10,11,11,12,12,12,12,13,12,13,12,
+	13,13,13,13,13,13,14,14,14,13,14,14,14,14,14,14,
+	14,14,14,15,14,15,15,15,15,15,15,15,16,15,14,14,
+	10,11,11,12,12,12,12,12,13,13,13,13,13,13,13,13,
+	13,14,13,13,13,13,14,14,14,14,14,14,14,14,14,15,
+	14,15,15,15,15,15,14,15,15,14,14,10,11,11,12,12,
+	12,12,13,13,13,13,13,13,14,13,13,13,14,14,14,14,
+	14,14,14,15,14,14,14,15,15,15,15,15,15,15,15,15,
+	16,15,15,15,15,15,10,11,12,12,12,12,13,13,13,13,
+	13,13,13,14,13,14,14,14,13,14,14,14,14,14,15,14,
+	14,14,15,15,15,15,15,15,15,15,16,15,15,16,16,15,
+	15,11,12,12,12,12,13,13,13,13,13,13,13,13,13,14,
+	14,14,14,14,15,14,15,15,15,14,15,15,15,15,15,15,
+	16,15,15,15,16,15,15,16,16,16,15,16,11,12,12,12,
+	12,13,13,13,13,13,13,14,14,14,14,14,14,14,14,14,
+	14,15,15,15,15,14,15,15,14,15,15,15,15,16,15,16,
+	16,16,16,16,16,16,15,11,12,12,13,13,13,13,14,13,
+	14,14,14,13,14,14,14,14,14,14,15,14,15,15,15,15,
+	15,15,15,15,16,15,15,15,16,16,16,16,16,16,16,15,
+	16,15,11,12,12,13,13,13,13,13,13,14,13,14,14,14,
+	14,14,14,15,14,14,14,15,15,15,15,15,15,15,15,15,
+	15,16,15,15,16,15,16,15,16,16,16,15,15,12,13,13,
+	13,13,14,13,14,14,14,14,14,14,15,14,15,14,15,15,
+	15,15,15,15,15,15,15,15,15,15,16,16,15,16,17,16,
+	17,16,16,17,17,16,16,15,12,12,12,13,13,13,14,14,
+	14,14,14,14,14,14,14,15,15,15,15,15,15,15,15,16,
+	16,15,15,16,15,15,16,16,16,16,16,16,16,17,16,16,
+	16,16,16,10,12,12,13,13,13,13,14,13,14,14,14,14,
+	15,14,15,15,15,15,15,15,16,15,15,15,15,16,15,16,
+	16,15,16,17,16,16,18,17,17,17,18,17,16,16,10,12,
+	12,12,13,13,13,14,14,14,14,14,14,14,14,14,14,15,
+	15,15,15,15,15,15,15,16,16,15,16,16,16,16,17,16,
+	16,17,16,17,16,17,16,16,16,11,12,12,13,13,13,14,
+	14,14,14,14,14,14,14,15,15,15,15,15,16,15,15,16,
+	15,16,16,16,16,18,17,16,17,16,16,17,17,17,16,16,
+	17,16,17,16,11,12,12,13,13,13,13,15,14,15,14,15,
+	14,15,14,15,15,15,15,15,15,15,15,15,15,16,16,16,
+	16,16,16,17,16,16,17,16,16,17,17,17,18,17,17,11,
+	12,12,13,13,14,14,14,15,14,15,15,15,15,15,15,15,
+	15,15,16,15,16,16,16,16,17,16,17,16,17,17,17,17,
+	17,19,17,18,17,18,18,17,17,17,11,12,12,13,13,14,
+	14,14,14,14,15,15,15,16,16,15,15,16,16,15,15,16,
+	15,16,16,16,16,17,17,18,16,17,16,18,16,17,16,18,
+	16,17,17,17,17,12,13,13,14,14,14,14,14,14,15,15,
+	15,15,16,16,16,16,16,16,17,16,16,16,16,16,16,16,
+	18,17,16,17,18,17,17,20,18,19,17,19,18,20,18,17,
+	12,13,13,14,14,14,14,15,14,15,15,16,15,15,15,16,
+	16,15,15,17,16,17,16,17,16,16,16,16,16,17,16,20,
+	17,19,19,18,18,19,19,17,18,19,17,12,13,13,14,14,
+	14,15,15,15,16,15,16,15,15,15,16,15,16,16,17,17,
+	16,16,16,17,16,17,17,18,17,17,18,18,19,18,18,18,
+	17,17,20,19,17,17,12,13,14,14,15,15,15,15,15,15,
+	15,15,16,16,16,16,16,17,16,16,17,18,16,16,16,18,
+	16,18,18,18,17,18,17,18,18,18,19,17,18,18,19,18,
+	17,13,14,14,15,15,15,15,16,15,15,16,15,16,17,17,
+	16,16,17,17,17,17,17,17,16,19,18,19,18,17,17,17,
+	18,20,20,17,18,18,18,18,19,18,18,20,13,14,14,14,
+	15,15,15,15,15,16,16,16,16,16,16,16,16,17,17,17,
+	17,17,17,16,18,19,17,19,17,17,17,18,17,18,17,18,
+	18,19,19,19,18,20,18,13,14,14,15,16,16,15,16,17,
+	16,16,16,17,17,17,17,20,17,17,18,18,17,17,19,18,
+	17,18,19,18,18,17,19,18,17,18,18,19,18,20,20,20,
+	19,19,13,14,14,15,15,15,16,16,16,16,17,16,17,17,
+	17,18,17,17,17,16,17,17,17,17,18,20,18,19,18,19,
+	19,18,18,18,19,17,18,18,18,18,20,18,17,14,15,15,
+	15,16,15,17,16,17,16,18,17,17,17,17,16,18,19,17,
+	18,19,19,17,19,19,18,18,19,18,18,18,18,20,20,20,
+	20,20,19,20,20,18,18,18,14,15,15,16,15,16,16,17,
+	17,17,17,17,16,20,17,17,19,17,19,17,17,19,17,17,
+	20,17,20,18,20,19,19,18,18,19,20,20,20,20,18,18,
+	20,19,18,13,15,15,15,15,15,15,17,16,16,16,16,17,
+	16,16,16,17,17,19,17,18,18,18,19,18,18,19,18,18,
+	17,18,19,19,18,20,18,18,18,20,18,17,17,19,13,15,
+	15,15,15,15,16,16,16,16,17,17,17,17,17,17,17,17,
+	18,17,18,17,17,17,18,17,18,18,17,18,17,19,18,17,
+	18,17,17,19,17,18,18,18,17,
 };
 
 static float _vq_quantthresh_res0_128_1024_8[] = {
-	-9.5, -6.5, -4, -2.5, -1.5, -0.5, 0.5, 1.5, 
-	2.5, 4, 6.5, 9.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, 
 };
 
 static long _vq_quantmap_res0_128_1024_8[] = {
-	   12,   11,   10,    9,    8,    7,    0,    1,
-	    2,    3,    4,    5,    6,
+	   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,
 };
 
 static encode_aux_threshmatch _vq_auxt_res0_128_1024_8 = {
         _vq_quantthresh_res0_128_1024_8,
         _vq_quantmap_res0_128_1024_8,
-	13,
-	13
+	43,
+	43
 };
 
 static static_codebook _vq_book_res0_128_1024_8 = {
-	2, 169,
+	2, 1849,
         _vq_lengthlist_res0_128_1024_8,
-	1, -529137664, 1611661312, 5, 0,
+	1, -527106048, 1611661312, 6, 0,
         _vq_quantlist_res0_128_1024_8,
         NULL,
         &_vq_auxt_res0_128_1024_8,

1.3       +439 -41   vorbis/lib/books/res0_128_1024_9.vqh

Index: res0_128_1024_9.vqh
===================================================================
RCS file: /usr/local/cvsroot/vorbis/lib/books/res0_128_1024_9.vqh,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- res0_128_1024_9.vqh	2000/11/17 11:47:20	1.2
+++ res0_128_1024_9.vqh	2001/01/22 01:38:30	1.3
@@ -1,13 +1,12 @@
 /********************************************************************
  *                                                                  *
- * THIS FILE IS PART OF THE Ogg Vorbis SOFTWARE CODEC SOURCE CODE.  *
+ * THIS FILE IS PART OF THE OggVorbis 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 GNU LESSER/LIBRARY PUBLIC LICENSE, WHICH IS INCLUDED WITH    *
+ * THIS SOURCE. PLEASE READ THESE TERMS BEFORE DISTRIBUTING.        *
  *                                                                  *
- * THE OggSQUISH SOURCE CODE IS (C) COPYRIGHT 1994-1999             *
- * by 1999 Monty <monty at xiph.org> and The XIPHOPHORUS Company       *
- * http://www.xiph.org/                                             *
+ * THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2001             *
+ * by the XIPHOPHORUS Company, http://www.xiph.org/                 *
  *                                                                  *
  ********************************************************************
 
@@ -20,78 +19,477 @@
 #include "codebook.h"
 
 static long _vq_quantlist_res0_128_1024_9[] = {
-	56,
-	57,
-	58,
-	59,
-	61,
-	64,
-	67,
-	70,
-	73,
-	76,
-	80,
-	84,
-	87,
-	91,
-	95,
-	99,
-	103,
-	107,
+	170,
+	169,
+	171,
+	168,
+	172,
+	167,
+	173,
+	166,
+	174,
+	165,
+	175,
+	164,
+	176,
+	163,
+	177,
+	162,
+	178,
+	161,
+	179,
+	160,
+	180,
+	159,
+	181,
+	158,
+	182,
+	157,
+	183,
+	156,
+	184,
+	155,
+	185,
+	154,
+	186,
+	153,
+	187,
+	152,
+	188,
+	151,
+	189,
+	150,
+	190,
+	149,
+	191,
+	148,
+	192,
+	147,
+	193,
+	146,
+	194,
+	145,
+	195,
+	144,
+	196,
+	143,
+	197,
+	142,
+	198,
+	141,
+	199,
+	140,
+	200,
+	139,
+	201,
+	138,
+	202,
+	137,
+	203,
+	136,
+	204,
+	135,
+	205,
+	134,
+	206,
+	133,
+	207,
+	132,
+	208,
+	131,
+	209,
+	130,
+	210,
+	129,
+	211,
+	128,
+	212,
+	127,
+	213,
+	126,
+	214,
+	125,
+	215,
+	124,
+	216,
+	123,
+	217,
+	122,
+	218,
+	121,
+	219,
+	120,
+	220,
+	119,
+	221,
+	118,
+	222,
+	117,
+	223,
+	116,
+	224,
+	115,
+	225,
+	114,
+	226,
+	113,
+	227,
         112,
+	228,
+	111,
+	229,
+	110,
+	230,
+	109,
+	231,
+	108,
+	232,
+	107,
+	233,
+	106,
+	234,
+	105,
+	235,
+	104,
+	236,
+	103,
+	237,
+	102,
+	238,
+	101,
+	239,
+	100,
+	240,
+	99,
+	241,
+	98,
+	242,
+	97,
+	243,
+	96,
+	244,
+	95,
+	245,
+	94,
+	246,
+	93,
+	247,
+	92,
+	248,
+	91,
+	249,
+	90,
+	250,
+	89,
+	251,
+	88,
+	252,
+	87,
+	253,
+	86,
+	254,
+	85,
+	255,
+	84,
+	256,
+	83,
+	257,
+	82,
+	258,
+	81,
+	259,
+	80,
+	260,
+	79,
+	261,
+	78,
+	262,
+	77,
+	263,
+	76,
+	264,
+	75,
+	265,
+	74,
+	266,
+	73,
+	267,
+	72,
+	268,
+	71,
+	269,
+	70,
+	270,
+	69,
+	271,
+	68,
+	272,
+	67,
+	273,
+	66,
+	274,
+	65,
+	275,
+	64,
+	276,
+	63,
+	277,
+	62,
+	278,
+	61,
+	279,
+	60,
+	280,
+	59,
+	281,
+	58,
+	282,
+	57,
+	283,
+	56,
+	284,
         55,
+	285,
         54,
+	286,
         53,
+	287,
+	52,
+	288,
         51,
+	289,
+	50,
+	290,
+	49,
+	291,
         48,
+	292,
+	47,
+	293,
+	46,
+	294,
         45,
+	295,
+	44,
+	296,
+	43,
+	297,
         42,
+	298,
+	41,
+	299,
+	40,
+	300,
         39,
+	301,
+	38,
+	302,
+	37,
+	303,
         36,
+	304,
+	35,
+	305,
+	34,
+	306,
+	33,
+	307,
         32,
+	308,
+	31,
+	309,
+	30,
+	310,
+	29,
+	311,
         28,
+	312,
+	27,
+	313,
+	26,
+	314,
         25,
+	315,
+	24,
+	316,
+	23,
+	317,
+	22,
+	318,
         21,
+	319,
+	20,
+	320,
+	19,
+	321,
+	18,
+	322,
         17,
+	323,
+	16,
+	324,
+	15,
+	325,
+	14,
+	326,
         13,
+	327,
+	12,
+	328,
+	11,
+	329,
+	10,
+	330,
         9,
+	331,
+	8,
+	332,
+	7,
+	333,
+	6,
+	334,
         5,
+	335,
+	4,
+	336,
+	3,
+	337,
+	2,
+	338,
+	1,
+	339,
         0,
+	340,
 };
 
 static long _vq_lengthlist_res0_128_1024_9[] = {
-	 2, 4, 4, 4, 4, 5, 6, 6, 7, 7, 8, 9,10,11,12,13,
-	14,14,16, 3, 4, 4, 4, 5, 5, 6, 7, 7, 8, 9,10,11,
-	12,13,14,15,16,
+	 3, 3, 3, 4, 4, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6,
+	 6, 6, 6, 7, 6, 7, 7, 7, 7, 7, 7, 7, 7, 8, 8, 8,
+	 8, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 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,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,13,13,13,13,13,13,13,13,13,13,13,13,
+	13,13,13,13,13,13,14,13,13,14,14,14,14,13,14,14,
+	14,14,14,14,14,14,14,15,15,14,14,15,14,15,15,15,
+	15,15,15,15,15,15,15,15,15,15,16,15,15,16,15,16,
+	16,16,16,15,16,16,16,16,17,16,16,16,17,16,17,17,
+	16,16,17,17,17,16,16,17,16,17,17,17,17,17,17,17,
+	17,17,17,19,17,17,18,18,18,18,18,18,18,18,18,18,
+	20,18,19,19,19,18,18,17,20,19,19,19,20,17,19,18,
+	19,19,19,18,18,20,19,20,19,20,19,19,20,19,19,19,
+	20,20,20,18,19,18,19,20,20,20,20,20,19,20,20,20,
+	20,19,20,20,20,20,19,20,19,20,20,20,19,20,20,20,
+	20,20,20,20,20,20,20,20,20,20,20,19,20,20,20,20,
+	20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,
+	19,20,20,20,20,20,19,20,20,20,20,20,20,20,20,20,
+	20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,
+	20,20,20,20,20,
 };
 
 static float _vq_quantthresh_res0_128_1024_9[] = {
-	-53.5, -49, -45, -41, -37, -33, -29.5, -26, 
-	-22, -18.5, -15.5, -12.5, -9.5, -6.5, -4, -2.5, 
-	-1.5, -0.5, 0.5, 1.5, 2.5, 4, 6.5, 9.5, 
-	12.5, 15.5, 18.5, 22, 26, 29.5, 33, 37, 
-	41, 45, 49, 53.5, 
+	-169.5, -168.5, -167.5, -166.5, -165.5, -164.5, -163.5, -162.5, 
+	-161.5, -160.5, -159.5, -158.5, -157.5, -156.5, -155.5, -154.5, 
+	-153.5, -152.5, -151.5, -150.5, -149.5, -148.5, -147.5, -146.5, 
+	-145.5, -144.5, -143.5, -142.5, -141.5, -140.5, -139.5, -138.5, 
+	-137.5, -136.5, -135.5, -134.5, -133.5, -132.5, -131.5, -130.5, 
+	-129.5, -128.5, -127.5, -126.5, -125.5, -124.5, -123.5, -122.5, 
+	-121.5, -120.5, -119.5, -118.5, -117.5, -116.5, -115.5, -114.5, 
+	-113.5, -112.5, -111.5, -110.5, -109.5, -108.5, -107.5, -106.5, 
+	-105.5, -104.5, -103.5, -102.5, -101.5, -100.5, -99.5, -98.5, 
+	-97.5, -96.5, -95.5, -94.5, -93.5, -92.5, -91.5, -90.5, 
+	-89.5, -88.5, -87.5, -86.5, -85.5, -84.5, -83.5, -82.5, 
+	-81.5, -80.5, -79.5, -78.5, -77.5, -76.5, -75.5, -74.5, 
+	-73.5, -72.5, -71.5, -70.5, -69.5, -68.5, -67.5, -66.5, 
+	-65.5, -64.5, -63.5, -62.5, -61.5, -60.5, -59.5, -58.5, 
+	-57.5, -56.5, -55.5, -54.5, -53.5, -52.5, -51.5, -50.5, 
+	-49.5, -48.5, -47.5, -46.5, -45.5, -44.5, -43.5, -42.5, 
+	-41.5, -40.5, -39.5, -38.5, -37.5, -36.5, -35.5, -34.5, 
+	-33.5, -32.5, -31.5, -30.5, -29.5, -28.5, -27.5, -26.5, 
+	-25.5, -24.5, -23.5, -22.5, -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, 
+	22.5, 23.5, 24.5, 25.5, 26.5, 27.5, 28.5, 29.5, 
+	30.5, 31.5, 32.5, 33.5, 34.5, 35.5, 36.5, 37.5, 
+	38.5, 39.5, 40.5, 41.5, 42.5, 43.5, 44.5, 45.5, 
+	46.5, 47.5, 48.5, 49.5, 50.5, 51.5, 52.5, 53.5, 
+	54.5, 55.5, 56.5, 57.5, 58.5, 59.5, 60.5, 61.5, 
+	62.5, 63.5, 64.5, 65.5, 66.5, 67.5, 68.5, 69.5, 
+	70.5, 71.5, 72.5, 73.5, 74.5, 75.5, 76.5, 77.5, 
+	78.5, 79.5, 80.5, 81.5, 82.5, 83.5, 84.5, 85.5, 
+	86.5, 87.5, 88.5, 89.5, 90.5, 91.5, 92.5, 93.5, 
+	94.5, 95.5, 96.5, 97.5, 98.5, 99.5, 100.5, 101.5, 
+	102.5, 103.5, 104.5, 105.5, 106.5, 107.5, 108.5, 109.5, 
+	110.5, 111.5, 112.5, 113.5, 114.5, 115.5, 116.5, 117.5, 
+	118.5, 119.5, 120.5, 121.5, 122.5, 123.5, 124.5, 125.5, 
+	126.5, 127.5, 128.5, 129.5, 130.5, 131.5, 132.5, 133.5, 
+	134.5, 135.5, 136.5, 137.5, 138.5, 139.5, 140.5, 141.5, 
+	142.5, 143.5, 144.5, 145.5, 146.5, 147.5, 148.5, 149.5, 
+	150.5, 151.5, 152.5, 153.5, 154.5, 155.5, 156.5, 157.5, 
+	158.5, 159.5, 160.5, 161.5, 162.5, 163.5, 164.5, 165.5, 
+	166.5, 167.5, 168.5, 169.5, 
 };
 
 static long _vq_quantmap_res0_128_1024_9[] = {
-	   36,   35,   34,   33,   32,   31,   30,   29,
-	   28,   27,   26,   25,   24,   23,   22,   21,
-	   20,   19,    0,    1,    2,    3,    4,    5,
-	    6,    7,    8,    9,   10,   11,   12,   13,
-	   14,   15,   16,   17,   18,
+	  339,  337,  335,  333,  331,  329,  327,  325,
+	  323,  321,  319,  317,  315,  313,  311,  309,
+	  307,  305,  303,  301,  299,  297,  295,  293,
+	  291,  289,  287,  285,  283,  281,  279,  277,
+	  275,  273,  271,  269,  267,  265,  263,  261,
+	  259,  257,  255,  253,  251,  249,  247,  245,
+	  243,  241,  239,  237,  235,  233,  231,  229,
+	  227,  225,  223,  221,  219,  217,  215,  213,
+	  211,  209,  207,  205,  203,  201,  199,  197,
+	  195,  193,  191,  189,  187,  185,  183,  181,
+	  179,  177,  175,  173,  171,  169,  167,  165,
+	  163,  161,  159,  157,  155,  153,  151,  149,
+	  147,  145,  143,  141,  139,  137,  135,  133,
+	  131,  129,  127,  125,  123,  121,  119,  117,
+	  115,  113,  111,  109,  107,  105,  103,  101,
+	   99,   97,   95,   93,   91,   89,   87,   85,
+	   83,   81,   79,   77,   75,   73,   71,   69,
+	   67,   65,   63,   61,   59,   57,   55,   53,
+	   51,   49,   47,   45,   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,   46,   48,   50,   52,   54,   56,   58,
+	   60,   62,   64,   66,   68,   70,   72,   74,
+	   76,   78,   80,   82,   84,   86,   88,   90,
+	   92,   94,   96,   98,  100,  102,  104,  106,
+	  108,  110,  112,  114,  116,  118,  120,  122,
+	  124,  126,  128,  130,  132,  134,  136,  138,
+	  140,  142,  144,  146,  148,  150,  152,  154,
+	  156,  158,  160,  162,  164,  166,  168,  170,
+	  172,  174,  176,  178,  180,  182,  184,  186,
+	  188,  190,  192,  194,  196,  198,  200,  202,
+	  204,  206,  208,  210,  212,  214,  216,  218,
+	  220,  222,  224,  226,  228,  230,  232,  234,
+	  236,  238,  240,  242,  244,  246,  248,  250,
+	  252,  254,  256,  258,  260,  262,  264,  266,
+	  268,  270,  272,  274,  276,  278,  280,  282,
+	  284,  286,  288,  290,  292,  294,  296,  298,
+	  300,  302,  304,  306,  308,  310,  312,  314,
+	  316,  318,  320,  322,  324,  326,  328,  330,
+	  332,  334,  336,  338,  340,
 };
 
 static encode_aux_threshmatch _vq_auxt_res0_128_1024_9 = {
         _vq_quantthresh_res0_128_1024_9,
         _vq_quantmap_res0_128_1024_9,
-	37,
-	37
+	341,
+	341
 };
 
 static static_codebook _vq_book_res0_128_1024_9 = {
-	1, 37,
+	1, 341,
         _vq_lengthlist_res0_128_1024_9,
-	1, -524550144, 1611661312, 7, 0,
+	1, -520798208, 1611661312, 9, 0,
         _vq_quantlist_res0_128_1024_9,
         NULL,
         &_vq_auxt_res0_128_1024_9,

1.3       +7 -7      vorbis/lib/books/res0_128_1024aux.vqh

Index: res0_128_1024aux.vqh
===================================================================
RCS file: /usr/local/cvsroot/vorbis/lib/books/res0_128_1024aux.vqh,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- res0_128_1024aux.vqh	2000/11/17 11:47:20	1.2
+++ res0_128_1024aux.vqh	2001/01/22 01:38:30	1.3
@@ -20,13 +20,13 @@
 #include "codebook.h"
 
 static long _huff_lengthlist_res0_128_1024aux[] = {
-	 2, 6,11,10,14,11,14,12,13,16, 5, 3, 5, 6, 9, 8,
-	10, 9,11,14,10, 5, 4, 5, 7, 9, 9,11,13,15, 9, 5,
-	 5, 5, 7, 7, 8, 8,10,14,13, 8, 7, 7, 6, 8, 7, 9,
-	11,16, 9, 7, 8, 7, 8, 7, 8, 8,10,13,13, 9, 8, 7,
-	 7, 8, 7, 7, 9,14,10, 8, 9, 7, 8, 7, 7, 6, 8,12,
-	10, 9,10, 9, 9, 8, 8, 7, 8,11,11,10,10, 9, 8, 8,
-	 7, 6, 7,10,
+	 2, 6,11, 9,12, 9,15,13,15,20, 5, 3, 5, 5, 7, 7,
+	11,11,13,15, 9, 5, 4, 5, 6, 8,11,13,15,18, 9, 5,
+	 5, 5, 7, 6,11,10,14,16,12, 7, 6, 7, 7, 9,11,13,
+	15,20, 8, 6, 7, 6, 9, 6,10, 9,12,19,14,10, 9, 8,
+	 7, 7, 9, 9,12,17,10, 9,10, 8, 9, 6, 8, 7,10,14,
+	11,11,13,10,11, 8, 7, 7, 8,13,13,12,13,12,11,10,
+	 7, 6, 8,13,
 };
 
 static static_codebook _huff_book_res0_128_1024aux = {

1.3       +13 -14    vorbis/lib/books/res0_128_128_1.vqh

Index: res0_128_128_1.vqh
===================================================================
RCS file: /usr/local/cvsroot/vorbis/lib/books/res0_128_128_1.vqh,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- res0_128_128_1.vqh	2000/11/17 11:47:21	1.2
+++ res0_128_128_1.vqh	2001/01/22 01:38:30	1.3
@@ -1,13 +1,12 @@
 /********************************************************************
  *                                                                  *
- * THIS FILE IS PART OF THE Ogg Vorbis SOFTWARE CODEC SOURCE CODE.  *
+ * THIS FILE IS PART OF THE OggVorbis 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 GNU LESSER/LIBRARY PUBLIC LICENSE, WHICH IS INCLUDED WITH    *
+ * THIS SOURCE. PLEASE READ THESE TERMS BEFORE DISTRIBUTING.        *
  *                                                                  *
- * THE OggSQUISH SOURCE CODE IS (C) COPYRIGHT 1994-1999             *
- * by 1999 Monty <monty at xiph.org> and The XIPHOPHORUS Company       *
- * http://www.xiph.org/                                             *
+ * THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2001             *
+ * by the XIPHOPHORUS Company, http://www.xiph.org/                 *
  *                                                                  *
  ********************************************************************
 
@@ -21,17 +20,17 @@
 
 static long _vq_quantlist_res0_128_128_1[] = {
         1,
-	2,
         0,
+	2,
 };
 
 static long _vq_lengthlist_res0_128_128_1[] = {
-	 1, 4, 4, 4, 7, 7, 5, 7, 7, 5, 8, 8, 7,10,10, 7,
-	10,10, 5, 7, 8, 7,10,10, 8,10,10, 5, 8, 8, 8,11,
-	11, 8,10,10, 8,10,10,10,12,13,10,13,13, 8,10,10,
-	10,13,13,10,13,13, 5, 8, 8, 8,10,10, 8,10,11, 8,
-	11,10,10,12,13,10,12,13, 8,10,10,11,13,13,10,13,
-	12,
+	 3, 4, 4, 5, 6, 6, 4, 6, 6, 5, 6, 6, 6, 8, 8, 6,
+	 7, 8, 5, 6, 6, 6, 8, 7, 6, 8, 8, 5, 6, 6, 6, 8,
+	 8, 6, 8, 8, 6, 8, 8, 8, 9,10, 8,10, 9, 6, 8, 8,
+	 8,10, 9, 8, 9,10, 5, 6, 6, 6, 8, 8, 6, 8, 8, 6,
+	 8, 8, 8,10, 9, 8, 9,10, 6, 8, 8, 8, 9,10, 8,10,
+	 9,
 };
 
 static float _vq_quantthresh_res0_128_128_1[] = {
@@ -39,7 +38,7 @@
 };
 
 static long _vq_quantmap_res0_128_128_1[] = {
-	    2,    0,    1,
+	    1,    0,    2,
 };
 
 static encode_aux_threshmatch _vq_auxt_res0_128_128_1 = {

1.3       +164 -52   vorbis/lib/books/res0_128_128_2.vqh

Index: res0_128_128_2.vqh
===================================================================
RCS file: /usr/local/cvsroot/vorbis/lib/books/res0_128_128_2.vqh,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- res0_128_128_2.vqh	2000/11/17 11:47:21	1.2
+++ res0_128_128_2.vqh	2001/01/22 01:38:30	1.3
@@ -1,13 +1,12 @@
 /********************************************************************
  *                                                                  *
- * THIS FILE IS PART OF THE Ogg Vorbis SOFTWARE CODEC SOURCE CODE.  *
+ * THIS FILE IS PART OF THE OggVorbis 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 GNU LESSER/LIBRARY PUBLIC LICENSE, WHICH IS INCLUDED WITH    *
+ * THIS SOURCE. PLEASE READ THESE TERMS BEFORE DISTRIBUTING.        *
  *                                                                  *
- * THE OggSQUISH SOURCE CODE IS (C) COPYRIGHT 1994-1999             *
- * by 1999 Monty <monty at xiph.org> and The XIPHOPHORUS Company       *
- * http://www.xiph.org/                                             *
+ * THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2001             *
+ * by the XIPHOPHORUS Company, http://www.xiph.org/                 *
  *                                                                  *
  ********************************************************************
 
@@ -20,75 +19,188 @@
 #include "codebook.h"
 
 static long _vq_quantlist_res0_128_128_2[] = {
-	2,
         3,
+	2,
         4,
         1,
+	5,
         0,
+	6,
 };
 
 static long _vq_lengthlist_res0_128_128_2[] = {
-	 2, 4, 6, 4, 6, 4, 7, 9, 7, 9, 7,10,14,10,13, 5,
-	 7, 9, 7, 9, 7, 9,13,10,13, 5, 7,10, 7,10, 7, 9,
-	12, 9,12,10,12,14,12,15, 7, 9,12, 9,12,10,12,14,
-	12,14, 7,10,13,10,14, 9,12,14,12,14,12,15,15,15,
-	15,10,12,15,12,15,13,15,15,15,15, 5, 7,10, 7,10,
-	 7, 9,12, 9,13, 9,13,15,12,15, 7,10,13,10,11,10,
-	12,15,12,15, 7,10,14,10,15,10,11,15,13,14,14,14,
-	15,14,15, 9,13,15,12,14,13,14,15,14,15, 5, 7, 9,
-	 8,10, 7,10,13,10,11,10,12,14,13,15, 7,10,13,10,
-	13,10,13,15,12,14, 7,10,13,10,11,10,12,14,12,14,
-	12,14,15,14,15, 9,11,15,12,14,12,14,15,14,15, 9,
-	12,15,12,15,11,15,15,14,15,14,15,15,15,15,13,13,
-	15,14,15,15,15,15,15,15, 7,10,12,10,12, 9,11,14,
-	12,14,12,13,15,14,15, 9,11,14,12,15,12,15,15,14,
-	15,10,12,15,12,14,12,14,15,13,15,15,15,15,14,15,
-	13,14,15,14,15,15,15,15,15,15, 7,10,13, 9,14,10,
-	12,13,13,14,13,15,15,14,15,10,12,15,13,15,14,15,
-	15,15,15,10,12,15,12,15,12,14,15,13,14,15,15,15,
-	15,15,11,14,15,15,15,14,15,15,15,15,13,14,15,15,
-	15,14,15,15,15,15,15,15,15,15,15,15,15,15,15,15,
-	15,15,15,15,15,10,12,15,13,15,12,13,15,14,15,15,
-	15,15,15,15,12,14,15,14,15,14,14,15,14,15,14,14,
-	15,15,15,14,15,15,14,15,15,15,15,15,15,14,15,15,
-	15,15,15,15,15,15,15, 5, 7,10, 7,10, 7,10,13,10,
-	12,10,13,15,13,14, 7,10,12,10,13,10,12,15,13,15,
-	 7, 9,14,10,12, 9,11,15,12,14,12,14,15,15,15, 9,
-	12,15,13,15,12,14,15,15,14,10,12,15,12,14,12,13,
-	15,14,15,14,15,15,15,15,12,15,15,14,15,15,14,15,
-	15,15, 7,10,13,10,13,10,12,14,12,14,13,14,15,14,
-	14,10,12,13,12,15,12,14,15,15,15,10,12,15,13,15,
-	12,14,15,14,15,15,15,15,15,15,12,14,15,15,15,15,
-	14,15,15,15, 7,10,14, 9,15,10,12,15,12,15,14,15,
-	15,14,15,10,12,15,12,15,15,14,15,14,15,10,12,15,
-	13,15,12,14,15,14,15,15,15,15,15,15,13,13,15,13,
-	15,15,15,15,15,15,13,14,15,15,15,14,15,15,14,15,
-	15,15,15,15,15,14,15,15,15,15,15,15,15,15,15,10,
-	12,15,12,15,13,15,15,15,15,15,15,15,15,15,12,14,
-	15,14,15,14,15,15,15,15,15,14,15,15,15,14,15,15,
-	15,15,15,15,15,15,15,14,15,15,15,15,15,15,15,15,
+	 3, 5, 5, 7, 7,10,10, 5, 7, 7, 9, 9,12,12, 5, 7,
+	 7, 8, 8,12,12, 7, 9, 9,14,14,16,16, 7, 9, 9,12,
+	13,15,15,10,12,13,15,17,17,17,10,13,12,15,17,16,
+	17, 5, 7, 7, 9, 9,12,12, 7, 8, 8,10,10,13,13, 7,
+	 8, 8,10,10,13,14, 9,10,10,15,16,15,15, 9,11,11,
+	16,15,15,15,12,13,14,16,16,17,16,12,15,14,15,17,
+	16,15, 5, 7, 7, 8, 9,12,11, 7, 8, 8,10,10,13,13,
+	 6, 8, 8,10,10,13,12, 9,11,10,14,15,15,15, 9,11,
+	10,15,14,15,16,12,15,14,16,15,17,16,12,13,13,17,
+	15,17,17, 7, 9, 9,14,12,14,15, 9,10,11,15,15,16,
+	15, 9,10,11,13,15,15,17,14,15,16,16,17,17,17,13,
+	14,15,17,17,17,17,15,17,17,17,17,16,17,16,17,17,
+	17,17,17,17, 7, 9, 9,12,13,15,15, 9,10,10,14,16,
+	15,17, 9,11,11,15,15,17,17,13,14,14,17,17,17,16,
+	13,16,15,16,17,16,17,15,17,15,15,17,17,17,15,17,
+	17,16,17,17,17,10,13,12,15,14,16,17,12,14,14,17,
+	16,17,17,12,15,14,16,17,17,17,16,17,17,17,17,17,
+	17,15,16,17,17,15,17,17,17,17,17,17,17,17,17,17,
+	17,17,17,17,17,17,10,12,13,15,16,17,16,12,14,14,
+	17,17,17,17,12,16,14,17,17,17,17,16,16,17,17,17,
+	17,17,15,17,17,17,17,17,17,16,17,17,17,17,17,17,
+	16,17,16,17,17,17,16, 5, 7, 7, 9, 9,12,12, 7, 8,
+	 8,11,10,14,14, 7, 8, 8,10,11,13,13, 9,11,11,16,
+	17,16,17, 9,10,11,14,17,15,17,12,16,15,15,15,16,
+	17,12,16,17,17,17,17,17, 7, 9, 8,10,10,15,13, 8,
+	10,10,12,12,14,14, 8,10,10,12,11,15,16,10,12,13,
+	14,17,15,16,11,12,12,17,17,17,17,14,16,16,17,17,
+	17,17,14,16,17,17,16,17,16, 7, 8, 8,10,10,14,13,
+	 8,10,10,12,12,14,13, 8,10,10,12,12,14,14,11,12,
+	12,16,16,15,16,11,13,13,16,16,17,15,15,16,17,17,
+	17,17,17,15,16,15,17,16,17,16, 9,11,11,14,15,17,
+	17,10,12,12,15,15,17,16,11,13,12,16,16,17,16,15,
+	16,17,16,17,17,17,15,17,17,17,17,16,17,17,17,17,
+	17,17,17,17,17,17,15,17,17,17,17, 9,11,11,15,15,
+	16,15,10,13,12,17,16,17,15,11,13,13,15,15,15,16,
+	14,17,16,17,17,17,16,14,17,17,17,16,17,17,16,17,
+	17,17,16,17,17,17,17,15,17,17,17,17,13,14,15,17,
+	16,16,17,14,14,15,17,16,17,17,14,16,16,17,17,16,
+	17,16,17,17,17,17,17,17,16,17,17,17,17,17,17,17,
+	16,17,17,17,17,17,17,17,17,17,17,17,17,12,13,15,
+	17,17,17,17,14,14,16,17,17,17,17,14,17,17,17,17,
+	17,17,16,17,17,17,17,17,17,17,17,17,16,17,17,17,
+	17,17,17,17,17,17,17,17,17,17,17,17,17,17, 5, 7,
+	 7, 9, 9,12,12, 7, 9, 8,10,10,13,13, 7, 8, 8,10,
+	10,13,13, 9,11,10,14,14,16,15, 9,11,10,14,14,16,
+	15,13,14,15,16,16,17,17,12,15,14,17,16,16,17, 7,
+	 8, 8,10,10,13,13, 8,10,10,12,12,14,13, 8,10,10,
+	11,12,14,15,11,13,11,17,17,15,15,10,12,13,15,17,
+	17,17,14,16,17,17,17,16,17,14,17,15,16,17,16,17,
+	 7, 8, 8,10,10,14,15, 8,10,10,11,12,13,14, 8,10,
+	 9,12,12,14,14,10,11,12,16,15,17,15,10,12,12,17,
+	15,16,17,14,14,15,16,17,17,16,15,15,17,17,17,17,
+	17, 9,11,10,16,15,17,16,10,12,12,16,15,17,17,10,
+	12,12,15,15,14,17,17,17,16,17,17,16,17,15,16,17,
+	16,17,17,17,17,17,17,16,17,17,17,17,17,17,17,17,
+	17,17, 9,11,11,14,14,16,16,11,12,12,14,17,16,16,
+	10,12,12,17,17,16,15,14,17,16,17,17,17,17,14,16,
+	16,17,16,17,17,17,17,17,17,17,17,17,17,17,16,17,
+	16,17,17,13,15,15,15,17,17,17,16,15,17,16,16,17,
+	16,14,14,17,16,17,16,17,17,17,17,17,17,17,17,16,
+	17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,
+	17,17,17,17,13,15,16,17,17,17,17,15,16,16,17,16,
+	17,17,14,17,16,17,17,17,17,15,17,17,17,17,17,17,
+	17,16,17,17,17,17,17,17,17,17,17,17,17,16,17,17,
+	17,17,17,17,17, 7,10, 9,13,13,17,16, 9,11,11,14,
+	14,15,17, 9,11,11,15,15,17,17,14,14,14,16,17,17,
+	17,13,15,15,17,17,17,16,17,17,16,17,17,17,17,17,
+	16,16,15,17,17,15, 9,11,11,15,14,17,17,11,12,13,
+	16,16,16,16,11,13,12,16,17,17,16,16,16,17,17,17,
+	17,17,16,16,16,17,17,17,17,16,17,17,17,17,17,17,
+	17,17,17,17,17,17,17, 9,11,11,15,15,17,15,11,12,
+	13,16,15,16,15,11,12,12,16,15,17,17,15,17,17,17,
+	17,17,17,15,16,17,16,17,17,17,17,17,17,17,17,17,
+	17,17,17,17,17,17,17,17,13,15,16,17,17,17,17,15,
+	16,15,17,17,17,16,16,16,17,17,17,17,17,17,15,17,
+	14,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,
+	16,17,17,17,17,17,17,17,17,15,15,17,17,17,17,17,
+	16,17,16,17,17,17,16,17,17,16,17,16,17,17,16,17,
+	17,17,16,17,17,17,17,17,17,17,17,17,17,17,17,17,
+	17,17,16,17,17,17,17,17,17,17,17,17,17,17,17,17,
+	17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,
+	17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,
+	17,17,15,17,17,17,17,17,17,17,17,17,17,17,17,17,
+	17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,
+	17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,
+	17,17,17,17,17,17,17,17,17,17,17,17, 7, 9, 9,14,
+	14,17,17, 9,11,11,14,14,15,15, 9,11,11,14,15,15,
+	16,15,17,15,17,17,17,15,14,17,16,17,16,16,17,16,
+	17,17,17,17,17,17,17,17,16,17,17,17,17, 9,11,11,
+	15,14,15,17,11,12,13,15,17,17,17,10,13,13,16,15,
+	16,17,17,17,17,17,17,17,17,17,15,15,17,17,17,17,
+	17,17,17,17,17,17,17,17,17,17,17,17,17,17, 9,11,
+	11,15,16,17,17,11,13,13,15,16,15,15,11,12,12,15,
+	15,16,17,15,16,17,17,17,17,16,17,17,16,17,17,16,
+	17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,14,
+	16,15,17,17,17,17,17,17,15,17,16,17,17,16,15,17,
+	17,17,17,17,17,17,17,17,17,17,17,17,16,17,17,16,
+	17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,
+	15,16,15,17,17,17,17,16,17,17,17,17,17,17,16,17,
+	17,17,17,17,17,17,17,17,17,17,17,17,17,17,15,17,
+	14,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,
+	16,16,17,17,17,17,17,17,17,17,17,17,17,17,17,16,
+	16,16,17,17,17,16,17,17,17,17,17,17,17,17,17,17,
+	17,17,17,17,17,17,17,17,17,17,17,17,16,17,17,17,
+	17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,
+	16,16,17,17,17,17,17,17,17,17,17,17,17,17,17,17,
+	17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,
+	17,17,16,11,13,15,14,16,17,17,14,16,14,17,17,17,
+	17,13,15,15,17,17,17,17,17,17,17,17,17,17,17,15,
+	17,17,17,16,17,17,17,17,17,17,17,17,17,17,17,17,
+	17,17,17,17,13,15,15,16,16,17,17,17,15,17,16,17,
+	17,17,14,17,16,17,16,17,17,17,17,17,17,17,17,17,
+	17,17,17,17,16,17,17,17,17,17,17,17,17,17,17,17,
+	17,17,16,17,17,12,15,15,17,17,17,17,15,17,15,17,
+	17,16,17,14,17,17,17,17,17,17,17,17,17,17,16,17,
+	17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,
+	17,17,17,17,17,17,17,17,17,17,17,16,16,17,17,17,
+	17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,
+	17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,
+	17,17,17,17,17,17,17,16,17,17,17,17,17,17,17,17,
+	17,17,17,17,17,17,17,17,17,17,16,17,17,17,17,16,
+	17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,
+	17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,
+	17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,
+	17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,
+	16,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,
+	17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,
+	17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,
+	17,17,17,17,17,17,17,17,17,17,11,13,13,17,17,17,
+	15,13,15,15,17,17,17,17,13,16,15,17,17,17,17,17,
+	17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,
+	17,17,17,17,17,17,17,17,17,17,17,13,14,14,16,17,
+	17,17,16,17,17,16,17,17,17,16,17,17,17,17,17,17,
+	17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,
+	17,17,17,17,17,17,17,17,17,17,17,17,13,14,14,17,
+	17,17,17,15,16,16,17,17,17,17,15,15,16,17,17,17,
+	17,17,17,17,17,17,17,17,17,16,17,17,17,17,17,17,
+	17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,
+	17,17,17,17,17,17,17,17,17,17,17,17,16,17,17,17,
+	17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,
+	17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,
+	17,17,17,17,17,17,17,17,17,17,17,17,17,16,17,17,
+	17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,
+	17,17,17,17,17,17,17,17,17,17,17,17,17,17,16,17,
+	17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,
+	17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,
+	17,17,17,17,17,17,17,17,17,17,17,17,17,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,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
         15,
 };
 
 static float _vq_quantthresh_res0_128_128_2[] = {
-	-1.5, -0.5, 0.5, 1.5, 
+	-2.5, -1.5, -0.5, 0.5, 1.5, 2.5, 
 };
 
 static long _vq_quantmap_res0_128_128_2[] = {
-	    4,    3,    0,    1,    2,
+	    5,    3,    1,    0,    2,    4,    6,
 };
 
 static encode_aux_threshmatch _vq_auxt_res0_128_128_2 = {
         _vq_quantthresh_res0_128_128_2,
         _vq_quantmap_res0_128_128_2,
-	5,
-	5
+	7,
+	7
 };
 
 static static_codebook _vq_book_res0_128_128_2 = {
-	4, 625,
+	4, 2401,
         _vq_lengthlist_res0_128_128_2,
-	1, -533725184, 1611661312, 3, 0,
+	1, -533200896, 1611661312, 3, 0,
         _vq_quantlist_res0_128_128_2,
         NULL,
         &_vq_auxt_res0_128_128_2,

1.3       +104 -23   vorbis/lib/books/res0_128_128_3.vqh

Index: res0_128_128_3.vqh
===================================================================
RCS file: /usr/local/cvsroot/vorbis/lib/books/res0_128_128_3.vqh,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- res0_128_128_3.vqh	2000/11/17 11:47:21	1.2
+++ res0_128_128_3.vqh	2001/01/22 01:38:30	1.3
@@ -1,13 +1,12 @@
 /********************************************************************
  *                                                                  *
- * THIS FILE IS PART OF THE Ogg Vorbis SOFTWARE CODEC SOURCE CODE.  *
+ * THIS FILE IS PART OF THE OggVorbis 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 GNU LESSER/LIBRARY PUBLIC LICENSE, WHICH IS INCLUDED WITH    *
+ * THIS SOURCE. PLEASE READ THESE TERMS BEFORE DISTRIBUTING.        *
  *                                                                  *
- * THE OggSQUISH SOURCE CODE IS (C) COPYRIGHT 1994-1999             *
- * by 1999 Monty <monty at xiph.org> and The XIPHOPHORUS Company       *
- * http://www.xiph.org/                                             *
+ * THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2001             *
+ * by the XIPHOPHORUS Company, http://www.xiph.org/                 *
  *                                                                  *
  ********************************************************************
 
@@ -20,46 +19,128 @@
 #include "codebook.h"
 
 static long _vq_quantlist_res0_128_128_3[] = {
-	5,
-	6,
-	7,
-	8,
+	15,
+	14,
+	16,
+	13,
+	17,
+	12,
+	18,
+	11,
+	19,
         10,
+	20,
+	9,
+	21,
+	8,
+	22,
+	7,
+	23,
+	6,
+	24,
+	5,
+	25,
         4,
+	26,
         3,
+	27,
         2,
+	28,
+	1,
+	29,
         0,
+	30,
 };
 
 static long _vq_lengthlist_res0_128_128_3[] = {
-	 1, 4, 6, 6, 7, 4, 6, 6, 7, 4, 6, 8, 9, 9, 6, 8,
-	 9, 9, 7, 9,10,12,11, 9,11,12,13, 7,10,13,14,15,
-	10,13,13,15, 8,12,13,15,14,12,13,15,15, 4, 6, 8,
-	 8, 9, 6, 8, 8, 9, 6, 9,11,12,12, 9,11,12,12, 6,
-	10,12,14,12,10,12,13,13, 8,12,14,15,15,12,15,13,
-	13,
+	 3, 4, 4, 6, 6, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8,
+	 8, 8, 8, 8, 9, 9, 9, 9, 9,10,10,10,10,11,11, 4,
+	 5, 5, 6, 6, 7, 7, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8,
+	 8, 9, 9, 9, 9, 9, 9, 9,10,10,10,10,11,11, 4, 5,
+	 5, 6, 6, 7, 7, 7, 8, 8, 8, 8, 8, 8, 9, 8, 8, 8,
+	 9, 9, 9, 9, 9, 9,10,10,10,10,10,11,11, 7, 7, 7,
+	 9, 8, 9,10,10,10,10,10,10,10,10,10,10,11,10,11,
+	10,11,11,11,11,12,12,12,12,13,13,13, 7, 7, 7, 9,
+	 8, 9, 9,10,10,10,10,10,10,10,10,10,10,10,11,10,
+	11,11,12,11,12,12,12,12,13,13,13, 9, 9, 9,10,10,
+	11,11,11,11,12,12,11,12,12,12,12,12,12,12,12,13,
+	12,12,13,13,13,13,14,14,14,15, 9, 9, 9,11,10,11,
+	11,12,11,12,11,12,12,12,12,12,12,12,12,12,12,13,
+	13,13,13,13,13,14,14,14,14,10,10,10,12,12,13,12,
+	13,14,13,13,13,13,13,13,13,14,13,14,13,14,15,14,
+	15,15,16,15,14,15,15,15,10,10,10,11,11,13,12,13,
+	13,13,13,14,13,13,13,13,13,13,13,14,13,14,14,14,
+	14,15,15,14,15,15,15,11,11,12,13,13,13,13,14,14,
+	14,14,14,15,14,14,14,15,14,14,15,15,15,15,15,15,
+	15,17,16,16,16,16,10,11,11,12,12,14,13,13,15,14,
+	14,14,14,14,14,15,14,15,15,15,14,15,14,16,16,16,
+	16,17,16,16,15,11,12,13,13,14,14,14,13,14,15,14,
+	15,14,15,15,15,14,16,15,15,15,16,15,16,17,16,16,
+	17,16,16,16,12,12,12,14,13,14,15,15,15,15,15,14,
+	15,16,15,15,15,16,15,15,16,16,15,16,16,17,15,17,
+	16,16,16,12,13,12,14,14,15,14,15,16,16,15,14,15,
+	16,16,16,15,17,16,15,16,17,17,17,17,16,15,16,16,
+	17,17,12,13,13,14,13,14,14,16,16,15,17,15,16,16,
+	15,16,15,16,16,15,16,15,16,16,16,16,15,16,16,15,
+	16,13,14,14,14,14,15,15,16,17,15,15,17,15,16,15,
+	17,17,16,17,16,17,17,17,17,15,17,16,17,17,16,17,
+	13,14,14,15,15,16,15,17,14,16,17,15,17,17,15,17,
+	16,16,16,16,16,16,16,16,16,17,16,17,16,17,17,13,
+	14,14,15,15,16,16,17,16,17,17,16,15,17,16,17,15,
+	17,17,17,17,16,15,15,17,17,17,16,17,17,17,14,14,
+	14,16,15,16,16,16,16,17,16,16,17,16,16,15,16,16,
+	16,15,16,16,15,17,17,17,17,17,16,17,17,15,15,15,
+	17,16,17,17,16,16,17,17,16,17,16,17,17,17,17,16,
+	17,17,17,17,17,17,17,17,16,17,17,17,13,15,14,16,
+	16,16,16,15,16,17,16,16,16,16,15,16,16,16,16,16,
+	16,17,17,17,17,17,17,17,17,17,17,14,14,14,15,15,
+	17,16,17,17,17,17,17,16,16,16,17,16,17,17,16,17,
+	17,16,16,17,17,17,17,17,17,17,14,15,15,16,16,17,
+	16,17,17,17,17,16,17,17,16,16,16,17,16,17,17,17,
+	17,17,17,17,17,17,17,17,17,16,15,14,17,16,17,17,
+	16,16,17,17,17,17,17,17,17,17,17,17,17,17,17,16,
+	16,17,17,17,17,17,17,17,15,15,15,15,16,16,17,16,
+	16,17,17,17,17,17,16,17,17,16,17,17,17,17,17,17,
+	16,16,17,17,17,17,17,15,16,17,16,17,16,17,17,16,
+	16,17,17,17,17,17,17,16,17,17,17,16,17,17,17,17,
+	17,16,17,17,17,17,15,16,14,16,17,17,17,17,17,17,
+	17,17,17,16,17,17,17,16,16,16,17,16,17,17,17,17,
+	17,17,17,17,17,15,16,16,17,17,15,17,17,17,17,17,
+	17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,16,
+	17,17,17,17,15,17,17,16,16,17,17,17,16,17,17,17,
+	17,17,16,17,17,17,17,17,17,17,17,17,17,17,17,17,
+	17,17,17,16,17,17,16,17,17,17,17,17,17,17,17,17,
+	16,17,17,17,17,16,17,17,17,17,17,17,17,17,17,17,
+	17,17,17,16,17,16,17,17,17,17,17,17,17,17,17,17,
+	17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,
+	17,
 };
 
 static float _vq_quantthresh_res0_128_128_3[] = {
-	-4, -2.5, -1.5, -0.5, 0.5, 1.5, 2.5, 4, 
+	-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, 
 };
 
 static long _vq_quantmap_res0_128_128_3[] = {
-	    8,    7,    6,    5,    0,    1,    2,    3,
-	    4,
+	   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,
 };
 
 static encode_aux_threshmatch _vq_auxt_res0_128_128_3 = {
         _vq_quantthresh_res0_128_128_3,
         _vq_quantmap_res0_128_128_3,
-	9,
-	9
+	31,
+	31
 };
 
 static static_codebook _vq_book_res0_128_128_3 = {
-	2, 81,
+	2, 961,
         _vq_lengthlist_res0_128_128_3,
-	1, -531365888, 1611661312, 4, 0,
+	1, -528613376, 1611661312, 5, 0,
         _vq_quantlist_res0_128_128_3,
         NULL,
         &_vq_auxt_res0_128_128_3,

1.3       +245 -31   vorbis/lib/books/res0_128_128_4.vqh

Index: res0_128_128_4.vqh
===================================================================
RCS file: /usr/local/cvsroot/vorbis/lib/books/res0_128_128_4.vqh,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- res0_128_128_4.vqh	2000/11/17 11:47:21	1.2
+++ res0_128_128_4.vqh	2001/01/22 01:38:31	1.3
@@ -1,13 +1,12 @@
 /********************************************************************
  *                                                                  *
- * THIS FILE IS PART OF THE Ogg Vorbis SOFTWARE CODEC SOURCE CODE.  *
+ * THIS FILE IS PART OF THE OggVorbis 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 GNU LESSER/LIBRARY PUBLIC LICENSE, WHICH IS INCLUDED WITH    *
+ * THIS SOURCE. PLEASE READ THESE TERMS BEFORE DISTRIBUTING.        *
  *                                                                  *
- * THE OggSQUISH SOURCE CODE IS (C) COPYRIGHT 1994-1999             *
- * by 1999 Monty <monty at xiph.org> and The XIPHOPHORUS Company       *
- * http://www.xiph.org/                                             *
+ * THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2001             *
+ * by the XIPHOPHORUS Company, http://www.xiph.org/                 *
  *                                                                  *
  ********************************************************************
 
@@ -20,56 +19,271 @@
 #include "codebook.h"
 
 static long _vq_quantlist_res0_128_128_4[] = {
-	11,
-	12,
-	13,
-	14,
-	16,
-	19,
+	26,
+	25,
+	27,
+	24,
+	28,
+	23,
+	29,
         22,
+	30,
+	21,
+	31,
+	20,
+	32,
+	19,
+	33,
+	18,
+	34,
+	17,
+	35,
+	16,
+	36,
+	15,
+	37,
+	14,
+	38,
+	13,
+	39,
+	12,
+	40,
+	11,
+	41,
         10,
+	42,
         9,
+	43,
         8,
+	44,
+	7,
+	45,
         6,
+	46,
+	5,
+	47,
+	4,
+	48,
         3,
+	49,
+	2,
+	50,
+	1,
+	51,
         0,
+	52,
 };
 
 static long _vq_lengthlist_res0_128_128_4[] = {
-	 3, 3, 5, 6, 6, 6, 6, 3, 5, 6, 6, 6, 6, 4, 5, 7,
-	 8, 8, 7, 8, 5, 7, 8, 8, 7, 7, 7, 8,10,10,11,11,
-	10, 8,10,10,11,10,11,10,10,12,12,13,13,13,11,12,
-	13,15,13,13,11,13,16,16,15,15,14,13,15,15,17,15,
-	17,11,16,16,17,17,17,16,15,16,17,17,17,17,12,16,
-	17,17,17,17,17,16,17,17,17,17,17, 4, 5, 7, 7, 7,
-	 7, 8, 5, 7, 7, 8, 7, 7, 7, 8,10,11,10,10,11, 8,
-	10,11,11,10,11, 9,11,12,13,14,12,13,11,12,13,13,
-	13,13,11,14,13,16,16,17,15,13,15,15,15,14,15,12,
-	15,16,17,17,17,17,14,17,15,15,17,16,13,16,16,16,
-	16,16,16,16,15,16,16,16,16,
+	 4, 4, 4, 6, 6, 7, 7, 8, 7, 7, 8, 8, 8, 8, 8, 9,
+	 8, 9, 9,10,10,11,10,11,11,13,12,12,15,15,13, 8,
+	 8, 8, 8, 9, 9, 9, 9,10,10,11,10,11,10,12,11,13,
+	11,12,11,12,12, 5, 5, 5, 7, 7, 7, 7, 8, 8, 8, 8,
+	 8, 9, 8, 9,10, 9,10,10,10,10,11,11,13,12,11,12,
+	13,13,12,14, 8, 8, 8, 8, 9, 9,10,10,10,10,10,11,
+	11,10,13,12,12,12,12,12,12,12, 5, 5, 5, 7, 7, 7,
+	 7, 8, 8, 8, 8, 8, 9, 8, 9, 9, 9, 9,10,10,11,11,
+	11,11,12,13,11,12,13,13,14, 8, 8, 9, 8, 9, 9, 9,
+	10,10,10,11,11,11,10,12,11,13,11,12,13,12,14, 7,
+	 7, 7, 9, 9, 9, 9,10,10,10,10,11,10,12,11,11,12,
+	11,14,14,12,14,12,13,12,14,14,14,14,14,14,10,10,
+	11,10,11,11,11,11,12,11,12,12,12,12,13,14,13,13,
+	14,14,14,14, 7, 7, 7, 9, 9, 9, 9,10,10,11,11,11,
+	10,11,11,11,11,11,11,13,13,12,13,14,14,12,14,14,
+	13,14,14,10,11,10,10,10,10,11,14,11,11,12,12,11,
+	13,14,11,13,13,14,12,14,14, 9, 9, 9,11,11,11,11,
+	11,12,12,12,12,12,12,12,12,12,13,14,12,14,13,14,
+	13,14,14,14,13,14,14,14,12,11,13,13,13,13,13,12,
+	13,14,12,14,14,14,13,12,14,14,14,14,14,14, 9, 9,
+	 9,10,10,11,11,12,12,12,12,13,13,12,13,12,12,13,
+	13,13,12,14,14,13,13,14,13,14,14,13,13,11,12,11,
+	12,11,11,12,13,13,14,13,14,13,14,14,14,14,14,14,
+	14,14,14,10,11,10,12,11,12,12,12,12,13,12,12,13,
+	14,14,14,13,12,13,14,14,14,14,14,13,14,14,14,14,
+	14,14,12,13,12,13,13,12,12,14,14,14,12,14,14,14,
+	14,14,14,14,14,14,14,14,10,11,10,13,12,12,12,13,
+	14,12,13,13,14,12,14,13,13,13,12,13,13,14,13,14,
+	14,14,14,14,14,14,14,12,12,13,14,12,13,12,14,14,
+	14,14,14,14,14,14,14,14,13,14,14,14,14,11,12,12,
+	12,13,14,12,13,14,14,14,12,14,12,14,14,14,14,13,
+	14,14,14,14,14,14,14,14,14,14,14,14,12,14,14,14,
+	14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,
+	14,14,11,14,11,12,11,12,12,13,14,13,13,14,14,14,
+	13,14,13,13,13,14,14,14,14,14,14,14,14,14,14,14,
+	14,14,12,13,14,14,13,14,12,14,14,14,14,14,14,14,
+	14,14,14,14,14,14,14,13,11,13,14,13,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,12,14,14,14,14,14,
+	14,14,14,14,14,14,14,14,14,14,14,14,14,12,13,14,
+	13,13,13,13,14,14,14,13,13,14,13,14,14,14,13,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,13,12,12,14,13,13,13,14,13,14,14,14,14,14,13,
+	14,14,14,14,14,14,14,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,12,13,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,14,14,14,14,14,14,14,14,13,14,14,13,14,13,
+	14,14,14,14,14,14,14,14,14,14,14,13,14,12,14,14,
+	14,14,14,14,14,14,14,13,14,14,14,13,14,14,14,14,
+	14,14,14,14,14,14,14,14,14,14,14,14,14,13,14,13,
+	14,13,14,14,14,14,14,14,14,14,14,14,14,14,14,14,
+	13,13,14,14,12,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,12,
+	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,14,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,13,14,14,14,14,14,14,14,14,14,14,14,
+	14,14,14,14,14,14,14,14,14,14,14,13,12,13,13,14,
+	14,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,13,14,14,14,14,14,
+	14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,13,
+	12,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,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,
+	14,14,14,14,13,14,14,14,14,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,14,14,14,14,14,
+	14,14,14,14,14,14,14,14,14,14,14,14,13,14,13,14,
+	14,14,14,12,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,14,14,14,14,14,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,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,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,14,14,14,14,14,
+	14,14,14,14,14,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,14,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,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,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,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,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,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,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,14,13,14,
+	14,14,14,14,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,14,14,14,14,14,14,14,14,14,14,14,
+	14,13,14,13,14,13,14,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,14,14,14,14,14,14,14,14,
+	14,14,14,14,14,14,13,14,14,14,13,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,14,14,14,14,
+	14,14,14,14,14,14,14,14,14,14,12,13,14,14,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,
+	14,14,14,14,14,14,14,14,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,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,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,14,14,14,14,14,14,14,14,
+	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,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,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,14,14,14,14,14,14,14,14,14,14,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,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,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,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,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,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,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,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,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,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,
+	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,
+	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,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,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,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,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,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 float _vq_quantthresh_res0_128_128_4[] = {
-	-9.5, -6.5, -4, -2.5, -1.5, -0.5, 0.5, 1.5, 
-	2.5, 4, 6.5, 9.5, 
+	-25.5, -24.5, -23.5, -22.5, -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, 
+	22.5, 23.5, 24.5, 25.5, 
 };
 
 static long _vq_quantmap_res0_128_128_4[] = {
-	   12,   11,   10,    9,    8,    7,    0,    1,
-	    2,    3,    4,    5,    6,
+	   51,   49,   47,   45,   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,   46,   48,   50,   52,
 };
 
 static encode_aux_threshmatch _vq_auxt_res0_128_128_4 = {
         _vq_quantthresh_res0_128_128_4,
         _vq_quantmap_res0_128_128_4,
-	13,
-	13
+	53,
+	53
 };
 
 static static_codebook _vq_book_res0_128_128_4 = {
-	2, 169,
+	2, 2809,
         _vq_lengthlist_res0_128_128_4,
-	1, -529137664, 1611661312, 5, 0,
+	1, -526778368, 1611661312, 6, 0,
         _vq_quantlist_res0_128_128_4,
         NULL,
         &_vq_auxt_res0_128_128_4,

1.3       +367 -45   vorbis/lib/books/res0_128_128_5.vqh

Index: res0_128_128_5.vqh
===================================================================
RCS file: /usr/local/cvsroot/vorbis/lib/books/res0_128_128_5.vqh,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- res0_128_128_5.vqh	2000/11/17 11:47:21	1.2
+++ res0_128_128_5.vqh	2001/01/22 01:38:31	1.3
@@ -1,13 +1,12 @@
 /********************************************************************
  *                                                                  *
- * THIS FILE IS PART OF THE Ogg Vorbis SOFTWARE CODEC SOURCE CODE.  *
+ * THIS FILE IS PART OF THE OggVorbis 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 GNU LESSER/LIBRARY PUBLIC LICENSE, WHICH IS INCLUDED WITH    *
+ * THIS SOURCE. PLEASE READ THESE TERMS BEFORE DISTRIBUTING.        *
  *                                                                  *
- * THE OggSQUISH SOURCE CODE IS (C) COPYRIGHT 1994-1999             *
- * by 1999 Monty <monty at xiph.org> and The XIPHOPHORUS Company       *
- * http://www.xiph.org/                                             *
+ * THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2001             *
+ * by the XIPHOPHORUS Company, http://www.xiph.org/                 *
  *                                                                  *
  ********************************************************************
 
@@ -20,101 +19,424 @@
 #include "codebook.h"
 
 static long _vq_quantlist_res0_128_128_5[] = {
-	102,
-	103,
-	104,
-	105,
-	107,
-	110,
-	113,
-	116,
-	119,
-	122,
-	126,
-	130,
-	133,
-	137,
-	141,
-	145,
+	150,
         149,
+	151,
+	148,
+	152,
+	147,
         153,
+	146,
+	154,
+	145,
+	155,
+	144,
+	156,
+	143,
+	157,
+	142,
         158,
+	141,
+	159,
+	140,
+	160,
+	139,
+	161,
+	138,
+	162,
+	137,
         163,
+	136,
+	164,
+	135,
+	165,
+	134,
+	166,
+	133,
+	167,
+	132,
         168,
+	131,
+	169,
+	130,
+	170,
+	129,
+	171,
+	128,
+	172,
+	127,
         173,
+	126,
         174,
+	125,
+	175,
+	124,
+	176,
+	123,
+	177,
+	122,
+	178,
+	121,
+	179,
+	120,
         180,
+	119,
+	181,
+	118,
+	182,
+	117,
+	183,
+	116,
+	184,
+	115,
+	185,
+	114,
         186,
+	113,
+	187,
+	112,
+	188,
+	111,
+	189,
+	110,
+	190,
+	109,
+	191,
+	108,
         192,
+	107,
+	193,
+	106,
+	194,
+	105,
+	195,
+	104,
+	196,
+	103,
+	197,
+	102,
         198,
-	204,
         101,
+	199,
         100,
+	200,
         99,
+	201,
+	98,
+	202,
         97,
+	203,
+	96,
+	204,
+	95,
+	205,
         94,
+	206,
+	93,
+	207,
+	92,
+	208,
         91,
+	209,
+	90,
+	210,
+	89,
+	211,
         88,
+	212,
+	87,
+	213,
+	86,
+	214,
         85,
+	215,
+	84,
+	216,
+	83,
+	217,
         82,
+	218,
+	81,
+	219,
+	80,
+	220,
+	79,
+	221,
         78,
+	222,
+	77,
+	223,
+	76,
+	224,
+	75,
+	225,
         74,
+	226,
+	73,
+	227,
+	72,
+	228,
         71,
+	229,
+	70,
+	230,
+	69,
+	231,
+	68,
+	232,
         67,
+	233,
+	66,
+	234,
+	65,
+	235,
+	64,
+	236,
         63,
+	237,
+	62,
+	238,
+	61,
+	239,
+	60,
+	240,
         59,
+	241,
+	58,
+	242,
+	57,
+	243,
+	56,
+	244,
         55,
+	245,
+	54,
+	246,
+	53,
+	247,
+	52,
+	248,
         51,
+	249,
+	50,
+	250,
+	49,
+	251,
+	48,
+	252,
+	47,
+	253,
         46,
+	254,
+	45,
+	255,
+	44,
+	256,
+	43,
+	257,
+	42,
+	258,
         41,
+	259,
+	40,
+	260,
+	39,
+	261,
+	38,
+	262,
+	37,
+	263,
         36,
+	264,
+	35,
+	265,
+	34,
+	266,
+	33,
+	267,
+	32,
+	268,
         31,
+	269,
         30,
+	270,
+	29,
+	271,
+	28,
+	272,
+	27,
+	273,
+	26,
+	274,
+	25,
+	275,
         24,
+	276,
+	23,
+	277,
+	22,
+	278,
+	21,
+	279,
+	20,
+	280,
+	19,
+	281,
         18,
+	282,
+	17,
+	283,
+	16,
+	284,
+	15,
+	285,
+	14,
+	286,
+	13,
+	287,
         12,
+	288,
+	11,
+	289,
+	10,
+	290,
+	9,
+	291,
+	8,
+	292,
+	7,
+	293,
         6,
+	294,
+	5,
+	295,
+	4,
+	296,
+	3,
+	297,
+	2,
+	298,
+	1,
+	299,
         0,
+	300,
 };
 
 static long _vq_lengthlist_res0_128_128_5[] = {
-	 1, 3, 4, 6, 6, 6, 7, 7, 7, 8, 9,11,12,13,15,18,
-	18,18,18,17,17,17,17,17,17,17,17,17, 3, 5, 6, 6,
-	 6, 7, 7, 7, 8, 8,11,12,13,15,17,17,17,17,17,17,
-	17,17,17,17,17,17,17,
+	 2, 3, 3, 5, 4, 6, 6, 6, 6, 7, 6, 8, 8, 9, 8, 9,
+	11, 9,10,11,11,11,11,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, 7, 7, 8, 8, 8,11, 8,10, 9, 8,10,
+	 9,10, 9,10, 9,10, 9, 9, 9,10,10, 9,10,10, 9,10,
+	10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,
+	10, 9,10,10, 9,10, 9,10,10,10,10,10,10,10,10,10,
+	10,10,10,10,10,10,10,10,10,10,10,10, 9,10,10,10,
+	10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,
+	10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,
+	10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,
+	10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,
+	10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,
+	10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,
+	10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,
+	10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,
+	10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,
+	10,10,10,10,10,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_res0_128_128_5[] = {
-	-99, -93, -87, -81, -75, -71.5, -68.5, -63.5, 
-	-58.5, -53.5, -49, -45, -41, -37, -33, -29.5, 
-	-26, -22, -18.5, -15.5, -12.5, -9.5, -6.5, -4, 
-	-2.5, -1.5, -0.5, 0.5, 1.5, 2.5, 4, 6.5, 
-	9.5, 12.5, 15.5, 18.5, 22, 26, 29.5, 33, 
-	37, 41, 45, 49, 53.5, 58.5, 63.5, 68.5, 
-	71.5, 75, 81, 87, 93, 99, 
+	-149.5, -148.5, -147.5, -146.5, -145.5, -144.5, -143.5, -142.5, 
+	-141.5, -140.5, -139.5, -138.5, -137.5, -136.5, -135.5, -134.5, 
+	-133.5, -132.5, -131.5, -130.5, -129.5, -128.5, -127.5, -126.5, 
+	-125.5, -124.5, -123.5, -122.5, -121.5, -120.5, -119.5, -118.5, 
+	-117.5, -116.5, -115.5, -114.5, -113.5, -112.5, -111.5, -110.5, 
+	-109.5, -108.5, -107.5, -106.5, -105.5, -104.5, -103.5, -102.5, 
+	-101.5, -100.5, -99.5, -98.5, -97.5, -96.5, -95.5, -94.5, 
+	-93.5, -92.5, -91.5, -90.5, -89.5, -88.5, -87.5, -86.5, 
+	-85.5, -84.5, -83.5, -82.5, -81.5, -80.5, -79.5, -78.5, 
+	-77.5, -76.5, -75.5, -74.5, -73.5, -72.5, -71.5, -70.5, 
+	-69.5, -68.5, -67.5, -66.5, -65.5, -64.5, -63.5, -62.5, 
+	-61.5, -60.5, -59.5, -58.5, -57.5, -56.5, -55.5, -54.5, 
+	-53.5, -52.5, -51.5, -50.5, -49.5, -48.5, -47.5, -46.5, 
+	-45.5, -44.5, -43.5, -42.5, -41.5, -40.5, -39.5, -38.5, 
+	-37.5, -36.5, -35.5, -34.5, -33.5, -32.5, -31.5, -30.5, 
+	-29.5, -28.5, -27.5, -26.5, -25.5, -24.5, -23.5, -22.5, 
+	-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, 22.5, 23.5, 24.5, 25.5, 
+	26.5, 27.5, 28.5, 29.5, 30.5, 31.5, 32.5, 33.5, 
+	34.5, 35.5, 36.5, 37.5, 38.5, 39.5, 40.5, 41.5, 
+	42.5, 43.5, 44.5, 45.5, 46.5, 47.5, 48.5, 49.5, 
+	50.5, 51.5, 52.5, 53.5, 54.5, 55.5, 56.5, 57.5, 
+	58.5, 59.5, 60.5, 61.5, 62.5, 63.5, 64.5, 65.5, 
+	66.5, 67.5, 68.5, 69.5, 70.5, 71.5, 72.5, 73.5, 
+	74.5, 75.5, 76.5, 77.5, 78.5, 79.5, 80.5, 81.5, 
+	82.5, 83.5, 84.5, 85.5, 86.5, 87.5, 88.5, 89.5, 
+	90.5, 91.5, 92.5, 93.5, 94.5, 95.5, 96.5, 97.5, 
+	98.5, 99.5, 100.5, 101.5, 102.5, 103.5, 104.5, 105.5, 
+	106.5, 107.5, 108.5, 109.5, 110.5, 111.5, 112.5, 113.5, 
+	114.5, 115.5, 116.5, 117.5, 118.5, 119.5, 120.5, 121.5, 
+	122.5, 123.5, 124.5, 125.5, 126.5, 127.5, 128.5, 129.5, 
+	130.5, 131.5, 132.5, 133.5, 134.5, 135.5, 136.5, 137.5, 
+	138.5, 139.5, 140.5, 141.5, 142.5, 143.5, 144.5, 145.5, 
+	146.5, 147.5, 148.5, 149.5, 
 };
 
 static long _vq_quantmap_res0_128_128_5[] = {
-	   54,   53,   52,   51,   50,   49,   48,   47,
-	   46,   45,   44,   43,   42,   41,   40,   39,
-	   38,   37,   36,   35,   34,   33,   32,   31,
-	   30,   29,   28,    0,    1,    2,    3,    4,
-	    5,    6,    7,    8,    9,   10,   11,   12,
-	   13,   14,   15,   16,   17,   18,   19,   20,
-	   21,   22,   23,   24,   25,   26,   27,
+	  299,  297,  295,  293,  291,  289,  287,  285,
+	  283,  281,  279,  277,  275,  273,  271,  269,
+	  267,  265,  263,  261,  259,  257,  255,  253,
+	  251,  249,  247,  245,  243,  241,  239,  237,
+	  235,  233,  231,  229,  227,  225,  223,  221,
+	  219,  217,  215,  213,  211,  209,  207,  205,
+	  203,  201,  199,  197,  195,  193,  191,  189,
+	  187,  185,  183,  181,  179,  177,  175,  173,
+	  171,  169,  167,  165,  163,  161,  159,  157,
+	  155,  153,  151,  149,  147,  145,  143,  141,
+	  139,  137,  135,  133,  131,  129,  127,  125,
+	  123,  121,  119,  117,  115,  113,  111,  109,
+	  107,  105,  103,  101,   99,   97,   95,   93,
+	   91,   89,   87,   85,   83,   81,   79,   77,
+	   75,   73,   71,   69,   67,   65,   63,   61,
+	   59,   57,   55,   53,   51,   49,   47,   45,
+	   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,   46,   48,   50,
+	   52,   54,   56,   58,   60,   62,   64,   66,
+	   68,   70,   72,   74,   76,   78,   80,   82,
+	   84,   86,   88,   90,   92,   94,   96,   98,
+	  100,  102,  104,  106,  108,  110,  112,  114,
+	  116,  118,  120,  122,  124,  126,  128,  130,
+	  132,  134,  136,  138,  140,  142,  144,  146,
+	  148,  150,  152,  154,  156,  158,  160,  162,
+	  164,  166,  168,  170,  172,  174,  176,  178,
+	  180,  182,  184,  186,  188,  190,  192,  194,
+	  196,  198,  200,  202,  204,  206,  208,  210,
+	  212,  214,  216,  218,  220,  222,  224,  226,
+	  228,  230,  232,  234,  236,  238,  240,  242,
+	  244,  246,  248,  250,  252,  254,  256,  258,
+	  260,  262,  264,  266,  268,  270,  272,  274,
+	  276,  278,  280,  282,  284,  286,  288,  290,
+	  292,  294,  296,  298,  300,
 };
 
 static encode_aux_threshmatch _vq_auxt_res0_128_128_5 = {
         _vq_quantthresh_res0_128_128_5,
         _vq_quantmap_res0_128_128_5,
-	55,
-	55
+	301,
+	301
 };
 
 static static_codebook _vq_book_res0_128_128_5 = {
-	1, 55,
+	1, 301,
         _vq_lengthlist_res0_128_128_5,
-	1, -522616832, 1611661312, 8, 0,
+	1, -520962048, 1611661312, 9, 0,
         _vq_quantlist_res0_128_128_5,
         NULL,
         &_vq_auxt_res0_128_128_5,

1.3       +15 -4     vorbis/lib/books/res0_128_128aux.vqh

Index: res0_128_128aux.vqh
===================================================================
RCS file: /usr/local/cvsroot/vorbis/lib/books/res0_128_128aux.vqh,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- res0_128_128aux.vqh	2000/11/17 11:47:21	1.2
+++ res0_128_128aux.vqh	2001/01/22 01:38:31	1.3
@@ -20,13 +20,24 @@
 #include "codebook.h"
 
 static long _huff_lengthlist_res0_128_128aux[] = {
-	 4, 9,11,11,14,15, 3, 2, 6, 9,14,15, 6, 6, 8,10,
-	14,15, 7, 7, 9, 9,11,15, 8, 3, 6, 8,11,13, 6, 2,
-	 4, 7,11,14,
+	13,15,16,16,16,16,13,11,13,16,16,16,11,11,13,16,
+	15,15,10,14,15,15,15,15,15,15,15,15,15,15,15,15,
+	15,15,15,15, 9,10,12,13,15,15, 5, 2, 6,13,15,15,
+	 7, 5, 8,14,15,15,10,12,15,15,15,15,15,15,15,15,
+	15,15,15,15,15,15,15,15, 8, 9,10,10,15,15, 5, 4,
+	 8,12,15,15, 8, 7,10,13,15,15,12,12,15,15,15,15,
+	15,15,15,15,15,15,15,15,15,15,15,15,10,10,12,13,
+	15,15, 9, 2, 4, 9,15,15,11, 3, 5, 9,15,15,13, 8,
+	 9,14,15,15,15,14,15,15,15,15,15,15,15,15,15,15,
+	13,14,15,15,15,15,14, 6, 7,12,15,15,15, 6, 8,14,
+	15,15,14,11,13,15,15,15,15,15,15,15,15,15,15,15,
+	15,15,15,15,15,15,15,15,15,15,14,11,12,15,15,15,
+	15,11,13,15,15,15,15,14,15,15,15,15,15,15,15,15,
+	15,15,15,15,15,15,15,15,
 };
 
 static static_codebook _huff_book_res0_128_128aux = {
-	2, 36,
+	3, 216,
         _huff_lengthlist_res0_128_128aux,
         0, 0, 0, 0, 0,
         NULL,

1.3       +12 -13    vorbis/lib/books/res0_160_1024_1.vqh

Index: res0_160_1024_1.vqh
===================================================================
RCS file: /usr/local/cvsroot/vorbis/lib/books/res0_160_1024_1.vqh,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- res0_160_1024_1.vqh	2000/11/17 11:47:21	1.2
+++ res0_160_1024_1.vqh	2001/01/22 01:38:31	1.3
@@ -1,13 +1,12 @@
 /********************************************************************
  *                                                                  *
- * THIS FILE IS PART OF THE Ogg Vorbis SOFTWARE CODEC SOURCE CODE.  *
+ * THIS FILE IS PART OF THE OggVorbis 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 GNU LESSER/LIBRARY PUBLIC LICENSE, WHICH IS INCLUDED WITH    *
+ * THIS SOURCE. PLEASE READ THESE TERMS BEFORE DISTRIBUTING.        *
  *                                                                  *
- * THE OggSQUISH SOURCE CODE IS (C) COPYRIGHT 1994-1999             *
- * by 1999 Monty <monty at xiph.org> and The XIPHOPHORUS Company       *
- * http://www.xiph.org/                                             *
+ * THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2001             *
+ * by the XIPHOPHORUS Company, http://www.xiph.org/                 *
  *                                                                  *
  ********************************************************************
 
@@ -21,16 +20,16 @@
 
 static long _vq_quantlist_res0_160_1024_1[] = {
         1,
-	2,
         0,
+	2,
 };
 
 static long _vq_lengthlist_res0_160_1024_1[] = {
-	 1, 4, 4, 4, 8, 8, 4, 8, 8, 4, 8, 8, 8,12,12, 8,
-	12,12, 5, 8, 8, 8,12,12, 9,12,12, 5, 8, 8, 8,12,
-	12, 9,12,12, 8,12,12,12,16,16,12,16,16, 8,12,12,
-	12,16,16,12,16,16, 5, 8, 8, 8,12,12, 9,12,12, 8,
-	12,12,12,16,15,12,16,16, 9,12,12,13,16,17,13,17,
+	 1, 4, 4, 4, 8, 8, 4, 8, 8, 5, 8, 8, 9,12,12, 8,
+	12,12, 4, 8, 8, 8,12,12, 8,12,12, 5, 8, 8, 9,12,
+	12, 8,12,12, 9,12,12,12,16,16,13,16,16, 8,12,12,
+	12,16,16,12,16,16, 5, 8, 8, 9,12,12, 8,12,12, 8,
+	12,12,12,16,16,12,16,16, 8,12,12,13,16,16,12,16,
         16,
 };
 
@@ -39,7 +38,7 @@
 };
 
 static long _vq_quantmap_res0_160_1024_1[] = {
-	    2,    0,    1,
+	    1,    0,    2,
 };
 
 static encode_aux_threshmatch _vq_auxt_res0_160_1024_1 = {

1.2       +8 -9      vorbis/lib/books/res0_160_1024_2.vqh

Index: res0_160_1024_2.vqh
===================================================================
RCS file: /usr/local/cvsroot/vorbis/lib/books/res0_160_1024_2.vqh,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- res0_160_1024_2.vqh	2000/11/08 13:16:28	1.1
+++ res0_160_1024_2.vqh	2001/01/22 01:38:31	1.2
@@ -1,13 +1,12 @@
 /********************************************************************
  *                                                                  *
- * THIS FILE IS PART OF THE Ogg Vorbis SOFTWARE CODEC SOURCE CODE.  *
+ * THIS FILE IS PART OF THE OggVorbis 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 GNU LESSER/LIBRARY PUBLIC LICENSE, WHICH IS INCLUDED WITH    *
+ * THIS SOURCE. PLEASE READ THESE TERMS BEFORE DISTRIBUTING.        *
  *                                                                  *
- * THE OggSQUISH SOURCE CODE IS (C) COPYRIGHT 1994-1999             *
- * by 1999 Monty <monty at xiph.org> and The XIPHOPHORUS Company       *
- * http://www.xiph.org/                                             *
+ * THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2001             *
+ * by the XIPHOPHORUS Company, http://www.xiph.org/                 *
  *                                                                  *
  ********************************************************************
 
@@ -21,12 +20,12 @@
 
 static long _vq_quantlist_res0_160_1024_2[] = {
         1,
-	2,
         0,
+	2,
 };
 
 static long _vq_lengthlist_res0_160_1024_2[] = {
-	 3, 4, 4, 4, 6, 6, 5, 6, 6, 5, 6, 6, 6, 8, 8, 6,
+	 3, 4, 4, 5, 6, 6, 4, 6, 6, 5, 6, 6, 6, 8, 8, 6,
          8, 8, 5, 6, 6, 6, 8, 8, 6, 8, 8, 5, 6, 6, 6, 8,
          8, 6, 8, 8, 6, 8, 8, 8, 9, 9, 8, 9, 9, 6, 8, 8,
          8, 9, 9, 8, 9, 9, 5, 6, 6, 6, 8, 8, 6, 8, 8, 6,
@@ -39,7 +38,7 @@
 };
 
 static long _vq_quantmap_res0_160_1024_2[] = {
-	    2,    0,    1,
+	    1,    0,    2,
 };
 
 static encode_aux_threshmatch _vq_auxt_res0_160_1024_2 = {

1.3       +48 -49    vorbis/lib/books/res0_160_1024_3.vqh

Index: res0_160_1024_3.vqh
===================================================================
RCS file: /usr/local/cvsroot/vorbis/lib/books/res0_160_1024_3.vqh,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- res0_160_1024_3.vqh	2000/11/17 11:47:21	1.2
+++ res0_160_1024_3.vqh	2001/01/22 01:38:31	1.3
@@ -1,13 +1,12 @@
 /********************************************************************
  *                                                                  *
- * THIS FILE IS PART OF THE Ogg Vorbis SOFTWARE CODEC SOURCE CODE.  *
+ * THIS FILE IS PART OF THE OggVorbis 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 GNU LESSER/LIBRARY PUBLIC LICENSE, WHICH IS INCLUDED WITH    *
+ * THIS SOURCE. PLEASE READ THESE TERMS BEFORE DISTRIBUTING.        *
  *                                                                  *
- * THE OggSQUISH SOURCE CODE IS (C) COPYRIGHT 1994-1999             *
- * by 1999 Monty <monty at xiph.org> and The XIPHOPHORUS Company       *
- * http://www.xiph.org/                                             *
+ * THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2001             *
+ * by the XIPHOPHORUS Company, http://www.xiph.org/                 *
  *                                                                  *
  ********************************************************************
 
@@ -21,53 +20,53 @@
 
 static long _vq_quantlist_res0_160_1024_3[] = {
         2,
-	3,
-	4,
         1,
+	3,
         0,
+	4,
 };
 
 static long _vq_lengthlist_res0_160_1024_3[] = {
-	 3, 5, 7, 5, 7, 5, 6, 9, 6, 9, 7, 9,12, 9,13, 5,
-	 6, 9, 6, 9, 7, 9,12, 9,12, 5, 6, 9, 6, 9, 6, 8,
-	11, 8,11, 9,11,14,11,15, 7, 8,11, 8,11, 9,11,14,
-	11,15, 7, 9,12, 9,13, 9,11,14,11,15,13,15,18,15,
-	19, 9,11,15,11,15,13,15,19,15,18, 5, 6, 9, 7, 9,
-	 7, 8,11, 8,11, 9,11,15,11,15, 7, 8,11, 8,11, 9,
-	11,15,11,15, 7, 9,12, 9,13, 9,11,15,11,15,13,15,
-	19,15,17, 9,11,15,11,15,13,15,18,15,18, 5, 6, 9,
-	 7, 9, 7, 8,11, 8,11, 9,11,15,11,15, 7, 8,11, 8,
-	11, 9,11,15,11,15, 6, 8,11, 8,11, 8,10,13,10,13,
-	11,13,16,13,17, 8,10,13,10,13,11,13,16,13,17, 9,
-	11,15,11,15,11,13,17,13,17,15,17,18,17,20,11,13,
-	17,13,17,15,17,19,18,19, 7, 8,11, 8,11, 8,10,13,
-	10,13,11,13,17,13,16, 8,10,13,10,13,11,13,17,13,
-	17, 9,11,15,11,15,11,13,17,13,16,15,17,19,17,19,
-	11,13,17,13,17,15,18,19,17,20, 7, 9,13, 9,13, 9,
-	11,15,11,15,12,15,19,15,18, 9,11,15,11,15,12,15,
-	18,15,18, 9,11,15,11,15,11,13,17,13,17,15,17,19,
-	18,20,11,13,17,13,17,15,16,20,18,19,13,15,19,15,
-	18,15,17,18,17,19,18,18,19,19,20,15,17,19,17,20,
-	20,20,20,20,20, 9,11,15,11,15,11,13,18,13,17,15,
-	17,19,17,20,11,13,17,13,17,15,16,20,17,19,13,16,
-	18,15,18,14,18,19,17,19,18,20,20,20,20,16,18,19,
-	18,20,18,19,20,20,20, 5, 7, 9, 7, 9, 7, 8,11, 8,
-	11, 9,11,15,11,14, 7, 8,11, 8,11, 9,11,15,11,15,
-	 7, 8,11, 8,11, 8,10,13,10,13,11,13,17,13,17, 8,
-	10,13,10,13,11,13,17,13,17, 9,11,15,11,15,11,13,
-	17,13,18,15,17,20,18,20,11,13,17,13,17,15,16,20,
-	17,19, 7, 8,11, 8,11, 8,10,13,10,13,11,13,17,13,
-	16, 8,10,13,10,13,11,13,17,13,16, 9,11,15,11,15,
-	11,13,17,13,17,16,17,19,17,20,11,13,16,13,17,15,
-	17,19,17,19, 7, 9,13, 9,13, 9,11,15,11,15,13,15,
-	18,15,19, 9,11,15,11,15,13,15,19,15,18, 9,11,15,
-	11,15,11,13,17,13,17,15,18,19,17,20,11,13,17,13,
-	17,15,16,20,18,20,13,15,18,15,18,15,17,20,17,20,
-	19,20,20,20,20,15,17,20,17,19,19,19,20,19,20, 9,
-	11,15,11,15,11,13,17,13,17,15,17,19,17,19,11,13,
-	17,13,17,15,17,20,17,20,13,15,17,15,18,15,17,20,
-	17,20,19,20,20,20,20,15,17,20,17,20,18,19,19,19,
-	20,
+	 3, 5, 5, 7, 7, 5, 6, 6, 9, 9, 5, 6, 6, 9, 9, 7,
+	 9, 9,13,13, 7, 9, 9,13,12, 5, 7, 6, 9, 9, 7, 8,
+	 8,11,11, 7, 8, 8,11,11, 9,11,11,14,15, 9,11,11,
+	14,15, 5, 6, 6, 9, 9, 7, 8, 8,11,11, 6, 8, 8,11,
+	11, 9,11,11,15,15, 9,11,11,15,14, 7, 9, 9,12,12,
+	 9,11,11,15,15, 9,11,11,15,15,13,15,15,18,18,13,
+	15,15,18,17, 7, 9, 9,12,12, 9,11,11,15,15, 9,11,
+	11,15,15,13,15,15,18,20,13,15,15,19,18, 5, 7, 7,
+	 9, 9, 7, 8, 8,11,11, 7, 8, 8,11,11, 9,11,11,15,
+	15, 9,11,11,15,15, 7, 8, 8,11,11, 8,10,10,13,13,
+	 8,10,10,13,13,11,13,13,17,17,11,13,13,17,16, 7,
+	 8, 8,11,11, 8,10,10,13,13, 8,10,10,13,13,11,13,
+	13,17,17,11,13,13,17,17, 9,11,11,15,15,11,13,14,
+	17,17,11,13,13,17,16,15,16,18,18,20,15,17,17,20,
+	20, 9,11,11,15,15,11,13,13,17,17,11,13,13,17,17,
+	15,17,16,20,20,15,17,18,21,19, 5, 7, 6, 9, 9, 7,
+	 8, 8,11,11, 7, 8, 8,11,11, 9,11,11,15,15, 9,11,
+	11,15,15, 7, 8, 8,11,11, 8,10,10,13,13, 8,10,10,
+	13,13,11,13,13,17,17,11,13,13,17,17, 6, 8, 8,11,
+	11, 8,10,10,13,13, 8,10,10,13,13,11,13,13,17,17,
+	11,13,13,17,17, 9,11,11,15,15,11,13,13,17,17,11,
+	13,13,17,17,15,17,17,21,20,15,17,17,19,21, 9,11,
+	11,15,15,11,13,13,17,17,11,13,13,17,17,15,17,16,
+	19,19,15,17,17,20,19, 7, 9, 9,13,13, 9,11,11,15,
+	15, 9,11,11,15,15,12,15,15,19,18,13,15,15,18,18,
+	 9,11,11,15,15,11,13,13,17,17,11,13,13,17,17,15,
+	17,17,19,20,15,18,17,20,20, 9,11,11,15,15,11,13,
+	13,18,17,11,13,13,17,17,15,17,17,21,20,15,18,17,
+	22,20,13,15,15,19,19,15,17,17,20,21,15,17,17,22,
+	21,19,20,20,21,21,18,20,20,22,22,13,15,15,18,18,
+	15,17,17,21,19,15,17,17,19,19,18,20,19,22,22,18,
+	20,19,22,22, 7, 9, 9,12,13, 9,11,11,15,15, 9,11,
+	11,15,15,12,15,15,18,19,13,15,15,18,19, 9,11,11,
+	15,15,11,13,13,17,17,11,13,13,17,18,15,17,17,20,
+	19,15,17,18,19,20, 9,11,11,15,15,11,13,13,17,17,
+	11,13,13,17,17,15,18,17,20,20,15,18,17,22,20,13,
+	15,15,19,19,15,17,17,20,21,14,17,17,20,20,18,20,
+	19,22,22,18,19,20,22,22,13,15,15,18,18,15,17,17,
+	21,20,15,17,17,22,21,19,20,22,22,22,18,21,19,20,
+	22,
 };
 
 static float _vq_quantthresh_res0_160_1024_3[] = {
@@ -75,7 +74,7 @@
 };
 
 static long _vq_quantmap_res0_160_1024_3[] = {
-	    4,    3,    0,    1,    2,
+	    3,    1,    0,    2,    4,
 };
 
 static encode_aux_threshmatch _vq_auxt_res0_160_1024_3 = {

1.3       +48 -49    vorbis/lib/books/res0_160_1024_4.vqh

Index: res0_160_1024_4.vqh
===================================================================
RCS file: /usr/local/cvsroot/vorbis/lib/books/res0_160_1024_4.vqh,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- res0_160_1024_4.vqh	2000/11/17 11:47:21	1.2
+++ res0_160_1024_4.vqh	2001/01/22 01:38:31	1.3
@@ -1,13 +1,12 @@
 /********************************************************************
  *                                                                  *
- * THIS FILE IS PART OF THE Ogg Vorbis SOFTWARE CODEC SOURCE CODE.  *
+ * THIS FILE IS PART OF THE OggVorbis 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 GNU LESSER/LIBRARY PUBLIC LICENSE, WHICH IS INCLUDED WITH    *
+ * THIS SOURCE. PLEASE READ THESE TERMS BEFORE DISTRIBUTING.        *
  *                                                                  *
- * THE OggSQUISH SOURCE CODE IS (C) COPYRIGHT 1994-1999             *
- * by 1999 Monty <monty at xiph.org> and The XIPHOPHORUS Company       *
- * http://www.xiph.org/                                             *
+ * THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2001             *
+ * by the XIPHOPHORUS Company, http://www.xiph.org/                 *
  *                                                                  *
  ********************************************************************
 
@@ -21,53 +20,53 @@
 
 static long _vq_quantlist_res0_160_1024_4[] = {
         2,
-	3,
-	4,
         1,
+	3,
         0,
+	4,
 };
 
 static long _vq_lengthlist_res0_160_1024_4[] = {
-	 5, 6, 8, 6, 8, 6, 7, 9, 7, 9, 8, 9,11, 9,11, 6,
-	 7, 9, 7, 9, 8, 9,11, 9,11, 6, 7, 9, 7, 9, 7, 7,
-	 9, 7,10, 9, 9,11,10,12, 7, 7, 9, 7,10, 9,10,11,
-	10,12, 8, 9,11, 9,11, 9,10,12,10,12,11,12,14,12,
-	14, 9,10,12,10,12,11,12,14,12,14, 6, 7, 9, 7, 9,
-	 7, 7, 9, 7, 9, 9,10,12,10,11, 7, 7, 9, 7,10, 9,
-	10,12,10,12, 8, 9,11, 9,11, 9,10,12,10,12,11,12,
-	14,12,14, 9,10,12,10,12,11,12,14,12,14, 6, 7, 9,
-	 7, 9, 7, 7,10, 7,10, 9,10,12,10,12, 7, 7, 9, 7,
-	 9, 9,10,12,10,12, 7, 7,10, 7,10, 7, 8,10, 8,10,
-	10,10,12,10,13, 7, 8,10, 8,10,10,10,13,10,13, 9,
-	10,12,10,12,10,10,13,10,13,12,12,14,13,15,10,10,
-	13,10,13,12,13,15,13,15, 7, 7,10, 7,10, 7, 8,10,
-	 8,10,10,10,13,10,12, 7, 8,10, 8,10,10,10,12,10,
-	12, 9,10,12,10,12,10,10,13,10,13,12,13,15,12,14,
-	10,10,13,11,13,12,13,15,13,15, 8, 9,11, 9,11, 9,
-	10,12,10,12,11,12,14,12,14, 9,10,12,10,12,11,12,
-	14,12,14, 9,10,12,10,12,10,10,13,10,13,12,12,15,
-	13,15,10,10,13,10,13,12,13,15,13,14,11,12,14,12,
-	14,12,12,14,13,15,14,14,16,15,16,12,13,15,13,15,
-	14,15,17,15,16, 9,10,12,10,12,10,10,13,10,13,12,
-	13,15,12,15,10,10,13,10,13,12,13,15,13,15,11,12,
-	14,12,14,12,12,15,12,14,14,14,16,14,16,12,12,15,
-	13,15,14,15,17,15,16, 6, 7, 9, 7, 9, 7, 7, 9, 7,
-	10, 9,10,12,10,12, 7, 7,10, 7,10, 9,10,12,10,12,
-	 7, 7,10, 7,10, 7, 8,10, 8,10,10,10,12,10,12, 7,
-	 8,10, 8,10,10,10,12,10,13, 9,10,12,10,12,10,10,
-	13,10,13,12,13,14,13,15,10,10,13,10,13,12,12,14,
-	13,15, 7, 7,10, 7,10, 7, 8,10, 8,10,10,10,13,10,
-	13, 7, 8,10, 8,10,10,11,13,10,12, 9,10,12,10,12,
-	10,10,13,10,13,12,13,14,12,14,10,10,13,10,13,12,
-	13,15,12,14, 8, 9,11, 9,11, 9,10,12,10,12,11,12,
-	14,12,14, 9,10,12,10,12,11,12,14,12,14, 9,10,12,
-	10,12,10,10,13,10,13,12,13,15,13,15,10,10,13,10,
-	13,12,13,15,13,15,11,12,14,12,14,12,13,15,13,15,
-	14,15,16,14,16,12,12,15,13,15,14,14,16,15,16, 9,
-	10,12,10,12,10,10,13,10,13,12,13,15,13,15,10,10,
-	13,10,13,12,13,15,13,15,11,12,14,12,14,12,13,15,
-	13,15,14,15,17,15,16,12,13,15,13,14,14,15,17,14,
-	16,
+	 5, 6, 6, 8, 8, 6, 7, 7, 9, 9, 6, 7, 7, 9, 9, 8,
+	 9, 9,11,11, 8, 9, 9,11,11, 6, 7, 7, 9, 9, 7, 7,
+	 7,10,10, 7, 7, 7, 9, 9, 9, 9,10,12,12, 9, 9,10,
+	12,12, 6, 7, 7, 9, 9, 7, 7, 7, 9, 9, 7, 7, 7, 9,
+	 9, 9,10, 9,12,12, 9, 9, 9,12,12, 8, 9, 9,11,11,
+	 9,10,10,12,12, 9,10,10,12,12,11,12,12,14,14,11,
+	12,12,14,14, 8, 9, 9,11,11, 9,10,10,12,12, 9,10,
+	10,12,12,11,12,12,14,14,11,12,12,14,14, 6, 7, 7,
+	 9, 9, 7, 7, 7,10,10, 7, 7, 7,10,10, 9,10,10,12,
+	12, 9,10, 9,12,12, 7, 7, 7,10,10, 7, 8, 8,10,10,
+	 7, 8, 8,10,10,10,10,10,13,13,10,10,10,13,13, 7,
+	 7, 7,10,10, 7, 8, 8,10,10, 7, 8, 8,10,10,10,11,
+	10,13,13,10,10,10,13,13, 9,10,10,12,12,10,10,10,
+	13,13,10,11,10,13,13,12,13,13,15,15,12,13,13,15,
+	15, 9,10,10,12,12,10,10,10,13,13,10,10,10,13,13,
+	12,13,12,15,15,12,13,13,15,15, 6, 7, 7, 9, 9, 7,
+	 7, 7,10,10, 7, 7, 7,10,10, 9,10,10,12,12, 9,10,
+	10,12,12, 7, 7, 7,10,10, 7, 8, 8,10,10, 7, 8, 8,
+	10,10,10,10,10,13,13,10,10,10,13,13, 7, 7, 7,10,
+	10, 7, 8, 8,10,10, 7, 8, 8,10,10,10,10,10,13,13,
+	10,10,10,13,12, 9,10,10,12,12,10,10,10,13,13, 9,
+	10,10,13,13,12,13,13,15,15,12,13,13,15,15, 9,10,
+	10,12,12,10,10,10,13,13, 9,10,10,13,13,12,13,13,
+	15,15,12,13,12,16,15, 8, 9, 9,11,11, 9,10,10,12,
+	12, 9,10,10,12,12,11,12,12,15,15,11,12,12,15,14,
+	 9,10,10,12,12,10,10,10,13,13,10,11,10,13,13,12,
+	13,13,15,16,12,13,13,15,15, 9,10,10,12,12,10,10,
+	10,13,13,10,10,10,13,13,12,13,13,16,15,12,13,13,
+	15,15,11,12,12,15,14,12,13,13,15,15,12,13,13,16,
+	15,14,15,15,17,18,15,16,15,17,18,11,12,12,15,15,
+	12,13,13,16,15,12,13,13,15,15,14,16,15,17,17,15,
+	16,16,17,18, 8, 9, 9,11,11, 9,10,10,12,12, 9,10,
+	10,12,12,11,12,12,15,15,11,12,12,15,15, 9,10,10,
+	12,12,10,10,10,13,13,10,10,10,13,13,12,13,13,15,
+	16,12,13,13,15,15, 9,10,10,12,12,10,10,11,13,13,
+	10,10,10,13,13,12,13,13,15,15,12,13,13,16,15,11,
+	12,12,15,14,12,13,13,15,15,12,13,13,15,15,15,15,
+	15,17,17,14,15,15,17,17,11,12,12,14,14,12,13,13,
+	15,15,12,13,12,15,15,14,15,15,17,18,14,15,15,17,
+	17,
 };
 
 static float _vq_quantthresh_res0_160_1024_4[] = {
@@ -75,7 +74,7 @@
 };
 
 static long _vq_quantmap_res0_160_1024_4[] = {
-	    4,    3,    0,    1,    2,
+	    3,    1,    0,    2,    4,
 };
 
 static encode_aux_threshmatch _vq_auxt_res0_160_1024_4 = {

1.3       +33 -19    vorbis/lib/books/res0_160_1024_5.vqh

Index: res0_160_1024_5.vqh
===================================================================
RCS file: /usr/local/cvsroot/vorbis/lib/books/res0_160_1024_5.vqh,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- res0_160_1024_5.vqh	2000/11/17 11:47:21	1.2
+++ res0_160_1024_5.vqh	2001/01/22 01:38:31	1.3
@@ -1,13 +1,12 @@
 /********************************************************************
  *                                                                  *
- * THIS FILE IS PART OF THE Ogg Vorbis SOFTWARE CODEC SOURCE CODE.  *
+ * THIS FILE IS PART OF THE OggVorbis 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 GNU LESSER/LIBRARY PUBLIC LICENSE, WHICH IS INCLUDED WITH    *
+ * THIS SOURCE. PLEASE READ THESE TERMS BEFORE DISTRIBUTING.        *
  *                                                                  *
- * THE OggSQUISH SOURCE CODE IS (C) COPYRIGHT 1994-1999             *
- * by 1999 Monty <monty at xiph.org> and The XIPHOPHORUS Company       *
- * http://www.xiph.org/                                             *
+ * THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2001             *
+ * by the XIPHOPHORUS Company, http://www.xiph.org/                 *
  *                                                                  *
  ********************************************************************
 
@@ -20,41 +19,56 @@
 #include "codebook.h"
 
 static long _vq_quantlist_res0_160_1024_5[] = {
-	3,
-	4,
-	5,
         6,
+	5,
+	7,
+	4,
+	8,
+	3,
+	9,
         2,
+	10,
         1,
+	11,
         0,
+	12,
 };
 
 static long _vq_lengthlist_res0_160_1024_5[] = {
-	 1, 4, 6, 6, 4, 6, 6, 4, 5, 8, 8, 6, 8, 8, 6, 8,
-	10,11, 8,11,11, 7, 9,11,12, 9,11,12, 4, 6, 8, 8,
-	 6, 8, 8, 6, 8,11,11, 8,10,11, 7, 9,11,12, 9,11,
-	12,
+	 1, 4, 4, 6, 6, 7, 7, 8, 8,10,10,11,10, 4, 6, 6,
+	 8, 8, 9, 9,11,11,12,12,14,14, 4, 6, 5, 8, 8, 9,
+	 9,11,11,12,12,13,14, 6, 8, 8,11,11,11,11,13,13,
+	15,15,16,16, 6, 8, 8,11,11,11,11,13,13,15,14,16,
+	16, 7, 9, 9,12,11,14,13,15,15,16,16,17,17, 7, 9,
+	 9,12,12,13,14,15,15,16,16,17,17, 9,11,11,14,14,
+	15,15,16,16,17,17,18,18, 9,11,11,13,14,15,15,16,
+	16,17,18,18,18,10,13,13,15,15,17,17,17,17,19,18,
+	20,19,10,13,13,15,15,16,16,17,18,20,19,18,19,11,
+	14,14,16,16,17,17,18,19,20,19,20,19,11,14,14,16,
+	16,18,17,19,18,18,19,20,20,
 };
 
 static float _vq_quantthresh_res0_160_1024_5[] = {
-	-2.5, -1.5, -0.5, 0.5, 1.5, 2.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, 
 };
 
 static long _vq_quantmap_res0_160_1024_5[] = {
-	    6,    5,    4,    0,    1,    2,    3,
+	   11,    9,    7,    5,    3,    1,    0,    2,
+	    4,    6,    8,   10,   12,
 };
 
 static encode_aux_threshmatch _vq_auxt_res0_160_1024_5 = {
         _vq_quantthresh_res0_160_1024_5,
         _vq_quantmap_res0_160_1024_5,
-	7,
-	7
+	13,
+	13
 };
 
 static static_codebook _vq_book_res0_160_1024_5 = {
-	2, 49,
+	2, 169,
         _vq_lengthlist_res0_160_1024_5,
-	1, -533200896, 1611661312, 3, 0,
+	1, -531103744, 1611661312, 4, 0,
         _vq_quantlist_res0_160_1024_5,
         NULL,
         &_vq_auxt_res0_160_1024_5,

1.3       +33 -19    vorbis/lib/books/res0_160_1024_6.vqh

Index: res0_160_1024_6.vqh
===================================================================
RCS file: /usr/local/cvsroot/vorbis/lib/books/res0_160_1024_6.vqh,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- res0_160_1024_6.vqh	2000/11/17 11:47:21	1.2
+++ res0_160_1024_6.vqh	2001/01/22 01:38:31	1.3
@@ -1,13 +1,12 @@
 /********************************************************************
  *                                                                  *
- * THIS FILE IS PART OF THE Ogg Vorbis SOFTWARE CODEC SOURCE CODE.  *
+ * THIS FILE IS PART OF THE OggVorbis 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 GNU LESSER/LIBRARY PUBLIC LICENSE, WHICH IS INCLUDED WITH    *
+ * THIS SOURCE. PLEASE READ THESE TERMS BEFORE DISTRIBUTING.        *
  *                                                                  *
- * THE OggSQUISH SOURCE CODE IS (C) COPYRIGHT 1994-1999             *
- * by 1999 Monty <monty at xiph.org> and The XIPHOPHORUS Company       *
- * http://www.xiph.org/                                             *
+ * THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2001             *
+ * by the XIPHOPHORUS Company, http://www.xiph.org/                 *
  *                                                                  *
  ********************************************************************
 
@@ -20,41 +19,56 @@
 #include "codebook.h"
 
 static long _vq_quantlist_res0_160_1024_6[] = {
-	3,
-	4,
-	5,
         6,
+	5,
+	7,
+	4,
+	8,
+	3,
+	9,
         2,
+	10,
         1,
+	11,
         0,
+	12,
 };
 
 static long _vq_lengthlist_res0_160_1024_6[] = {
-	 3, 4, 5, 7, 4, 5, 7, 4, 4, 6, 7, 4, 6, 7, 5, 6,
-	 8, 9, 6, 8, 9, 7, 7, 9,10, 7, 9,10, 4, 4, 6, 7,
-	 4, 6, 7, 5, 6, 8, 9, 6, 8, 9, 7, 7, 9,10, 8, 9,
-	10,
+	 3, 4, 4, 5, 5, 7, 7, 8, 8, 9, 9,10,10, 4, 4, 4,
+	 6, 6, 7, 7, 9, 9,10,10,11,11, 4, 5, 4, 6, 6, 7,
+	 7, 9, 9,10,10,11,11, 6, 6, 6, 8, 8, 9, 9,10,10,
+	12,12,13,13, 5, 6, 6, 8, 8, 9, 9,10,10,12,12,13,
+	13, 7, 8, 8, 9, 9,11,11,12,12,13,13,14,14, 7, 8,
+	 8, 9, 9,11,11,12,12,13,13,14,14, 9, 9, 9,11,11,
+	12,12,13,13,14,14,15,15, 8, 9, 9,11,11,12,12,13,
+	13,14,14,16,15,10,11,11,12,12,13,13,14,14,15,15,
+	16,16,10,11,11,12,12,13,13,14,14,15,15,16,15,11,
+	12,12,13,13,14,14,15,15,16,16,17,17,11,12,12,13,
+	13,14,14,16,16,16,16,17,17,
 };
 
 static float _vq_quantthresh_res0_160_1024_6[] = {
-	-2.5, -1.5, -0.5, 0.5, 1.5, 2.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, 
 };
 
 static long _vq_quantmap_res0_160_1024_6[] = {
-	    6,    5,    4,    0,    1,    2,    3,
+	   11,    9,    7,    5,    3,    1,    0,    2,
+	    4,    6,    8,   10,   12,
 };
 
 static encode_aux_threshmatch _vq_auxt_res0_160_1024_6 = {
         _vq_quantthresh_res0_160_1024_6,
         _vq_quantmap_res0_160_1024_6,
-	7,
-	7
+	13,
+	13
 };
 
 static static_codebook _vq_book_res0_160_1024_6 = {
-	2, 49,
+	2, 169,
         _vq_lengthlist_res0_160_1024_6,
-	1, -533200896, 1611661312, 3, 0,
+	1, -531103744, 1611661312, 4, 0,
         _vq_quantlist_res0_160_1024_6,
         NULL,
         &_vq_auxt_res0_160_1024_6,

1.3       +94 -23    vorbis/lib/books/res0_160_1024_7.vqh

Index: res0_160_1024_7.vqh
===================================================================
RCS file: /usr/local/cvsroot/vorbis/lib/books/res0_160_1024_7.vqh,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- res0_160_1024_7.vqh	2000/11/17 11:47:21	1.2
+++ res0_160_1024_7.vqh	2001/01/22 01:38:31	1.3
@@ -1,13 +1,12 @@
 /********************************************************************
  *                                                                  *
- * THIS FILE IS PART OF THE Ogg Vorbis SOFTWARE CODEC SOURCE CODE.  *
+ * THIS FILE IS PART OF THE OggVorbis 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 GNU LESSER/LIBRARY PUBLIC LICENSE, WHICH IS INCLUDED WITH    *
+ * THIS SOURCE. PLEASE READ THESE TERMS BEFORE DISTRIBUTING.        *
  *                                                                  *
- * THE OggSQUISH SOURCE CODE IS (C) COPYRIGHT 1994-1999             *
- * by 1999 Monty <monty at xiph.org> and The XIPHOPHORUS Company       *
- * http://www.xiph.org/                                             *
+ * THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2001             *
+ * by the XIPHOPHORUS Company, http://www.xiph.org/                 *
  *                                                                  *
  ********************************************************************
 
@@ -20,46 +19,118 @@
 #include "codebook.h"
 
 static long _vq_quantlist_res0_160_1024_7[] = {
-	5,
-	6,
-	7,
-	8,
+	14,
+	13,
+	15,
+	12,
+	16,
+	11,
+	17,
         10,
+	18,
+	9,
+	19,
+	8,
+	20,
+	7,
+	21,
+	6,
+	22,
+	5,
+	23,
         4,
+	24,
         3,
+	25,
         2,
+	26,
+	1,
+	27,
         0,
+	28,
 };
 
 static long _vq_lengthlist_res0_160_1024_7[] = {
-	 2, 4, 5, 6, 7, 4, 5, 6, 6, 4, 5, 7, 7, 8, 5, 7,
-	 7, 8, 6, 7, 8, 9, 9, 7, 8, 9, 9, 7, 8, 9,10,10,
-	 8, 9,10,10, 7, 8,10,11,11, 8,10,11,11, 4, 5, 7,
-	 7, 8, 5, 7, 7, 8, 6, 7, 8, 9, 9, 7, 8, 9, 9, 7,
-	 8, 9,10,10, 8, 9,10,10, 7, 8,10,11,11, 8,10,11,
-	11,
+	 2, 4, 4, 6, 6, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8,
+	 8, 9, 9, 9, 9,10,10,10,10,10,10,10,10, 4, 6, 6,
+	 7, 7, 8, 8, 9, 9, 9, 9,10,10,10,10,10,10,11,11,
+	11,11,11,11,12,12,12,12,12,12, 4, 6, 6, 7, 7, 8,
+	 8, 9, 9, 9, 9,10,10,10,10,10,10,11,11,11,11,11,
+	11,12,12,12,12,12,12, 6, 7, 7, 8, 8, 9, 9,10,10,
+	11,11,11,11,11,11,11,12,12,12,12,12,13,13,13,13,
+	13,13,14,14, 6, 7, 7, 8, 8, 9, 9,10,10,11,11,11,
+	11,11,11,12,12,12,12,12,12,13,13,13,13,13,13,14,
+	14, 7, 8, 8, 9, 9,10,10,11,11,12,12,12,12,12,12,
+	13,12,13,13,13,13,14,14,14,14,14,14,15,15, 7, 8,
+	 8, 9, 9,10,10,11,11,11,11,12,12,12,12,13,13,13,
+	13,13,14,14,14,14,14,15,14,15,15, 8, 9, 9,10,10,
+	11,11,12,12,12,12,13,13,13,13,14,13,14,14,14,14,
+	15,14,15,15,15,15,16,15, 8, 9, 9,10,10,11,11,12,
+	12,12,12,13,13,13,13,13,13,14,14,14,14,14,14,15,
+	15,15,15,15,15, 9,10,10,11,11,12,12,12,13,13,13,
+	14,14,14,14,14,14,14,14,15,15,15,15,16,15,16,16,
+	16,15, 9,10,10,11,11,12,12,12,12,13,13,14,14,14,
+	14,14,14,15,15,15,15,15,15,15,15,16,15,16,16, 9,
+	10,10,12,11,12,12,13,13,14,14,14,14,14,14,15,15,
+	15,15,15,15,15,16,16,16,17,16,17,17, 9,10,10,12,
+	11,12,12,13,13,14,14,14,14,14,14,14,15,15,15,15,
+	15,16,16,16,16,16,16,17,16, 9,10,10,11,11,12,12,
+	13,13,14,14,14,14,15,15,15,15,15,15,16,16,16,16,
+	16,16,16,17,17,17, 9,10,10,11,11,12,12,13,13,14,
+	14,14,15,15,15,15,16,16,15,16,15,16,17,16,17,17,
+	16,16,17, 9,11,11,12,12,13,13,14,14,14,14,15,15,
+	15,15,16,15,16,16,16,17,17,16,17,17,16,16,18,18,
+	 9,11,11,12,12,13,13,14,14,14,14,15,15,15,16,15,
+	15,16,16,16,16,17,16,17,16,17,17,17,19,10,11,11,
+	12,13,13,13,14,14,15,15,15,15,16,15,16,16,16,16,
+	17,16,17,17,18,17,18,18,17,17,10,11,11,12,13,13,
+	13,14,14,15,15,15,15,15,16,16,16,16,16,16,17,16,
+	17,17,17,19,17,18,18,10,12,12,13,13,14,14,15,14,
+	15,15,15,16,16,16,16,16,17,17,17,17,17,18,18,17,
+	18,19,17,17,10,12,11,13,13,14,14,14,15,16,15,15,
+	15,15,16,16,16,17,17,17,18,17,18,17,17,18,18,18,
+	18,10,12,12,13,13,14,14,15,15,16,16,17,16,16,17,
+	17,17,17,17,17,18,17,17,18,18,19,17,19,18,10,12,
+	12,13,13,14,14,15,15,15,15,16,16,16,16,16,17,18,
+	17,17,17,18,18,18,18,18,17,18,18,11,12,12,14,14,
+	15,15,15,15,16,16,16,16,17,17,17,16,17,18,17,18,
+	17,17,18,18,17,19,19,18,11,13,12,14,14,15,15,15,
+	15,16,16,17,16,17,16,17,17,18,17,17,17,17,18,18,
+	17,18,18,19,18,11,13,13,14,14,15,15,15,15,15,16,
+	17,16,16,17,17,17,17,17,18,17,18,18,19,19,18,18,
+	18,20,11,13,13,14,14,15,15,15,16,17,16,17,17,16,
+	17,18,17,17,18,18,18,18,18,18,18,18,18,18,18,11,
+	13,13,14,14,16,15,17,16,16,17,17,17,17,18,17,18,
+	18,18,19,18,19,19,18,18,19,19,18,18,11,13,13,14,
+	14,15,16,16,16,16,16,17,16,17,17,17,17,18,17,19,
+	17,19,19,18,18,18,19,20,17,
 };
 
 static float _vq_quantthresh_res0_160_1024_7[] = {
-	-4, -2.5, -1.5, -0.5, 0.5, 1.5, 2.5, 4, 
+	-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, 
 };
 
 static long _vq_quantmap_res0_160_1024_7[] = {
-	    8,    7,    6,    5,    0,    1,    2,    3,
-	    4,
+	   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,
 };
 
 static encode_aux_threshmatch _vq_auxt_res0_160_1024_7 = {
         _vq_quantthresh_res0_160_1024_7,
         _vq_quantmap_res0_160_1024_7,
-	9,
-	9
+	29,
+	29
 };
 
 static static_codebook _vq_book_res0_160_1024_7 = {
-	2, 81,
+	2, 841,
         _vq_lengthlist_res0_160_1024_7,
-	1, -531365888, 1611661312, 4, 0,
+	1, -528744448, 1611661312, 5, 0,
         _vq_quantlist_res0_160_1024_7,
         NULL,
         &_vq_auxt_res0_160_1024_7,

1.3       +312 -31   vorbis/lib/books/res0_160_1024_8.vqh

Index: res0_160_1024_8.vqh
===================================================================
RCS file: /usr/local/cvsroot/vorbis/lib/books/res0_160_1024_8.vqh,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- res0_160_1024_8.vqh	2000/11/17 11:47:21	1.2
+++ res0_160_1024_8.vqh	2001/01/22 01:38:31	1.3
@@ -1,13 +1,12 @@
 /********************************************************************
  *                                                                  *
- * THIS FILE IS PART OF THE Ogg Vorbis SOFTWARE CODEC SOURCE CODE.  *
+ * THIS FILE IS PART OF THE OggVorbis 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 GNU LESSER/LIBRARY PUBLIC LICENSE, WHICH IS INCLUDED WITH    *
+ * THIS SOURCE. PLEASE READ THESE TERMS BEFORE DISTRIBUTING.        *
  *                                                                  *
- * THE OggSQUISH SOURCE CODE IS (C) COPYRIGHT 1994-1999             *
- * by 1999 Monty <monty at xiph.org> and The XIPHOPHORUS Company       *
- * http://www.xiph.org/                                             *
+ * THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2001             *
+ * by the XIPHOPHORUS Company, http://www.xiph.org/                 *
  *                                                                  *
  ********************************************************************
 
@@ -20,56 +19,338 @@
 #include "codebook.h"
 
 static long _vq_quantlist_res0_160_1024_8[] = {
-	11,
-	12,
-	13,
-	14,
-	16,
-	19,
+	30,
+	29,
+	31,
+	28,
+	32,
+	27,
+	33,
+	26,
+	34,
+	25,
+	35,
+	24,
+	36,
+	23,
+	37,
         22,
+	38,
+	21,
+	39,
+	20,
+	40,
+	19,
+	41,
+	18,
+	42,
+	17,
+	43,
+	16,
+	44,
+	15,
+	45,
+	14,
+	46,
+	13,
+	47,
+	12,
+	48,
+	11,
+	49,
         10,
+	50,
         9,
+	51,
         8,
+	52,
+	7,
+	53,
         6,
+	54,
+	5,
+	55,
+	4,
+	56,
         3,
+	57,
+	2,
+	58,
+	1,
+	59,
         0,
+	60,
 };
 
 static long _vq_lengthlist_res0_160_1024_8[] = {
-	 2, 4, 6, 6, 6, 7, 8, 4, 6, 6, 6, 7, 8, 4, 6, 7,
-	 7, 8, 8,10, 6, 7, 7, 8, 8,10, 6, 7, 8, 9, 9, 9,
-	11, 7, 8, 9, 9, 9,11, 7, 8, 9, 9,10,10,12, 8, 9,
-	 9,10,10,12, 7, 9,10,10,11,11,12, 9,10,10,11,11,
-	13, 8, 9,11,11,12,13,14, 9,11,11,12,13,14, 9,11,
-	13,13,13,14,15,11,13,13,14,14,15, 4, 6, 7, 7, 8,
-	 8,10, 6, 7, 7, 8, 8,10, 6, 7, 8, 9, 9, 9,11, 7,
-	 8, 9, 9,10,11, 7, 8, 9, 9,10,10,12, 8, 9, 9,10,
-	10,12, 7, 9,10,10,11,11,12, 9,10,11,11,11,12, 8,
-	 9,11,11,12,13,14, 9,11,11,12,12,14, 9,11,13,13,
-	14,14,15,11,13,13,13,14,15,
+	 3, 4, 4, 6, 6, 6, 6, 7, 7, 7, 7, 8, 8, 8, 8, 8,
+	 8, 9, 9, 9, 9, 9, 9, 9, 9,10,10,10,10, 9, 9, 9,
+	 9, 9, 9,10,10,10,10,10,10,10,10,10,10,10,10,11,
+	11,11,11,11,11,11,11,11,11,12,11,12,12, 5, 6, 6,
+	 7, 7, 8, 8, 8, 9, 9, 9, 9, 9,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,12,12,12,12,12,12,12,12,12,12,12,
+	12,13,13,13,13,13,13,13,13,13, 5, 6, 6, 7, 7, 8,
+	 8, 8, 8, 9, 9, 9, 9,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,12,11,12,12,12,12,12,12,12,12,12,12,13,12,13,
+	13,13,13,13,13,13,13, 6, 7, 7, 8, 8, 9, 9,10,10,
+	10,10,10,10,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,13,13,
+	13,13,13,13,13,13,13,13,13,13,14,13,14,14,14,14,
+	14,14,14,14, 6, 7, 7, 8, 8, 9, 9,10,10,10,10,10,
+	10,11,11,11,11,11,11,12,11,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,14,13,13,13,13,13,14,14,14,14,14,14,14,
+	14, 7, 8, 8, 9, 9,10,10,10,11,11,11,11,11,11,11,
+	12,12,12,12,12,12,12,12,13,13,13,13,13,13,12,13,
+	13,13,13,13,13,13,14,13,14,13,14,14,14,14,14,14,
+	14,14,14,14,14,14,15,15,15,15,15,14,15,15, 7, 8,
+	 8, 9, 9,10,10,10,10,11,11,11,11,11,11,12,12,12,
+	12,12,12,12,12,13,12,13,13,13,13,13,12,13,13,13,
+	13,13,13,13,13,14,14,14,14,14,14,14,14,14,14,14,
+	14,14,14,14,14,15,14,15,15,15,15, 8, 9, 9,10,10,
+	11,11,11,11,12,12,12,12,12,12,12,12,13,13,13,13,
+	13,13,13,13,13,13,14,14,13,13,14,13,14,14,14,14,
+	14,14,14,14,15,14,14,14,15,15,15,15,15,14,15,15,
+	15,15,15,15,15,15,16,15, 8, 9, 9,10,10,11,11,11,
+	11,11,12,12,12,12,12,12,12,13,13,13,13,13,13,13,
+	13,13,13,14,13,13,13,13,13,14,13,14,14,14,14,14,
+	14,14,14,14,14,15,14,15,14,15,15,15,15,15,15,15,
+	15,15,15,16,15, 9,10,10,11,11,11,11,12,12,12,12,
+	12,12,13,13,13,13,13,13,14,13,14,14,14,14,14,14,
+	14,14,14,14,14,14,14,14,14,14,14,14,15,15,15,15,
+	15,15,15,15,15,15,15,15,15,16,16,15,15,15,15,15,
+	16,16, 9,10,10,11,11,11,11,12,12,12,12,12,12,13,
+	13,13,13,13,13,13,13,14,14,14,14,14,13,14,14,14,
+	14,14,14,14,14,14,14,15,14,15,14,15,14,15,15,15,
+	14,15,15,15,15,15,15,16,15,16,15,16,16,16,15, 9,
+	10,10,11,11,12,12,12,12,13,13,13,13,13,13,13,14,
+	14,14,14,14,14,14,15,14,14,14,15,14,14,15,15,14,
+	15,14,15,14,15,14,15,15,15,15,15,15,15,15,16,15,
+	16,15,16,15,16,16,16,16,16,16,16,16, 9,10,10,11,
+	11,12,12,12,12,13,12,13,13,13,13,14,13,14,14,14,
+	14,14,14,14,14,15,14,15,14,14,14,14,14,15,15,15,
+	14,15,15,15,15,15,15,15,15,16,15,15,15,16,16,16,
+	16,16,16,16,16,16,16,16,16, 9,10,10,12,12,12,12,
+	13,13,13,13,13,14,14,13,14,14,14,14,14,14,15,14,
+	15,14,15,15,15,15,14,14,15,15,15,15,15,15,15,15,
+	15,15,15,15,16,16,16,15,16,16,16,16,16,16,16,16,
+	16,17,16,16,16,17, 9,11,10,11,12,12,12,13,13,13,
+	13,13,13,14,14,14,14,14,14,14,14,14,14,15,14,15,
+	15,15,15,14,15,15,15,16,15,15,15,15,15,15,15,16,
+	15,16,16,16,15,16,16,16,16,16,16,16,16,17,16,16,
+	16,17,16,10,11,11,12,12,13,13,13,13,13,14,14,14,
+	14,14,14,14,15,15,15,14,14,15,15,15,15,15,15,15,
+	15,15,15,15,15,15,15,16,15,16,16,15,16,16,16,16,
+	16,16,17,16,16,17,16,16,16,16,17,16,17,19,18,18,
+	10,11,11,12,12,13,13,13,13,14,13,14,14,14,14,14,
+	14,15,14,15,15,15,15,15,15,15,15,15,15,15,15,15,
+	15,15,15,15,15,16,15,16,16,16,16,16,16,17,16,16,
+	16,17,16,17,17,17,17,17,16,17,17,17,17,10,11,11,
+	12,12,13,13,13,13,14,14,14,14,14,14,14,15,15,15,
+	15,15,15,15,15,15,16,15,15,15,16,15,16,15,16,16,
+	16,15,16,16,15,16,16,16,16,16,16,17,17,17,16,16,
+	17,17,17,16,17,17,17,18,18,19,10,11,11,12,12,13,
+	13,13,13,14,14,14,14,14,14,15,15,15,15,15,15,15,
+	15,15,15,16,15,15,15,15,15,16,15,16,16,15,16,16,
+	15,16,16,16,15,16,16,16,16,17,17,17,16,17,17,16,
+	17,17,17,17,18,17,17,10,12,11,13,12,13,13,14,14,
+	14,14,14,14,14,14,15,15,15,15,15,15,15,15,16,16,
+	16,16,16,15,16,16,16,16,16,15,16,15,16,16,17,16,
+	17,16,17,16,17,17,17,17,18,16,17,17,17,17,17,17,
+	17,17,18,18,10,12,11,12,12,13,13,14,14,14,14,14,
+	14,15,14,15,14,15,15,16,15,16,15,15,15,16,15,16,
+	16,15,15,16,16,16,16,15,16,16,15,16,16,16,16,16,
+	16,17,16,17,16,16,16,16,17,18,17,18,16,17,18,17,
+	17,10,12,12,13,13,13,14,14,14,14,14,15,15,15,15,
+	15,15,15,15,15,15,16,16,16,16,16,16,16,16,15,16,
+	16,15,17,16,17,17,17,16,17,16,17,16,16,17,16,17,
+	17,18,16,17,18,17,18,17,18,17,18,17,18,17,11,12,
+	12,13,13,13,14,14,14,14,14,15,15,15,15,15,15,15,
+	15,15,15,15,16,15,15,16,15,16,16,16,16,16,16,16,
+	16,16,16,17,16,17,16,16,17,17,16,17,17,17,17,17,
+	16,17,17,17,17,18,18,17,17,18,18,11,12,12,13,13,
+	14,14,14,14,15,15,15,14,15,15,15,15,15,15,16,15,
+	17,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
+	16,16,16,16,17,16,17,17,17,17,19,17,17,17,17,18,
+	19,17,17,17,18,17,18,18,11,12,12,13,13,13,13,14,
+	14,15,14,15,15,15,15,15,15,16,15,16,16,16,16,17,
+	16,16,15,16,15,16,16,16,16,17,17,17,16,17,17,18,
+	16,16,17,17,17,17,16,16,17,17,20,17,17,17,18,17,
+	17,17,19,18,17,11,12,12,13,13,14,14,14,14,15,15,
+	15,15,15,15,15,15,16,16,16,16,16,16,16,16,16,16,
+	16,16,16,16,16,17,16,16,17,16,17,17,16,16,19,17,
+	17,17,18,17,17,17,17,18,18,18,17,18,17,18,18,18,
+	18,18,11,12,12,13,13,14,14,14,15,15,15,15,15,15,
+	15,16,15,16,16,16,15,16,16,17,16,17,16,17,17,16,
+	16,16,16,17,17,16,16,17,17,17,17,17,16,17,16,17,
+	17,17,18,17,17,18,18,19,17,19,17,18,17,17,19,11,
+	13,13,13,13,14,14,15,15,15,15,15,15,16,15,16,16,
+	16,15,16,15,16,16,17,16,17,16,17,16,16,16,17,16,
+	16,17,16,17,18,16,18,17,17,17,17,17,17,18,19,18,
+	17,17,17,17,19,19,17,18,19,18,19,18,11,13,13,13,
+	13,14,14,15,15,15,15,16,16,16,15,16,15,16,16,17,
+	16,16,16,16,16,17,16,17,16,16,16,17,17,17,16,17,
+	17,16,17,17,17,17,17,18,17,17,17,17,17,19,17,18,
+	17,17,18,18,18,17,19,18,18,10,12,12,13,13,14,14,
+	14,14,15,15,15,15,15,15,16,16,16,15,16,16,16,16,
+	16,16,17,16,17,17,17,16,17,16,16,16,17,16,17,17,
+	17,17,17,17,17,17,19,18,18,18,17,17,18,18,19,19,
+	19,18,19,17,19,19,10,12,12,13,13,14,14,14,14,15,
+	14,15,15,16,15,16,16,15,16,16,16,16,16,16,16,17,
+	16,16,16,16,16,17,17,17,17,17,17,17,17,17,18,18,
+	17,18,18,17,17,17,17,17,18,17,18,19,19,18,17,19,
+	18,18,18,11,12,12,13,13,14,14,14,14,15,15,15,15,
+	16,16,16,16,16,16,16,16,17,17,16,16,17,17,16,16,
+	17,16,17,17,17,17,17,17,17,18,17,17,18,17,17,17,
+	18,17,18,18,18,18,19,17,19,19,18,17,19,18,18,18,
+	11,12,12,13,13,14,14,14,15,15,15,15,15,15,15,16,
+	16,16,16,15,16,16,16,17,16,17,16,16,17,16,16,16,
+	16,17,17,17,17,17,17,17,16,18,18,17,17,17,18,18,
+	18,18,20,18,19,18,18,18,18,19,17,19,18,11,12,12,
+	13,14,14,14,14,14,15,15,15,16,15,16,16,16,16,15,
+	16,16,16,16,17,16,17,16,17,16,18,17,17,16,17,17,
+	17,17,18,17,17,19,17,18,18,18,18,17,18,17,18,17,
+	19,18,18,18,18,18,19,18,18,19,11,12,12,13,13,14,
+	14,15,15,15,15,15,16,16,16,16,16,16,16,17,16,17,
+	16,16,17,17,17,17,17,17,17,17,17,18,17,19,18,17,
+	18,17,18,17,17,18,17,20,17,18,17,19,18,19,17,20,
+	19,18,18,17,18,20,18,11,12,13,14,14,15,15,15,15,
+	15,15,16,15,16,16,16,16,16,16,16,16,17,16,16,17,
+	18,16,16,17,17,17,17,16,18,17,19,17,18,17,18,17,
+	19,18,18,17,19,17,17,17,19,18,18,19,19,19,17,18,
+	19,18,18,20,11,13,13,13,14,14,14,15,15,16,16,16,
+	16,17,16,16,16,16,16,16,16,17,17,16,16,16,17,17,
+	16,17,17,17,17,17,17,17,18,17,18,17,17,17,18,19,
+	18,17,18,19,18,19,19,18,18,18,18,18,18,19,19,19,
+	18,11,13,13,14,14,15,15,15,15,15,16,16,16,16,16,
+	16,16,17,16,16,16,17,16,17,16,18,17,17,17,17,17,
+	17,17,17,18,17,18,18,17,17,19,18,18,17,18,19,18,
+	18,17,18,17,19,18,19,19,18,18,19,19,19,19,11,12,
+	13,14,14,14,15,15,15,15,15,16,16,16,16,17,16,16,
+	16,16,16,17,18,17,17,17,17,17,17,17,17,18,17,19,
+	17,18,17,18,17,18,17,17,18,17,18,18,18,19,18,17,
+	19,17,17,19,18,18,19,19,19,19,18,11,13,13,14,14,
+	15,15,15,16,15,16,17,17,17,16,17,16,16,16,16,17,
+	17,17,17,16,17,17,16,17,19,17,19,17,20,19,18,18,
+	20,17,18,19,18,18,18,18,18,19,19,18,19,17,19,18,
+	18,19,20,19,19,19,19,19,12,13,13,14,14,15,15,15,
+	16,16,16,16,16,16,16,16,16,16,17,17,16,17,17,17,
+	17,17,16,18,18,17,17,17,17,18,17,18,18,17,19,19,
+	17,18,18,19,18,18,19,18,18,19,19,18,18,19,18,19,
+	19,19,19,19,19,12,13,13,15,14,15,15,15,16,16,16,
+	17,17,17,16,16,17,17,16,17,17,17,17,17,17,17,17,
+	17,17,19,18,17,18,18,18,18,18,18,18,18,18,19,17,
+	19,18,19,20,19,18,20,18,18,19,19,18,19,18,18,18,
+	18,19,12,13,13,15,15,16,16,15,16,16,16,17,17,16,
+	16,16,17,17,16,17,17,17,17,17,17,19,18,17,18,18,
+	17,18,18,19,18,17,18,19,19,19,17,19,18,18,18,18,
+	18,19,18,18,18,18,19,19,19,19,19,19,18,18,19,12,
+	14,14,15,15,15,16,16,15,16,16,17,18,17,17,17,17,
+	17,17,19,16,17,17,19,17,19,17,18,17,19,18,17,18,
+	18,17,17,18,17,19,18,19,19,18,17,19,19,19,18,19,
+	19,19,19,18,18,18,20,18,19,19,20,19,12,13,14,15,
+	15,15,15,16,16,16,16,17,16,17,16,17,17,17,16,17,
+	17,17,17,18,17,17,17,18,18,17,18,18,18,18,19,17,
+	19,20,17,17,17,18,18,18,20,19,18,18,19,19,19,19,
+	19,19,19,18,19,20,20,18,19,12,14,14,15,15,15,16,
+	16,16,16,16,17,16,17,16,18,17,17,17,16,18,19,17,
+	18,18,18,17,18,17,18,18,18,17,17,17,18,18,18,19,
+	18,18,19,19,18,19,18,20,20,19,18,19,19,19,19,19,
+	19,18,19,19,19,19,12,14,14,15,15,16,16,16,16,16,
+	17,16,17,17,17,17,17,18,18,18,17,18,17,18,17,16,
+	17,17,17,18,19,19,19,17,17,18,19,19,18,19,18,19,
+	18,18,20,18,19,18,18,19,18,19,19,19,20,19,19,20,
+	20,19,19,13,14,14,15,15,16,16,16,16,17,16,16,17,
+	17,17,17,17,17,18,19,17,18,18,18,17,18,18,19,18,
+	19,18,20,18,17,18,18,19,18,19,18,19,19,19,18,18,
+	19,18,19,18,19,18,19,19,18,19,19,18,19,19,19,19,
+	12,14,14,15,15,16,16,16,17,17,17,17,17,17,17,17,
+	17,18,17,18,18,18,17,18,17,18,17,18,18,18,18,17,
+	18,19,19,20,19,18,20,18,18,19,19,18,18,19,19,19,
+	18,19,19,19,19,20,19,18,20,19,19,19,19,13,14,14,
+	15,15,16,16,16,16,17,16,17,17,17,16,17,17,17,17,
+	17,17,18,17,19,17,19,18,18,18,19,18,19,18,18,18,
+	18,18,19,19,20,19,18,18,19,19,19,19,19,19,19,18,
+	18,18,19,19,20,19,18,19,20,18,13,14,15,15,15,16,
+	16,16,17,17,17,17,17,18,17,17,17,17,18,17,17,18,
+	18,18,17,17,18,18,20,19,19,19,18,18,18,18,19,19,
+	19,19,18,19,18,19,19,19,20,20,19,19,19,19,18,18,
+	19,18,19,18,19,19,19,13,14,14,16,15,16,16,16,17,
+	17,17,18,17,18,17,18,17,18,17,18,17,18,18,17,19,
+	17,19,19,19,18,18,19,20,18,18,19,18,19,19,20,19,
+	19,18,19,19,19,19,18,19,19,18,20,18,19,19,20,19,
+	19,18,19,20,13,14,15,15,16,17,16,17,17,16,17,17,
+	17,18,16,18,18,18,19,17,18,17,18,18,18,19,18,18,
+	18,18,19,19,18,19,18,20,19,19,20,19,19,19,18,19,
+	18,20,19,19,18,19,19,19,20,20,20,20,20,20,19,20,
+	20,14,15,15,16,15,16,17,17,17,16,17,17,17,17,17,
+	17,18,18,18,18,17,18,18,18,19,18,18,18,19,18,19,
+	19,20,20,20,18,18,19,19,18,19,19,18,20,19,19,19,
+	18,19,20,19,18,19,19,20,20,18,19,19,19,19,14,15,
+	14,16,16,17,17,17,17,18,18,18,18,17,17,17,18,18,
+	18,18,18,18,18,19,18,18,18,19,18,18,18,18,19,19,
+	19,19,19,18,19,19,19,20,19,18,19,19,19,19,19,20,
+	19,18,19,20,19,19,19,19,20,20,19,14,15,15,16,17,
+	17,17,18,17,18,17,18,18,19,17,17,18,18,18,18,19,
+	19,18,18,20,19,18,19,18,20,19,18,19,18,19,18,18,
+	20,19,20,19,20,19,18,18,19,19,19,20,19,19,19,20,
+	19,20,19,20,20,19,19,20,14,15,15,16,16,17,17,16,
+	17,17,17,17,18,17,18,18,18,19,18,18,18,19,19,19,
+	20,18,19,19,19,19,18,19,18,18,18,18,19,19,18,19,
+	18,18,20,20,18,18,19,19,19,19,19,20,19,20,19,19,
+	19,20,19,20,19,14,15,15,17,16,17,17,18,17,17,17,
+	17,19,18,18,17,19,17,19,18,19,19,18,19,17,20,19,
+	20,19,18,18,18,19,20,17,19,18,19,18,19,18,19,20,
+	19,19,19,20,20,19,19,19,19,19,19,19,19,19,20,19,
+	19,20,14,15,15,17,17,17,16,17,17,17,17,18,18,18,
+	19,17,19,17,18,19,18,17,17,18,19,19,18,19,19,19,
+	18,19,18,18,18,19,19,20,19,20,19,19,19,20,20,19,
+	20,19,20,19,20,20,19,19,20,19,20,20,20,19,20,14,
+	15,16,16,16,17,17,17,19,20,18,18,17,18,18,18,17,
+	19,18,18,18,19,18,19,19,18,19,20,19,18,20,18,19,
+	19,19,19,18,20,19,19,20,20,19,19,19,19,19,20,20,
+	20,20,19,20,19,18,20,19,19,19,19,19,14,16,15,16,
+	16,17,17,17,18,17,17,17,19,18,19,19,17,19,19,20,
+	20,20,18,18,19,19,19,19,17,19,19,20,19,19,19,20,
+	19,19,19,19,19,20,18,19,19,20,19,19,18,20,20,20,
+	19,19,19,20,20,20,19,19,19,
 };
 
 static float _vq_quantthresh_res0_160_1024_8[] = {
-	-9.5, -6.5, -4, -2.5, -1.5, -0.5, 0.5, 1.5, 
-	2.5, 4, 6.5, 9.5, 
+	-29.5, -28.5, -27.5, -26.5, -25.5, -24.5, -23.5, -22.5, 
+	-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, 22.5, 23.5, 24.5, 25.5, 
+	26.5, 27.5, 28.5, 29.5, 
 };
 
 static long _vq_quantmap_res0_160_1024_8[] = {
-	   12,   11,   10,    9,    8,    7,    0,    1,
-	    2,    3,    4,    5,    6,
+	   59,   57,   55,   53,   51,   49,   47,   45,
+	   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,   46,   48,   50,
+	   52,   54,   56,   58,   60,
 };
 
 static encode_aux_threshmatch _vq_auxt_res0_160_1024_8 = {
         _vq_quantthresh_res0_160_1024_8,
         _vq_quantmap_res0_160_1024_8,
-	13,
-	13
+	61,
+	61
 };
 
 static static_codebook _vq_book_res0_160_1024_8 = {
-	2, 169,
+	2, 3721,
         _vq_lengthlist_res0_160_1024_8,
-	1, -529137664, 1611661312, 5, 0,
+	1, -526516224, 1611661312, 6, 0,
         _vq_quantlist_res0_160_1024_8,
         NULL,
         &_vq_auxt_res0_160_1024_8,

1.3       +728 -41   vorbis/lib/books/res0_160_1024_9.vqh

Index: res0_160_1024_9.vqh
===================================================================
RCS file: /usr/local/cvsroot/vorbis/lib/books/res0_160_1024_9.vqh,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- res0_160_1024_9.vqh	2000/11/17 11:47:21	1.2
+++ res0_160_1024_9.vqh	2001/01/22 01:38:31	1.3
@@ -1,13 +1,12 @@
 /********************************************************************
  *                                                                  *
- * THIS FILE IS PART OF THE Ogg Vorbis SOFTWARE CODEC SOURCE CODE.  *
+ * THIS FILE IS PART OF THE OggVorbis 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 GNU LESSER/LIBRARY PUBLIC LICENSE, WHICH IS INCLUDED WITH    *
+ * THIS SOURCE. PLEASE READ THESE TERMS BEFORE DISTRIBUTING.        *
  *                                                                  *
- * THE OggSQUISH SOURCE CODE IS (C) COPYRIGHT 1994-1999             *
- * by 1999 Monty <monty at xiph.org> and The XIPHOPHORUS Company       *
- * http://www.xiph.org/                                             *
+ * THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2001             *
+ * by the XIPHOPHORUS Company, http://www.xiph.org/                 *
  *                                                                  *
  ********************************************************************
 
@@ -20,78 +19,766 @@
 #include "codebook.h"
 
 static long _vq_quantlist_res0_160_1024_9[] = {
-	56,
-	57,
-	58,
-	59,
-	61,
-	64,
-	67,
-	70,
-	73,
-	76,
-	80,
-	84,
-	87,
-	91,
-	95,
-	99,
-	103,
-	107,
+	280,
+	279,
+	281,
+	278,
+	282,
+	277,
+	283,
+	276,
+	284,
+	275,
+	285,
+	274,
+	286,
+	273,
+	287,
+	272,
+	288,
+	271,
+	289,
+	270,
+	290,
+	269,
+	291,
+	268,
+	292,
+	267,
+	293,
+	266,
+	294,
+	265,
+	295,
+	264,
+	296,
+	263,
+	297,
+	262,
+	298,
+	261,
+	299,
+	260,
+	300,
+	259,
+	301,
+	258,
+	302,
+	257,
+	303,
+	256,
+	304,
+	255,
+	305,
+	254,
+	306,
+	253,
+	307,
+	252,
+	308,
+	251,
+	309,
+	250,
+	310,
+	249,
+	311,
+	248,
+	312,
+	247,
+	313,
+	246,
+	314,
+	245,
+	315,
+	244,
+	316,
+	243,
+	317,
+	242,
+	318,
+	241,
+	319,
+	240,
+	320,
+	239,
+	321,
+	238,
+	322,
+	237,
+	323,
+	236,
+	324,
+	235,
+	325,
+	234,
+	326,
+	233,
+	327,
+	232,
+	328,
+	231,
+	329,
+	230,
+	330,
+	229,
+	331,
+	228,
+	332,
+	227,
+	333,
+	226,
+	334,
+	225,
+	335,
+	224,
+	336,
+	223,
+	337,
+	222,
+	338,
+	221,
+	339,
+	220,
+	340,
+	219,
+	341,
+	218,
+	342,
+	217,
+	343,
+	216,
+	344,
+	215,
+	345,
+	214,
+	346,
+	213,
+	347,
+	212,
+	348,
+	211,
+	349,
+	210,
+	350,
+	209,
+	351,
+	208,
+	352,
+	207,
+	353,
+	206,
+	354,
+	205,
+	355,
+	204,
+	356,
+	203,
+	357,
+	202,
+	358,
+	201,
+	359,
+	200,
+	360,
+	199,
+	361,
+	198,
+	362,
+	197,
+	363,
+	196,
+	364,
+	195,
+	365,
+	194,
+	366,
+	193,
+	367,
+	192,
+	368,
+	191,
+	369,
+	190,
+	370,
+	189,
+	371,
+	188,
+	372,
+	187,
+	373,
+	186,
+	374,
+	185,
+	375,
+	184,
+	376,
+	183,
+	377,
+	182,
+	378,
+	181,
+	379,
+	180,
+	380,
+	179,
+	381,
+	178,
+	382,
+	177,
+	383,
+	176,
+	384,
+	175,
+	385,
+	174,
+	386,
+	173,
+	387,
+	172,
+	388,
+	171,
+	389,
+	170,
+	390,
+	169,
+	391,
+	168,
+	392,
+	167,
+	393,
+	166,
+	394,
+	165,
+	395,
+	164,
+	396,
+	163,
+	397,
+	162,
+	398,
+	161,
+	399,
+	160,
+	400,
+	159,
+	401,
+	158,
+	402,
+	157,
+	403,
+	156,
+	404,
+	155,
+	405,
+	154,
+	406,
+	153,
+	407,
+	152,
+	408,
+	151,
+	409,
+	150,
+	410,
+	149,
+	411,
+	148,
+	412,
+	147,
+	413,
+	146,
+	414,
+	145,
+	415,
+	144,
+	416,
+	143,
+	417,
+	142,
+	418,
+	141,
+	419,
+	140,
+	420,
+	139,
+	421,
+	138,
+	422,
+	137,
+	423,
+	136,
+	424,
+	135,
+	425,
+	134,
+	426,
+	133,
+	427,
+	132,
+	428,
+	131,
+	429,
+	130,
+	430,
+	129,
+	431,
+	128,
+	432,
+	127,
+	433,
+	126,
+	434,
+	125,
+	435,
+	124,
+	436,
+	123,
+	437,
+	122,
+	438,
+	121,
+	439,
+	120,
+	440,
+	119,
+	441,
+	118,
+	442,
+	117,
+	443,
+	116,
+	444,
+	115,
+	445,
+	114,
+	446,
+	113,
+	447,
         112,
+	448,
+	111,
+	449,
+	110,
+	450,
+	109,
+	451,
+	108,
+	452,
+	107,
+	453,
+	106,
+	454,
+	105,
+	455,
+	104,
+	456,
+	103,
+	457,
+	102,
+	458,
+	101,
+	459,
+	100,
+	460,
+	99,
+	461,
+	98,
+	462,
+	97,
+	463,
+	96,
+	464,
+	95,
+	465,
+	94,
+	466,
+	93,
+	467,
+	92,
+	468,
+	91,
+	469,
+	90,
+	470,
+	89,
+	471,
+	88,
+	472,
+	87,
+	473,
+	86,
+	474,
+	85,
+	475,
+	84,
+	476,
+	83,
+	477,
+	82,
+	478,
+	81,
+	479,
+	80,
+	480,
+	79,
+	481,
+	78,
+	482,
+	77,
+	483,
+	76,
+	484,
+	75,
+	485,
+	74,
+	486,
+	73,
+	487,
+	72,
+	488,
+	71,
+	489,
+	70,
+	490,
+	69,
+	491,
+	68,
+	492,
+	67,
+	493,
+	66,
+	494,
+	65,
+	495,
+	64,
+	496,
+	63,
+	497,
+	62,
+	498,
+	61,
+	499,
+	60,
+	500,
+	59,
+	501,
+	58,
+	502,
+	57,
+	503,
+	56,
+	504,
         55,
+	505,
         54,
+	506,
         53,
+	507,
+	52,
+	508,
         51,
+	509,
+	50,
+	510,
+	49,
+	511,
         48,
+	512,
+	47,
+	513,
+	46,
+	514,
         45,
+	515,
+	44,
+	516,
+	43,
+	517,
         42,
+	518,
+	41,
+	519,
+	40,
+	520,
         39,
+	521,
+	38,
+	522,
+	37,
+	523,
         36,
+	524,
+	35,
+	525,
+	34,
+	526,
+	33,
+	527,
         32,
+	528,
+	31,
+	529,
+	30,
+	530,
+	29,
+	531,
         28,
+	532,
+	27,
+	533,
+	26,
+	534,
         25,
+	535,
+	24,
+	536,
+	23,
+	537,
+	22,
+	538,
         21,
+	539,
+	20,
+	540,
+	19,
+	541,
+	18,
+	542,
         17,
+	543,
+	16,
+	544,
+	15,
+	545,
+	14,
+	546,
         13,
+	547,
+	12,
+	548,
+	11,
+	549,
+	10,
+	550,
         9,
+	551,
+	8,
+	552,
+	7,
+	553,
+	6,
+	554,
         5,
+	555,
+	4,
+	556,
+	3,
+	557,
+	2,
+	558,
+	1,
+	559,
         0,
+	560,
 };
 
 static long _vq_lengthlist_res0_160_1024_9[] = {
-	 2, 3, 4, 4, 4, 5, 6, 6, 7, 8, 9,10,11,12,13,13,
-	16,16,18, 3, 4, 4, 5, 5, 6, 6, 7, 8, 9,10,11,12,
-	13,14,16,17,18,
+	 3, 4, 4, 4, 4, 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, 7, 7,
+	 7, 7, 7, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8,
+	 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 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,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,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,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,14,13,14,13,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,14,14,14,14,15,14,15,14,14,15,
+	15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,
+	16,15,15,16,15,15,15,16,16,16,16,15,16,16,16,16,
+	16,16,16,16,16,16,16,16,16,16,16,16,17,16,16,16,
+	16,16,16,16,17,16,16,16,16,17,16,17,17,16,17,17,
+	17,17,17,17,16,16,16,17,17,17,17,17,17,17,16,17,
+	18,17,18,17,17,18,17,17,17,17,17,17,17,18,18,17,
+	18,17,17,19,18,17,17,17,18,17,18,18,18,19,18,18,
+	19,18,18,18,18,18,18,18,18,18,17,18,18,19,19,18,
+	19,18,18,18,19,19,19,18,18,20,18,19,18,20,18,20,
+	19,19,18,18,20,18,19,20,20,19,19,18,19,19,19,19,
+	20,19,20,18,19,20,19,21,19,19,20,21,20,20,20,19,
+	19,19,20,20,19,20,20,21,21,20,20,21,21,21,20,19,
+	20,21,21,21,21,21,19,20,19,20,20,21,21,21,21,21,
+	21,19,20,21,21,20,21,21,21,21,21,21,19,21,20,21,
+	21,21,21,21,20,20,21,21,21,21,21,21,21,21,21,21,
+	21,21,21,21,21,21,21,20,21,21,21,21,21,20,21,21,
+	21,21,21,20,21,21,21,20,21,21,21,21,21,21,21,21,
+	20,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,
+	21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,
+	21,21,21,21,21,20,21,21,21,21,21,21,21,21,21,21,
+	21,21,21,21,21,21,21,21,21,21,21,21,20,21,21,21,
+	21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,
+	21,
 };
 
 static float _vq_quantthresh_res0_160_1024_9[] = {
-	-53.5, -49, -45, -41, -37, -33, -29.5, -26, 
-	-22, -18.5, -15.5, -12.5, -9.5, -6.5, -4, -2.5, 
-	-1.5, -0.5, 0.5, 1.5, 2.5, 4, 6.5, 9.5, 
-	12.5, 15.5, 18.5, 22, 26, 29.5, 33, 37, 
-	41, 45, 49, 53.5, 
+	-279.5, -278.5, -277.5, -276.5, -275.5, -274.5, -273.5, -272.5, 
+	-271.5, -270.5, -269.5, -268.5, -267.5, -266.5, -265.5, -264.5, 
+	-263.5, -262.5, -261.5, -260.5, -259.5, -258.5, -257.5, -256.5, 
+	-255.5, -254.5, -253.5, -252.5, -251.5, -250.5, -249.5, -248.5, 
+	-247.5, -246.5, -245.5, -244.5, -243.5, -242.5, -241.5, -240.5, 
+	-239.5, -238.5, -237.5, -236.5, -235.5, -234.5, -233.5, -232.5, 
+	-231.5, -230.5, -229.5, -228.5, -227.5, -226.5, -225.5, -224.5, 
+	-223.5, -222.5, -221.5, -220.5, -219.5, -218.5, -217.5, -216.5, 
+	-215.5, -214.5, -213.5, -212.5, -211.5, -210.5, -209.5, -208.5, 
+	-207.5, -206.5, -205.5, -204.5, -203.5, -202.5, -201.5, -200.5, 
+	-199.5, -198.5, -197.5, -196.5, -195.5, -194.5, -193.5, -192.5, 
+	-191.5, -190.5, -189.5, -188.5, -187.5, -186.5, -185.5, -184.5, 
+	-183.5, -182.5, -181.5, -180.5, -179.5, -178.5, -177.5, -176.5, 
+	-175.5, -174.5, -173.5, -172.5, -171.5, -170.5, -169.5, -168.5, 
+	-167.5, -166.5, -165.5, -164.5, -163.5, -162.5, -161.5, -160.5, 
+	-159.5, -158.5, -157.5, -156.5, -155.5, -154.5, -153.5, -152.5, 
+	-151.5, -150.5, -149.5, -148.5, -147.5, -146.5, -145.5, -144.5, 
+	-143.5, -142.5, -141.5, -140.5, -139.5, -138.5, -137.5, -136.5, 
+	-135.5, -134.5, -133.5, -132.5, -131.5, -130.5, -129.5, -128.5, 
+	-127.5, -126.5, -125.5, -124.5, -123.5, -122.5, -121.5, -120.5, 
+	-119.5, -118.5, -117.5, -116.5, -115.5, -114.5, -113.5, -112.5, 
+	-111.5, -110.5, -109.5, -108.5, -107.5, -106.5, -105.5, -104.5, 
+	-103.5, -102.5, -101.5, -100.5, -99.5, -98.5, -97.5, -96.5, 
+	-95.5, -94.5, -93.5, -92.5, -91.5, -90.5, -89.5, -88.5, 
+	-87.5, -86.5, -85.5, -84.5, -83.5, -82.5, -81.5, -80.5, 
+	-79.5, -78.5, -77.5, -76.5, -75.5, -74.5, -73.5, -72.5, 
+	-71.5, -70.5, -69.5, -68.5, -67.5, -66.5, -65.5, -64.5, 
+	-63.5, -62.5, -61.5, -60.5, -59.5, -58.5, -57.5, -56.5, 
+	-55.5, -54.5, -53.5, -52.5, -51.5, -50.5, -49.5, -48.5, 
+	-47.5, -46.5, -45.5, -44.5, -43.5, -42.5, -41.5, -40.5, 
+	-39.5, -38.5, -37.5, -36.5, -35.5, -34.5, -33.5, -32.5, 
+	-31.5, -30.5, -29.5, -28.5, -27.5, -26.5, -25.5, -24.5, 
+	-23.5, -22.5, -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, 22.5, 23.5, 
+	24.5, 25.5, 26.5, 27.5, 28.5, 29.5, 30.5, 31.5, 
+	32.5, 33.5, 34.5, 35.5, 36.5, 37.5, 38.5, 39.5, 
+	40.5, 41.5, 42.5, 43.5, 44.5, 45.5, 46.5, 47.5, 
+	48.5, 49.5, 50.5, 51.5, 52.5, 53.5, 54.5, 55.5, 
+	56.5, 57.5, 58.5, 59.5, 60.5, 61.5, 62.5, 63.5, 
+	64.5, 65.5, 66.5, 67.5, 68.5, 69.5, 70.5, 71.5, 
+	72.5, 73.5, 74.5, 75.5, 76.5, 77.5, 78.5, 79.5, 
+	80.5, 81.5, 82.5, 83.5, 84.5, 85.5, 86.5, 87.5, 
+	88.5, 89.5, 90.5, 91.5, 92.5, 93.5, 94.5, 95.5, 
+	96.5, 97.5, 98.5, 99.5, 100.5, 101.5, 102.5, 103.5, 
+	104.5, 105.5, 106.5, 107.5, 108.5, 109.5, 110.5, 111.5, 
+	112.5, 113.5, 114.5, 115.5, 116.5, 117.5, 118.5, 119.5, 
+	120.5, 121.5, 122.5, 123.5, 124.5, 125.5, 126.5, 127.5, 
+	128.5, 129.5, 130.5, 131.5, 132.5, 133.5, 134.5, 135.5, 
+	136.5, 137.5, 138.5, 139.5, 140.5, 141.5, 142.5, 143.5, 
+	144.5, 145.5, 146.5, 147.5, 148.5, 149.5, 150.5, 151.5, 
+	152.5, 153.5, 154.5, 155.5, 156.5, 157.5, 158.5, 159.5, 
+	160.5, 161.5, 162.5, 163.5, 164.5, 165.5, 166.5, 167.5, 
+	168.5, 169.5, 170.5, 171.5, 172.5, 173.5, 174.5, 175.5, 
+	176.5, 177.5, 178.5, 179.5, 180.5, 181.5, 182.5, 183.5, 
+	184.5, 185.5, 186.5, 187.5, 188.5, 189.5, 190.5, 191.5, 
+	192.5, 193.5, 194.5, 195.5, 196.5, 197.5, 198.5, 199.5, 
+	200.5, 201.5, 202.5, 203.5, 204.5, 205.5, 206.5, 207.5, 
+	208.5, 209.5, 210.5, 211.5, 212.5, 213.5, 214.5, 215.5, 
+	216.5, 217.5, 218.5, 219.5, 220.5, 221.5, 222.5, 223.5, 
+	224.5, 225.5, 226.5, 227.5, 228.5, 229.5, 230.5, 231.5, 
+	232.5, 233.5, 234.5, 235.5, 236.5, 237.5, 238.5, 239.5, 
+	240.5, 241.5, 242.5, 243.5, 244.5, 245.5, 246.5, 247.5, 
+	248.5, 249.5, 250.5, 251.5, 252.5, 253.5, 254.5, 255.5, 
+	256.5, 257.5, 258.5, 259.5, 260.5, 261.5, 262.5, 263.5, 
+	264.5, 265.5, 266.5, 267.5, 268.5, 269.5, 270.5, 271.5, 
+	272.5, 273.5, 274.5, 275.5, 276.5, 277.5, 278.5, 279.5, 
 };
 
 static long _vq_quantmap_res0_160_1024_9[] = {
-	   36,   35,   34,   33,   32,   31,   30,   29,
-	   28,   27,   26,   25,   24,   23,   22,   21,
-	   20,   19,    0,    1,    2,    3,    4,    5,
-	    6,    7,    8,    9,   10,   11,   12,   13,
-	   14,   15,   16,   17,   18,
+	  559,  557,  555,  553,  551,  549,  547,  545,
+	  543,  541,  539,  537,  535,  533,  531,  529,
+	  527,  525,  523,  521,  519,  517,  515,  513,
+	  511,  509,  507,  505,  503,  501,  499,  497,
+	  495,  493,  491,  489,  487,  485,  483,  481,
+	  479,  477,  475,  473,  471,  469,  467,  465,
+	  463,  461,  459,  457,  455,  453,  451,  449,
+	  447,  445,  443,  441,  439,  437,  435,  433,
+	  431,  429,  427,  425,  423,  421,  419,  417,
+	  415,  413,  411,  409,  407,  405,  403,  401,
+	  399,  397,  395,  393,  391,  389,  387,  385,
+	  383,  381,  379,  377,  375,  373,  371,  369,
+	  367,  365,  363,  361,  359,  357,  355,  353,
+	  351,  349,  347,  345,  343,  341,  339,  337,
+	  335,  333,  331,  329,  327,  325,  323,  321,
+	  319,  317,  315,  313,  311,  309,  307,  305,
+	  303,  301,  299,  297,  295,  293,  291,  289,
+	  287,  285,  283,  281,  279,  277,  275,  273,
+	  271,  269,  267,  265,  263,  261,  259,  257,
+	  255,  253,  251,  249,  247,  245,  243,  241,
+	  239,  237,  235,  233,  231,  229,  227,  225,
+	  223,  221,  219,  217,  215,  213,  211,  209,
+	  207,  205,  203,  201,  199,  197,  195,  193,
+	  191,  189,  187,  185,  183,  181,  179,  177,
+	  175,  173,  171,  169,  167,  165,  163,  161,
+	  159,  157,  155,  153,  151,  149,  147,  145,
+	  143,  141,  139,  137,  135,  133,  131,  129,
+	  127,  125,  123,  121,  119,  117,  115,  113,
+	  111,  109,  107,  105,  103,  101,   99,   97,
+	   95,   93,   91,   89,   87,   85,   83,   81,
+	   79,   77,   75,   73,   71,   69,   67,   65,
+	   63,   61,   59,   57,   55,   53,   51,   49,
+	   47,   45,   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,   46,
+	   48,   50,   52,   54,   56,   58,   60,   62,
+	   64,   66,   68,   70,   72,   74,   76,   78,
+	   80,   82,   84,   86,   88,   90,   92,   94,
+	   96,   98,  100,  102,  104,  106,  108,  110,
+	  112,  114,  116,  118,  120,  122,  124,  126,
+	  128,  130,  132,  134,  136,  138,  140,  142,
+	  144,  146,  148,  150,  152,  154,  156,  158,
+	  160,  162,  164,  166,  168,  170,  172,  174,
+	  176,  178,  180,  182,  184,  186,  188,  190,
+	  192,  194,  196,  198,  200,  202,  204,  206,
+	  208,  210,  212,  214,  216,  218,  220,  222,
+	  224,  226,  228,  230,  232,  234,  236,  238,
+	  240,  242,  244,  246,  248,  250,  252,  254,
+	  256,  258,  260,  262,  264,  266,  268,  270,
+	  272,  274,  276,  278,  280,  282,  284,  286,
+	  288,  290,  292,  294,  296,  298,  300,  302,
+	  304,  306,  308,  310,  312,  314,  316,  318,
+	  320,  322,  324,  326,  328,  330,  332,  334,
+	  336,  338,  340,  342,  344,  346,  348,  350,
+	  352,  354,  356,  358,  360,  362,  364,  366,
+	  368,  370,  372,  374,  376,  378,  380,  382,
+	  384,  386,  388,  390,  392,  394,  396,  398,
+	  400,  402,  404,  406,  408,  410,  412,  414,
+	  416,  418,  420,  422,  424,  426,  428,  430,
+	  432,  434,  436,  438,  440,  442,  444,  446,
+	  448,  450,  452,  454,  456,  458,  460,  462,
+	  464,  466,  468,  470,  472,  474,  476,  478,
+	  480,  482,  484,  486,  488,  490,  492,  494,
+	  496,  498,  500,  502,  504,  506,  508,  510,
+	  512,  514,  516,  518,  520,  522,  524,  526,
+	  528,  530,  532,  534,  536,  538,  540,  542,
+	  544,  546,  548,  550,  552,  554,  556,  558,
+	  560,
 };
 
 static encode_aux_threshmatch _vq_auxt_res0_160_1024_9 = {
         _vq_quantthresh_res0_160_1024_9,
         _vq_quantmap_res0_160_1024_9,
-	37,
-	37
+	561,
+	561
 };
 
 static static_codebook _vq_book_res0_160_1024_9 = {
-	1, 37,
+	1, 561,
         _vq_lengthlist_res0_160_1024_9,
-	1, -524550144, 1611661312, 7, 0,
+	1, -518946816, 1611661312, 10, 0,
         _vq_quantlist_res0_160_1024_9,
         NULL,
         &_vq_auxt_res0_160_1024_9,

1.3       +7 -7      vorbis/lib/books/res0_160_1024aux.vqh

Index: res0_160_1024aux.vqh
===================================================================
RCS file: /usr/local/cvsroot/vorbis/lib/books/res0_160_1024aux.vqh,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- res0_160_1024aux.vqh	2000/11/17 11:47:21	1.2
+++ res0_160_1024aux.vqh	2001/01/22 01:38:31	1.3
@@ -20,13 +20,13 @@
 #include "codebook.h"
 
 static long _huff_lengthlist_res0_160_1024aux[] = {
-	 2, 7,12,11,15,11,14,11,12,15, 5, 4, 7, 7, 9, 9,
-	10,10,11,13,10, 6, 5, 6, 6, 9, 8,10,12,14, 9, 6,
-	 6, 6, 6, 7, 8, 8,10,13,13, 8, 6, 6, 5, 7, 5, 7,
-	10,14, 9, 8, 8, 7, 7, 7, 7, 8, 9,13,13, 9, 8, 7,
-	 5, 7, 5, 6, 8,13,10, 9, 9, 7, 7, 7, 6, 5, 7,10,
-	10,10,11, 9, 9, 8, 7, 6, 6, 9,11,10,12,10,10, 9,
-	 8, 7, 5, 7,
+	 2, 7,12,11,13,10,13,12,15,18, 5, 4, 7, 7, 9, 7,
+	 9,11,12,15,10, 6, 5, 6, 6, 8, 8,12,14,17, 9, 6,
+	 5, 5, 5, 5, 7, 9,12,16,13, 8, 6, 5, 5, 6, 7,12,
+	14,18, 9, 7, 7, 5, 6, 5, 7, 8,11,16,13, 9, 8, 7,
+	 6, 7, 6, 9,11,16,10, 9,10, 8, 9, 7, 7, 7, 9,13,
+	10,10,12,10,11, 8, 7, 7, 7,11,12,12,13,11,12,10,
+	 7, 6, 6,10,
 };
 
 static static_codebook _huff_book_res0_160_1024aux = {

1.3       +13 -14    vorbis/lib/books/res0_160_128_1.vqh

Index: res0_160_128_1.vqh
===================================================================
RCS file: /usr/local/cvsroot/vorbis/lib/books/res0_160_128_1.vqh,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- res0_160_128_1.vqh	2000/11/17 11:47:21	1.2
+++ res0_160_128_1.vqh	2001/01/22 01:38:31	1.3
@@ -1,13 +1,12 @@
 /********************************************************************
  *                                                                  *
- * THIS FILE IS PART OF THE Ogg Vorbis SOFTWARE CODEC SOURCE CODE.  *
+ * THIS FILE IS PART OF THE OggVorbis 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 GNU LESSER/LIBRARY PUBLIC LICENSE, WHICH IS INCLUDED WITH    *
+ * THIS SOURCE. PLEASE READ THESE TERMS BEFORE DISTRIBUTING.        *
  *                                                                  *
- * THE OggSQUISH SOURCE CODE IS (C) COPYRIGHT 1994-1999             *
- * by 1999 Monty <monty at xiph.org> and The XIPHOPHORUS Company       *
- * http://www.xiph.org/                                             *
+ * THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2001             *
+ * by the XIPHOPHORUS Company, http://www.xiph.org/                 *
  *                                                                  *
  ********************************************************************
 
@@ -21,17 +20,17 @@
 
 static long _vq_quantlist_res0_160_128_1[] = {
         1,
-	2,
         0,
+	2,
 };
 
 static long _vq_lengthlist_res0_160_128_1[] = {
-	 2, 4, 4, 4, 6, 6, 4, 6, 6, 5, 7, 6, 6, 8, 8, 6,
-	 8, 8, 5, 6, 7, 6, 8, 8, 6, 8, 8, 5, 7, 7, 7, 9,
-	 9, 7, 8, 8, 7, 9, 9, 8,10,11, 9,10,10, 7, 8, 9,
-	 8,11,10, 9,10,10, 5, 7, 7, 7, 8, 8, 7, 9, 9, 7,
-	 9, 8, 9,10,10, 9, 9,10, 7, 9, 9, 9,10,10, 9,10,
-	10,
+	 3, 4, 4, 5, 6, 6, 4, 6, 6, 5, 6, 6, 6, 8, 8, 6,
+	 8, 8, 5, 6, 6, 6, 8, 7, 6, 8, 8, 5, 6, 6, 6, 8,
+	 8, 6, 8, 8, 6, 8, 8, 8, 9,10, 8,10, 9, 6, 8, 8,
+	 8,10, 8, 8, 9,10, 5, 6, 6, 6, 8, 8, 6, 8, 8, 6,
+	 8, 8, 8,10, 9, 8, 8,10, 6, 8, 8, 8, 9,10, 8,10,
+	 9,
 };
 
 static float _vq_quantthresh_res0_160_128_1[] = {
@@ -39,7 +38,7 @@
 };
 
 static long _vq_quantmap_res0_160_128_1[] = {
-	    2,    0,    1,
+	    1,    0,    2,
 };
 
 static encode_aux_threshmatch _vq_auxt_res0_160_128_1 = {

1.3       +165 -53   vorbis/lib/books/res0_160_128_2.vqh

Index: res0_160_128_2.vqh
===================================================================
RCS file: /usr/local/cvsroot/vorbis/lib/books/res0_160_128_2.vqh,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- res0_160_128_2.vqh	2000/11/17 11:47:21	1.2
+++ res0_160_128_2.vqh	2001/01/22 01:38:31	1.3
@@ -1,13 +1,12 @@
 /********************************************************************
  *                                                                  *
- * THIS FILE IS PART OF THE Ogg Vorbis SOFTWARE CODEC SOURCE CODE.  *
+ * THIS FILE IS PART OF THE OggVorbis 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 GNU LESSER/LIBRARY PUBLIC LICENSE, WHICH IS INCLUDED WITH    *
+ * THIS SOURCE. PLEASE READ THESE TERMS BEFORE DISTRIBUTING.        *
  *                                                                  *
- * THE OggSQUISH SOURCE CODE IS (C) COPYRIGHT 1994-1999             *
- * by 1999 Monty <monty at xiph.org> and The XIPHOPHORUS Company       *
- * http://www.xiph.org/                                             *
+ * THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2001             *
+ * by the XIPHOPHORUS Company, http://www.xiph.org/                 *
  *                                                                  *
  ********************************************************************
 
@@ -20,75 +19,188 @@
 #include "codebook.h"
 
 static long _vq_quantlist_res0_160_128_2[] = {
-	2,
         3,
+	2,
         4,
         1,
+	5,
         0,
+	6,
 };
 
 static long _vq_lengthlist_res0_160_128_2[] = {
-	 3, 5, 7, 5, 6, 5, 6, 8, 6, 8, 7, 9,12, 9,11, 5,
-	 6, 8, 6, 8, 7, 9,11, 9,11, 5, 6, 9, 6, 9, 6, 8,
-	10, 8,10, 9,10,13,10,13, 7, 8,10, 8,10, 9,10,12,
-	11,13, 8, 9,13, 9,13, 9,11,14,11,13,12,13,17,13,
-	16, 9,11,13,11,13,12,14,16,13,15, 5, 6, 9, 7, 9,
-	 6, 8,10, 8,10, 9,10,13,10,13, 7, 8,10, 8,10, 9,
-	10,13,10,12, 8, 9,12, 9,13, 9,11,13,10,13,12,13,
-	15,13,15, 9,11,15,10,13,13,13,16,13,15, 6, 7, 9,
-	 7, 9, 7, 8,11, 8,10, 9,11,14,11,14, 7, 8,10, 8,
-	10, 9,10,13,10,13, 7, 8,11, 8,10, 8, 9,11, 9,12,
-	11,11,13,12,15, 8, 9,12, 9,12,11,12,14,12,15,10,
-	11,13,11,13,10,11,14,12,14,13,13,16,15,17,11,12,
-	15,12,15,13,14,15,15,16, 7, 8,10, 8,11, 8, 9,12,
-	 9,11,11,12,15,11,13, 8, 9,12, 9,12,11,11,15,12,
-	14,10,11,13,11,14,11,12,16,12,14,14,14,16,14,16,
-	11,12,14,12,15,13,15,17,15,17, 8,10,12,10,12,10,
-	11,13,11,14,13,14,17,13,17,10,11,13,11,13,12,14,
-	14,14,15,10,11,14,11,14,11,12,16,12,15,14,14,17,
-	15,17,11,12,14,12,14,14,15,17,14,17,12,13,16,14,
-	16,14,14,17,14,17,16,16,17,17,17,13,14,17,15,16,
-	17,17,17,16,17,10,11,15,11,15,11,12,14,12,14,14,
-	17,17,15,16,11,12,15,12,15,15,15,17,15,16,13,14,
-	15,14,15,13,15,17,15,16,17,17,17,17,17,14,15,17,
-	14,17,15,17,17,16,17, 6, 7, 9, 7, 9, 7, 8,10, 8,
-	10, 9,10,13,11,13, 7, 8,11, 8,11, 9,10,13,11,13,
-	 7, 8,10, 8,10, 8, 9,12, 9,12,11,12,14,12,14, 8,
-	 9,11, 9,12,11,11,14,12,15,10,11,13,11,13,11,12,
-	15,12,15,13,14,16,14,17,10,11,15,12,15,13,13,15,
-	14,16, 7, 8,10, 8,10, 8, 9,12, 9,12,11,12,14,12,
-	14, 8, 9,12, 9,12,11,12,14,11,14, 9,11,13,11,14,
-	11,12,14,12,14,13,14,16,14,17,10,12,15,12,14,13,
-	15,17,14,17, 9,10,13,10,13,10,11,14,11,13,13,13,
-	15,13,15,10,11,14,11,14,13,13,16,13,15,10,11,15,
-	11,14,11,12,15,13,15,14,15,16,15,17,11,12,14,12,
-	15,14,14,17,15,17,12,14,16,13,15,14,14,16,15,17,
-	17,17,17,16,17,14,14,17,16,16,15,17,17,15,17,10,
-	11,14,11,15,11,12,15,12,15,14,15,17,15,17,11,13,
-	15,12,15,13,16,17,14,17,12,15,15,13,16,15,15,16,
-	15,15,15,17,17,17,17,13,14,17,14,17,15,17,16,15,
-	17,
+	 3, 5, 5, 7, 7,10,10, 5, 7, 7, 9, 8,12,11, 5, 7,
+	 7, 8, 9,12,12, 7, 9, 9,13,13,15,16, 7, 9, 9,12,
+	12,15,16,10,11,12,15,14,16,16,10,12,12,15,15,17,
+	17, 5, 7, 7, 9, 9,12,12, 7, 8, 8,10,10,13,13, 7,
+	 8, 8,10,10,13,14, 9,10,10,14,14,16,16, 9,10,10,
+	14,14,15,17,12,13,14,17,17,17,17,12,13,13,15,17,
+	17,16, 5, 7, 7, 8, 9,12,11, 7, 8, 8,10,10,13,13,
+	 7, 8, 8,10,10,14,12, 9,11,10,14,13,16,17, 9,11,
+	10,15,13,15,17,12,14,13,17,17,17,15,12,13,13,17,
+	17,17,17, 7, 9, 9,13,13,15,14, 9,10,10,14,14,16,
+	15, 9,10,10,14,14,16,17,12,14,16,16,15,17,17,13,
+	14,14,15,17,17,17,14,15,16,17,17,17,17,14,16,16,
+	16,17,17,17, 7, 9, 9,13,13,14,15, 9,10,10,13,14,
+	16,15, 9,10,10,15,14,17,15,13,14,13,17,16,16,17,
+	13,14,14,17,15,17,17,15,17,17,17,15,17,17,16,17,
+	16,16,17,17,17,10,13,13,15,14,17,16,12,14,13,17,
+	15,17,16,12,14,14,16,17,17,17,15,15,16,16,17,17,
+	17,14,16,17,17,17,17,17,17,17,17,17,17,17,17,17,
+	16,16,17,17,16,17,10,12,13,15,15,17,17,12,15,13,
+	17,17,17,17,13,15,14,16,16,17,16,15,16,14,17,16,
+	17,17,14,14,16,17,17,17,17,17,17,17,17,17,17,17,
+	17,17,17,17,16,17,17, 5, 7, 7, 9, 9,12,12, 7, 8,
+	 8,11,10,14,15, 7, 8, 8,10,11,13,13, 9,10,11,15,
+	16,16,17, 9,10,11,14,17,17,17,12,14,15,15,15,17,
+	17,12,14,14,15,17,17,17, 7, 9, 8,10,10,14,13, 8,
+	10,10,11,12,17,15, 8,10,10,12,11,14,15,10,12,12,
+	14,15,17,17,11,12,12,16,15,17,16,13,15,15,17,17,
+	17,17,14,16,17,17,17,17,17, 7, 8, 9,11,10,13,13,
+	 8,10,10,12,12,15,14, 8,10,10,12,12,14,14,11,12,
+	11,17,14,17,17,11,12,13,14,16,17,16,14,16,15,17,
+	17,16,17,15,15,15,17,15,17,17, 9,11,11,14,15,17,
+	17,10,12,12,16,17,15,15,11,13,12,17,15,17,17,14,
+	15,16,16,17,17,16,15,15,15,17,16,17,17,16,16,17,
+	17,17,17,17,17,17,17,17,17,17,17, 9,11,11,14,14,
+	16,17,10,13,12,17,14,16,15,11,13,12,15,15,15,17,
+	14,15,16,17,15,17,17,14,16,14,17,17,17,16,15,17,
+	16,17,16,17,17,17,17,16,17,17,16,17,13,14,14,17,
+	17,17,16,14,13,15,16,16,17,17,13,16,15,17,17,17,
+	17,16,17,17,15,17,17,17,17,17,17,17,17,17,17,17,
+	17,16,16,17,17,17,17,17,17,17,17,17,17,12,13,15,
+	17,17,17,17,13,14,15,16,16,17,17,15,16,15,17,17,
+	17,17,17,17,15,17,17,17,17,15,17,17,17,17,17,17,
+	17,17,17,17,17,17,17,17,17,17,17,17,17,17, 5, 7,
+	 7, 9, 9,12,12, 7, 9, 8,10,10,13,14, 7, 8, 8,10,
+	10,13,13, 9,10,10,15,14,16,15, 9,11,10,14,15,16,
+	17,12,13,14,15,16,17,17,12,15,14,15,16,17,17, 7,
+	 8, 8,10,10,15,14, 8,10,10,12,11,14,14, 8,10,10,
+	11,12,14,15,11,12,11,16,15,17,17,11,11,13,14,15,
+	17,17,14,17,16,16,17,17,17,14,16,14,16,17,17,17,
+	 7, 8, 8,10,10,14,13, 8,10,10,11,12,14,14, 8,10,
+	10,12,12,14,14,10,11,12,14,14,16,17,10,12,12,17,
+	14,17,17,15,15,16,17,17,16,17,14,15,15,17,17,17,
+	17, 9,11,10,14,14,17,17,10,12,12,17,14,17,17,10,
+	12,12,14,17,15,17,15,14,15,17,17,17,17,14,16,15,
+	17,17,17,17,16,16,17,17,17,16,17,17,17,17,17,17,
+	16,17, 9,11,11,15,13,15,16,11,12,12,14,17,16,17,
+	11,12,12,16,17,17,17,15,16,16,16,15,16,17,14,15,
+	15,17,15,17,17,17,15,17,16,16,17,16,17,17,17,17,
+	17,17,17,13,15,14,15,17,17,17,15,15,15,17,17,17,
+	17,14,15,17,17,17,16,17,17,17,17,17,17,17,17,17,
+	16,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,
+	17,17,17,17,13,14,17,16,17,17,17,14,16,15,17,17,
+	17,16,15,16,14,17,17,17,17,16,17,17,17,15,17,17,
+	17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,
+	17,17,17,17,17, 7, 9, 9,13,13,15,17, 9,11,11,14,
+	14,15,16, 9,11,11,15,14,16,17,14,15,14,17,17,16,
+	17,13,17,15,17,17,17,17,17,16,16,16,17,17,17,16,
+	17,15,17,17,17,17, 9,11,11,14,14,17,17,11,12,13,
+	15,17,17,16,11,13,12,17,15,16,17,16,16,17,17,17,
+	17,17,16,15,15,17,16,17,17,16,17,17,17,17,17,17,
+	17,17,17,15,17,17,17, 9,11,11,15,16,17,16,11,12,
+	12,16,16,16,17,11,12,13,17,16,16,17,14,17,17,17,
+	17,17,17,17,16,16,16,17,17,17,17,17,15,17,17,17,
+	17,17,17,16,17,17,17,17,13,16,14,16,14,17,16,15,
+	15,15,17,15,17,17,16,15,16,17,17,17,17,16,15,16,
+	16,17,17,17,17,17,17,17,17,17,17,17,17,17,16,17,
+	17,17,17,17,17,17,17,17,17,13,17,15,17,16,17,17,
+	14,15,15,17,17,17,17,17,16,16,17,16,17,17,15,16,
+	17,17,15,16,17,16,17,17,17,17,16,17,17,17,17,17,
+	16,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,
+	17,17,17,16,17,17,17,17,16,17,17,17,17,17,17,17,
+	17,17,17,17,17,17,17,17,15,16,17,17,17,17,17,17,
+	17,17,17,17,17,17,16,17,17,17,17,17,17,16,17,17,
+	17,17,16,17,16,17,17,17,17,17,17,17,17,17,17,17,
+	17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,
+	17,17,17,17,17,17,17,17,17,17,17,17, 7, 9, 9,13,
+	14,15,15, 9,11,11,14,15,17,16, 9,11,11,15,15,17,
+	17,13,16,15,16,17,17,17,13,15,15,17,16,17,17,17,
+	17,17,17,17,17,17,17,17,16,17,17,17,17, 9,11,11,
+	14,15,17,16,11,12,12,17,15,17,17,10,13,13,16,15,
+	16,17,15,17,15,16,16,16,17,16,15,16,15,17,17,17,
+	17,17,17,17,17,17,16,17,17,16,17,17,17,17, 9,11,
+	11,14,15,15,17,11,12,12,14,16,17,17,11,12,12,17,
+	15,16,17,14,15,17,17,17,17,16,15,17,16,17,16,17,
+	17,16,17,17,17,17,17,17,16,17,16,17,17,16,17,14,
+	15,15,17,17,17,17,15,16,17,17,16,17,17,14,17,17,
+	17,17,17,17,16,17,17,17,17,17,17,17,17,17,15,17,
+	17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,
+	15,14,14,17,15,16,17,15,17,16,17,17,17,17,15,17,
+	15,17,17,17,17,15,17,17,16,17,17,17,17,17,17,17,
+	16,17,17,16,17,17,17,17,17,17,17,17,17,17,15,17,
+	17,15,16,17,17,17,17,17,17,17,16,17,17,17,17,17,
+	17,16,17,17,17,17,17,16,17,17,17,17,17,17,17,17,
+	17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,
+	17,17,16,17,16,17,17,17,17,17,17,17,17,17,17,17,
+	15,16,17,17,17,17,17,17,17,17,17,17,17,17,17,17,
+	17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,
+	17,17,17,11,13,13,15,16,17,17,13,15,14,17,17,17,
+	17,13,14,14,17,17,17,17,17,17,17,17,17,17,17,15,
+	17,17,17,16,17,16,17,17,17,16,17,17,17,17,17,17,
+	17,17,17,17,12,14,17,15,17,17,17,17,15,15,16,17,
+	17,16,13,17,16,17,17,17,17,16,15,17,17,17,17,17,
+	16,16,17,17,17,17,17,17,17,17,17,17,17,17,17,17,
+	17,17,17,17,17,12,15,15,17,17,17,17,14,17,15,17,
+	17,17,17,14,16,17,17,17,16,17,16,16,16,17,17,17,
+	17,16,17,17,17,17,17,17,17,16,17,17,17,17,17,17,
+	17,17,17,17,17,17,17,17,17,17,17,16,17,17,17,17,
+	16,16,17,17,17,16,17,17,17,17,17,17,15,17,17,17,
+	17,17,17,17,16,17,17,17,17,17,17,17,17,17,17,17,
+	17,17,17,17,17,17,17,16,16,16,17,17,17,17,17,16,
+	16,17,17,17,17,17,17,17,16,17,17,17,17,17,17,17,
+	17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,
+	17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,
+	17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,
+	17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,
+	17,17,17,17,17,17,17,17,17,16,17,17,17,17,17,17,
+	16,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,
+	16,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,
+	17,17,17,17,17,17,17,17,17,17,11,13,13,17,17,17,
+	15,13,16,13,16,15,17,17,13,15,16,17,17,17,17,17,
+	17,17,17,17,17,17,16,16,17,17,17,17,17,17,17,16,
+	17,17,17,17,17,17,17,17,17,17,17,12,14,14,17,16,
+	17,16,16,16,17,17,15,17,17,16,17,15,16,17,17,17,
+	17,17,17,16,17,17,17,17,17,17,16,17,17,17,17,17,
+	17,17,17,17,17,17,16,15,17,17,17,17,12,15,14,17,
+	17,17,17,14,16,14,17,17,16,17,15,16,15,15,16,17,
+	17,17,17,17,17,17,17,17,16,17,16,17,17,17,17,17,
+	16,17,16,17,17,17,17,17,17,17,17,17,17,17,17,17,
+	17,17,17,17,17,17,17,17,17,17,17,17,15,17,17,17,
+	17,17,17,17,16,17,17,17,17,17,17,17,17,17,17,17,
+	17,17,17,17,17,17,17,17,17,17,17,17,17,17,16,17,
+	16,17,17,17,17,17,14,17,17,17,17,17,16,16,17,17,
+	17,17,17,16,17,17,17,17,17,17,17,17,17,17,17,17,
+	17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,
+	17,17,17,17,17,17,17,17,17,17,17,17,17,16,17,17,
+	17,17,17,17,16,17,17,17,17,17,17,17,16,17,17,17,
+	17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,
+	17,17,16,17,17,17,17,17,17,17,17,17,17,16,17,17,
+	17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,
+	17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,
+	16,
 };
 
 static float _vq_quantthresh_res0_160_128_2[] = {
-	-1.5, -0.5, 0.5, 1.5, 
+	-2.5, -1.5, -0.5, 0.5, 1.5, 2.5, 
 };
 
 static long _vq_quantmap_res0_160_128_2[] = {
-	    4,    3,    0,    1,    2,
+	    5,    3,    1,    0,    2,    4,    6,
 };
 
 static encode_aux_threshmatch _vq_auxt_res0_160_128_2 = {
         _vq_quantthresh_res0_160_128_2,
         _vq_quantmap_res0_160_128_2,
-	5,
-	5
+	7,
+	7
 };
 
 static static_codebook _vq_book_res0_160_128_2 = {
-	4, 625,
+	4, 2401,
         _vq_lengthlist_res0_160_128_2,
-	1, -533725184, 1611661312, 3, 0,
+	1, -533200896, 1611661312, 3, 0,
         _vq_quantlist_res0_160_128_2,
         NULL,
         &_vq_auxt_res0_160_128_2,

1.3       +104 -23   vorbis/lib/books/res0_160_128_3.vqh

Index: res0_160_128_3.vqh
===================================================================
RCS file: /usr/local/cvsroot/vorbis/lib/books/res0_160_128_3.vqh,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- res0_160_128_3.vqh	2000/11/17 11:47:21	1.2
+++ res0_160_128_3.vqh	2001/01/22 01:38:31	1.3
@@ -1,13 +1,12 @@
 /********************************************************************
  *                                                                  *
- * THIS FILE IS PART OF THE Ogg Vorbis SOFTWARE CODEC SOURCE CODE.  *
+ * THIS FILE IS PART OF THE OggVorbis 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 GNU LESSER/LIBRARY PUBLIC LICENSE, WHICH IS INCLUDED WITH    *
+ * THIS SOURCE. PLEASE READ THESE TERMS BEFORE DISTRIBUTING.        *
  *                                                                  *
- * THE OggSQUISH SOURCE CODE IS (C) COPYRIGHT 1994-1999             *
- * by 1999 Monty <monty at xiph.org> and The XIPHOPHORUS Company       *
- * http://www.xiph.org/                                             *
+ * THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2001             *
+ * by the XIPHOPHORUS Company, http://www.xiph.org/                 *
  *                                                                  *
  ********************************************************************
 
@@ -20,46 +19,128 @@
 #include "codebook.h"
 
 static long _vq_quantlist_res0_160_128_3[] = {
-	5,
-	6,
-	7,
-	8,
+	15,
+	14,
+	16,
+	13,
+	17,
+	12,
+	18,
+	11,
+	19,
         10,
+	20,
+	9,
+	21,
+	8,
+	22,
+	7,
+	23,
+	6,
+	24,
+	5,
+	25,
         4,
+	26,
         3,
+	27,
         2,
+	28,
+	1,
+	29,
         0,
+	30,
 };
 
 static long _vq_lengthlist_res0_160_128_3[] = {
-	 2, 3, 6, 6, 8, 3, 5, 6, 8, 4, 5, 7, 8,10, 5, 7,
-	 8,10, 6, 7, 9,10,13, 7, 9,10,12, 7, 8,11,13,14,
-	 8,11,13,16, 9,11,13,15,15,11,12,14,15, 4, 5, 7,
-	 8,10, 5, 7, 8,10, 6, 7,10,10,13, 7,10,11,12, 7,
-	 8,11,12,14, 8,11,13,14, 9,11,13,14,16,11,13,15,
-	15,
+	 3, 4, 4, 6, 6, 6, 6, 7, 7, 7, 7, 8, 8, 8, 8, 9,
+	 9, 8, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 5,
+	 5, 5, 6, 6, 7, 7, 7, 7, 8, 8, 8, 8, 8, 9, 9, 9,
+	 9, 9, 9, 9, 9, 9, 9, 9, 9,10, 9, 9, 9, 9, 5, 5,
+	 5, 6, 6, 7, 7, 7, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9,
+	 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 7, 7, 7,
+	 8, 8, 9, 9, 9,10,10,10,10,10,10,10,11,11,11,11,
+	11,11,11,11,11,11,11,12,11,11,11,11, 7, 7, 7, 8,
+	 8, 9, 9, 9, 9,10,10,10,10,10,11,11,11,11,11,11,
+	11,11,11,11,11,10,11,11,11,11,11, 8, 8, 9,10,10,
+	11,10,11,11,12,11,12,12,12,12,12,12,13,12,12,13,
+	12,13,12,12,13,13,12,13,12,13, 8, 9, 9,10,10,10,
+	11,11,11,12,12,12,12,12,12,12,12,13,12,12,12,13,
+	13,12,13,12,12,12,13,12,12, 9, 9, 9,11,11,11,11,
+	12,13,12,13,13,13,14,13,13,14,13,13,13,14,15,14,
+	15,14,13,14,13,13,13,14, 9, 9, 9,11,11,11,11,12,
+	12,12,12,13,12,12,13,14,14,14,14,13,14,17,14,14,
+	14,13,13,13,17,14,14,10,11,10,12,12,12,13,13,13,
+	13,13,14,13,13,15,13,15,14,14,15,15,14,14,16,15,
+	15,15,14,14,16,16, 9,10,10,12,12,12,13,12,13,13,
+	15,13,13,13,13,13,14,14,15,15,14,16,15,16,15,14,
+	15,15,15,14,15,11,11,11,13,13,13,13,15,14,13,14,
+	13,15,13,15,15,14,15,14,15,14,15,16,15,15,15,15,
+	16,16,16,15,10,12,11,13,12,13,14,14,13,15,15,15,
+	13,15,13,15,15,14,15,15,15,15,14,14,16,16,15,15,
+	15,16,15,11,12,13,13,13,13,14,13,13,14,14,14,14,
+	13,16,16,15,16,15,15,16,15,15,16,15,16,15,15,16,
+	15,15,11,12,12,13,13,13,13,15,15,16,14,16,16,15,
+	14,15,15,16,14,15,15,15,16,16,16,15,16,15,16,16,
+	16,12,12,13,14,13,16,16,15,16,15,15,15,15,15,15,
+	14,14,14,14,15,15,16,15,16,15,16,16,16,16,16,16,
+	11,13,13,14,14,14,15,15,14,16,15,16,15,16,16,16,
+	14,16,14,16,15,15,16,16,16,15,15,15,14,15,16,13,
+	13,14,15,15,15,16,15,16,16,15,16,15,16,15,16,16,
+	16,16,15,15,15,15,16,15,15,16,16,16,15,16,13,14,
+	13,15,15,16,14,15,16,16,15,15,16,16,16,16,15,16,
+	16,16,16,16,15,16,16,15,16,16,16,16,16,13,14,13,
+	15,16,15,15,15,15,16,15,16,16,16,15,15,16,16,16,
+	15,16,16,16,15,16,16,16,15,16,16,16,13,12,15,15,
+	15,16,15,16,15,16,16,15,16,16,16,16,16,16,15,16,
+	15,16,16,16,16,16,16,16,15,16,16,13,15,14,15,15,
+	15,16,16,16,16,16,16,16,16,16,15,16,15,15,16,16,
+	16,16,16,16,16,16,16,16,16,16,13,15,14,15,15,15,
+	16,16,16,16,16,16,16,16,16,16,16,16,16,16,15,16,
+	16,16,16,16,16,16,16,15,15,14,15,15,15,15,16,16,
+	16,15,16,16,16,16,16,16,15,16,16,16,16,16,16,16,
+	16,16,16,16,16,16,16,16,14,15,15,16,15,16,15,16,
+	16,16,15,16,16,16,16,16,16,16,16,16,16,16,16,16,
+	16,16,15,16,16,16,16,14,14,16,15,16,15,16,16,16,
+	16,16,16,16,16,16,16,16,15,16,16,16,16,16,16,16,
+	16,16,16,16,16,15,15,15,15,16,16,15,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,14,15,15,16,16,15,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,15,16,16,15,16,15,16,16,16,16,16,16,
+	16,15,16,15,16,16,16,16,16,16,16,16,16,16,16,16,
+	16,16,15,14,16,15,16,16,16,16,16,16,15,16,16,15,
+	16,16,16,16,15,16,16,16,16,16,15,16,16,16,16,16,
+	16,16,15,15,16,16,16,16,15,16,16,15,16,16,16,16,
+	16,16,16,16,16,16,16,16,16,16,16,16,15,16,16,16,
+	16,
 };
 
 static float _vq_quantthresh_res0_160_128_3[] = {
-	-4, -2.5, -1.5, -0.5, 0.5, 1.5, 2.5, 4, 
+	-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, 
 };
 
 static long _vq_quantmap_res0_160_128_3[] = {
-	    8,    7,    6,    5,    0,    1,    2,    3,
-	    4,
+	   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,
 };
 
 static encode_aux_threshmatch _vq_auxt_res0_160_128_3 = {
         _vq_quantthresh_res0_160_128_3,
         _vq_quantmap_res0_160_128_3,
-	9,
-	9
+	31,
+	31
 };
 
 static static_codebook _vq_book_res0_160_128_3 = {
-	2, 81,
+	2, 961,
         _vq_lengthlist_res0_160_128_3,
-	1, -531365888, 1611661312, 4, 0,
+	1, -528613376, 1611661312, 5, 0,
         _vq_quantlist_res0_160_128_3,
         NULL,
         &_vq_auxt_res0_160_128_3,

1.3       +245 -31   vorbis/lib/books/res0_160_128_4.vqh

Index: res0_160_128_4.vqh
===================================================================
RCS file: /usr/local/cvsroot/vorbis/lib/books/res0_160_128_4.vqh,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- res0_160_128_4.vqh	2000/11/17 11:47:21	1.2
+++ res0_160_128_4.vqh	2001/01/22 01:38:31	1.3
@@ -1,13 +1,12 @@
 /********************************************************************
  *                                                                  *
- * THIS FILE IS PART OF THE Ogg Vorbis SOFTWARE CODEC SOURCE CODE.  *
+ * THIS FILE IS PART OF THE OggVorbis 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 GNU LESSER/LIBRARY PUBLIC LICENSE, WHICH IS INCLUDED WITH    *
+ * THIS SOURCE. PLEASE READ THESE TERMS BEFORE DISTRIBUTING.        *
  *                                                                  *
- * THE OggSQUISH SOURCE CODE IS (C) COPYRIGHT 1994-1999             *
- * by 1999 Monty <monty at xiph.org> and The XIPHOPHORUS Company       *
- * http://www.xiph.org/                                             *
+ * THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2001             *
+ * by the XIPHOPHORUS Company, http://www.xiph.org/                 *
  *                                                                  *
  ********************************************************************
 
@@ -20,56 +19,271 @@
 #include "codebook.h"
 
 static long _vq_quantlist_res0_160_128_4[] = {
-	11,
-	12,
-	13,
-	14,
-	16,
-	19,
+	26,
+	25,
+	27,
+	24,
+	28,
+	23,
+	29,
         22,
+	30,
+	21,
+	31,
+	20,
+	32,
+	19,
+	33,
+	18,
+	34,
+	17,
+	35,
+	16,
+	36,
+	15,
+	37,
+	14,
+	38,
+	13,
+	39,
+	12,
+	40,
+	11,
+	41,
         10,
+	42,
         9,
+	43,
         8,
+	44,
+	7,
+	45,
         6,
+	46,
+	5,
+	47,
+	4,
+	48,
         3,
+	49,
+	2,
+	50,
+	1,
+	51,
         0,
+	52,
 };
 
 static long _vq_lengthlist_res0_160_128_4[] = {
-	 3, 4, 5, 6, 6, 6, 7, 4, 5, 6, 6, 6, 6, 4, 5, 6,
-	 7, 7, 7, 7, 5, 6, 7, 7, 7, 7, 7, 7, 8, 9, 9, 9,
-	 9, 7, 8, 9, 9, 9, 9, 9, 9,10,10,10,10,11, 9,10,
-	10,10,10,11,10,11,13,13,13,12,13,11,13,13,13,13,
-	13,11,12,14,16,15,16,15,13,17,14,16,15,16,12,17,
-	17,17,17,16,17,14,16,16,17,17,17, 4, 5, 6, 7, 7,
-	 7, 7, 5, 6, 7, 7, 7, 7, 7, 7, 8, 9, 9, 9, 9, 7,
-	 8, 9, 9, 8, 9, 9, 9,10,11,11,10,11, 9,10,10,11,
-	11,10,11,11,13,13,13,13,12,11,12,14,13,12,13,11,
-	13,16,15,14,15,17,13,14,14,16,14,16,13,15,16,17,
-	17,17,17,14,15,16,16,16,16,
+	 4, 4, 4, 6, 6, 7, 7, 7, 8, 8, 8, 8, 8, 9, 9, 9,
+	 9, 9, 9, 9, 9,10,10,10,10,10,10,10,10,10,10, 8,
+	 9, 8, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9,10, 9,
+	10,10,10,10,10, 4, 5, 5, 6, 7, 7, 7, 8, 8, 8, 8,
+	 9, 9, 9,10, 9, 9,10,10,10,10,10,10,10,10,10,10,
+	10,10,10,10, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9,10,
+	 9,10, 9,10,10,10,10,10,10,10, 4, 5, 5, 6, 7, 7,
+	 7, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9,10,10,10,10,
+	10,10,10,10,10,10,10,11,10, 9, 9, 9, 9, 9, 9, 9,
+	 9, 9, 9, 9, 9, 9,10,10,10,10,10,10,10,10,10, 7,
+	 7, 7, 9, 9,10, 9,10,10,11,11,11,11,11,11,11,11,
+	12,12,11,12,12,12,12,12,13,12,12,13,12,13,11,11,
+	11,11,11,11,11,11,11,11,11,12,11,11,12,12,11,12,
+	12,12,12,12, 7, 7, 7, 9, 9,10,10,10,10,10,10,11,
+	11,11,11,12,11,12,12,11,12,11,12,12,12,12,12,12,
+	12,12,12,11,11,11,11,11,11,11,11,11,11,11,11,11,
+	12,11,12,12,11,12,13,12,12, 9, 9, 9,10,11,11,11,
+	11,12,13,12,12,13,12,13,14,13,14,13,13,13,13,13,
+	13,16,13,13,14,14,13,14,13,13,13,13,12,12,12,13,
+	12,12,13,13,12,12,13,13,13,13,13,13,13,14, 9, 9,
+	 9,10,10,12,11,12,11,12,12,13,12,13,13,13,13,13,
+	14,14,13,14,13,14,13,14,13,13,14,15,13,12,12,13,
+	12,12,13,13,12,13,12,13,12,13,13,13,13,13,13,14,
+	14,13,14,10,10,11,11,12,12,12,13,13,14,13,13,14,
+	14,14,14,14,14,14,14,14,14,15,14,15,14,16,15,15,
+	14,15,15,14,14,13,14,13,14,13,15,14,13,13,14,14,
+	14,14,14,14,14,15,14,16,10,10,10,12,12,12,12,14,
+	13,14,13,13,13,14,13,14,14,14,15,14,14,14,15,15,
+	14,14,14,15,15,15,15,13,14,14,15,14,13,13,13,14,
+	14,14,15,14,14,14,13,14,14,15,14,15,14,11,11,12,
+	13,13,14,14,15,14,15,14,14,15,14,15,15,14,15,15,
+	15,16,15,15,15,15,15,14,15,15,15,15,14,14,15,14,
+	14,15,15,16,14,14,14,14,14,14,15,15,14,15,15,15,
+	15,15,11,11,11,13,13,13,13,15,13,14,14,15,15,14,
+	14,16,15,15,16,15,16,16,15,14,16,14,15,16,16,15,
+	15,14,15,14,14,14,14,14,14,14,14,15,15,16,14,15,
+	16,14,16,15,14,15,15,11,12,12,14,13,14,14,13,14,
+	15,14,16,15,15,14,16,16,15,16,16,15,15,15,15,16,
+	15,16,15,15,16,16,15,15,15,15,15,16,14,15,15,15,
+	14,15,15,16,15,15,15,15,16,15,16,16,11,12,12,13,
+	13,13,13,14,15,15,15,14,15,14,16,16,14,14,16,15,
+	15,16,16,15,15,15,15,15,16,16,16,16,14,15,14,15,
+	15,16,14,16,16,15,15,15,16,15,15,15,15,16,15,16,
+	16,12,12,13,14,13,14,14,14,15,15,16,16,15,15,14,
+	15,15,16,15,15,15,14,15,16,16,16,16,16,16,15,16,
+	15,15,15,15,14,16,15,15,15,15,16,15,16,15,16,16,
+	16,15,16,16,16,16,12,13,13,14,14,15,15,14,16,15,
+	15,15,15,16,15,15,15,15,15,16,16,15,15,15,15,16,
+	16,16,16,15,15,16,15,14,15,15,16,16,16,15,16,16,
+	16,16,15,16,15,16,15,16,16,16,16,12,13,14,15,14,
+	15,15,15,16,16,15,15,15,15,16,16,15,16,15,16,15,
+	16,16,16,16,16,16,16,16,16,16,16,15,16,16,16,15,
+	16,15,15,16,16,15,16,16,16,15,16,16,16,16,15,16,
+	13,13,13,14,14,15,15,15,15,15,15,16,15,15,16,16,
+	16,16,16,15,16,16,16,16,15,16,15,16,16,16,16,14,
+	14,16,15,16,16,15,15,15,15,16,16,15,16,16,16,16,
+	16,16,15,16,16,13,13,14,15,14,15,15,16,16,15,16,
+	16,15,15,16,16,15,15,16,16,15,16,16,16,16,15,16,
+	16,16,16,15,16,15,16,16,15,16,16,15,16,16,15,16,
+	16,16,16,16,16,15,16,16,16,16,13,14,14,15,13,16,
+	14,15,16,16,15,16,15,15,15,16,15,16,16,16,16,15,
+	16,16,16,15,16,15,16,16,16,14,16,16,16,15,16,15,
+	15,15,16,16,15,16,16,16,16,16,16,16,16,16,16,14,
+	14,14,15,15,15,15,15,16,16,16,16,15,16,16,15,16,
+	16,16,16,16,16,16,16,16,16,16,16,15,16,16,16,16,
+	15,16,16,16,16,16,15,16,15,16,16,15,16,16,16,15,
+	16,16,16,16,13,14,13,15,14,15,16,16,15,15,16,16,
+	15,15,15,16,16,16,15,16,16,15,15,16,16,15,16,16,
+	15,15,16,15,16,16,16,15,16,16,16,16,15,16,15,16,
+	15,16,16,16,16,15,16,16,15,14,14,14,15,14,16,15,
+	15,16,15,16,16,15,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,15,
+	16,15,16,16,16,16,16,16,15,16,16,16,16,16,14,15,
+	14,16,16,16,16,16,16,15,16,16,15,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,15,16,16,16,16,16,15,16,15,16,
+	16,16,16,14,14,14,15,15,16,16,16,15,16,16,16,16,
+	15,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
+	16,16,16,15,16,16,16,15,15,16,16,16,16,16,16,16,
+	16,16,16,16,16,16,16,16,14,14,15,16,15,15,16,16,
+	15,15,16,16,16,16,16,16,16,16,16,16,16,16,16,15,
+	16,16,15,15,16,16,16,16,15,15,16,16,16,16,16,16,
+	15,16,16,16,16,16,15,16,16,15,16,16,16,14,14,15,
+	15,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,
+	16,15,16,15,16,16,16,15,16,16,16,15,16,16,16,15,
+	16,16,15,15,15,16,15,15,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,15,16,16,16,15,15,16,16,15,16,16,16,16,16,
+	16,16,16,16,16,16,16,15,14,15,16,16,16,16,15,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,15,16,16,16,15,14,16,
+	15,15,16,15,16,16,15,16,16,16,16,16,16,16,16,16,
+	16,16,16,16,15,16,16,16,16,16,16,16,16,16,16,15,
+	15,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
+	16,15,16,15,16,15,16,15,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,15,15,15,14,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,15,16,16,16,16,16,16,16,16,15,
+	16,15,15,16,16,16,16,16,16,16,16,14,16,15,15,15,
+	15,15,16,16,15,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,15,16,16,16,16,16,16,16,16,16,16,15,
+	14,16,14,15,16,16,16,16,16,15,16,16,16,16,16,15,
+	16,16,16,16,16,15,16,16,16,16,16,16,15,16,16,16,
+	16,15,16,16,16,16,16,16,16,16,15,16,16,16,16,16,
+	16,16,16,16,15,15,15,14,16,15,15,16,14,16,16,16,
+	16,16,16,15,16,16,16,15,16,16,16,16,16,16,16,16,
+	15,16,16,16,16,16,16,16,16,15,16,16,16,16,16,16,
+	16,16,16,15,15,16,16,16,16,16,14,14,15,16,16,16,
+	15,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,15,16,16,16,16,16,16,16,16,16,16,16,16,15,
+	16,15,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,15,16,16,16,16,16,16,16,16,16,16,16,15,
+	16,16,16,16,14,16,16,16,16,15,16,16,16,16,16,16,
+	16,15,16,16,16,16,15,16,16,15,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,14,15,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,15,15,
+	16,16,15,16,15,16,16,16,16,16,15,16,16,16,16,16,
+	16,16,16,16,16,16,16,16,16,16,16,16,16,15,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,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,16,16,16,16,16,16,16,16,16,
+	16,16,16,16,16,16,16,16,15,14,15,16,16,16,16,16,
+	16,16,16,16,16,16,16,16,15,16,16,16,16,16,16,16,
+	16,16,16,15,15,16,16,15,16,16,16,16,16,16,16,15,
+	16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
+	15,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,15,16,16,16,16,16,16,16,15,
+	16,16,15,15,16,15,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,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,16,16,16,16,16,16,16,15,16,16,16,
+	15,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,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,15,16,16,16,16,16,16,
+	15,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,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,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,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,15,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,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,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,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,16,16,16,16,16,16,16,
 };
 
 static float _vq_quantthresh_res0_160_128_4[] = {
-	-9.5, -6.5, -4, -2.5, -1.5, -0.5, 0.5, 1.5, 
-	2.5, 4, 6.5, 9.5, 
+	-25.5, -24.5, -23.5, -22.5, -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, 
+	22.5, 23.5, 24.5, 25.5, 
 };
 
 static long _vq_quantmap_res0_160_128_4[] = {
-	   12,   11,   10,    9,    8,    7,    0,    1,
-	    2,    3,    4,    5,    6,
+	   51,   49,   47,   45,   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,   46,   48,   50,   52,
 };
 
 static encode_aux_threshmatch _vq_auxt_res0_160_128_4 = {
         _vq_quantthresh_res0_160_128_4,
         _vq_quantmap_res0_160_128_4,
-	13,
-	13
+	53,
+	53
 };
 
 static static_codebook _vq_book_res0_160_128_4 = {
-	2, 169,
+	2, 2809,
         _vq_lengthlist_res0_160_128_4,
-	1, -529137664, 1611661312, 5, 0,
+	1, -526778368, 1611661312, 6, 0,
         _vq_quantlist_res0_160_128_4,
         NULL,
         &_vq_auxt_res0_160_128_4,

1.3       +367 -45   vorbis/lib/books/res0_160_128_5.vqh

Index: res0_160_128_5.vqh
===================================================================
RCS file: /usr/local/cvsroot/vorbis/lib/books/res0_160_128_5.vqh,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- res0_160_128_5.vqh	2000/11/17 11:47:21	1.2
+++ res0_160_128_5.vqh	2001/01/22 01:38:31	1.3
@@ -1,13 +1,12 @@
 /********************************************************************
  *                                                                  *
- * THIS FILE IS PART OF THE Ogg Vorbis SOFTWARE CODEC SOURCE CODE.  *
+ * THIS FILE IS PART OF THE OggVorbis 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 GNU LESSER/LIBRARY PUBLIC LICENSE, WHICH IS INCLUDED WITH    *
+ * THIS SOURCE. PLEASE READ THESE TERMS BEFORE DISTRIBUTING.        *
  *                                                                  *
- * THE OggSQUISH SOURCE CODE IS (C) COPYRIGHT 1994-1999             *
- * by 1999 Monty <monty at xiph.org> and The XIPHOPHORUS Company       *
- * http://www.xiph.org/                                             *
+ * THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2001             *
+ * by the XIPHOPHORUS Company, http://www.xiph.org/                 *
  *                                                                  *
  ********************************************************************
 
@@ -20,101 +19,424 @@
 #include "codebook.h"
 
 static long _vq_quantlist_res0_160_128_5[] = {
-	102,
-	103,
-	104,
-	105,
-	107,
-	110,
-	113,
-	116,
-	119,
-	122,
-	126,
-	130,
-	133,
-	137,
-	141,
-	145,
+	150,
         149,
+	151,
+	148,
+	152,
+	147,
         153,
+	146,
+	154,
+	145,
+	155,
+	144,
+	156,
+	143,
+	157,
+	142,
         158,
+	141,
+	159,
+	140,
+	160,
+	139,
+	161,
+	138,
+	162,
+	137,
         163,
+	136,
+	164,
+	135,
+	165,
+	134,
+	166,
+	133,
+	167,
+	132,
         168,
+	131,
+	169,
+	130,
+	170,
+	129,
+	171,
+	128,
+	172,
+	127,
         173,
+	126,
         174,
+	125,
+	175,
+	124,
+	176,
+	123,
+	177,
+	122,
+	178,
+	121,
+	179,
+	120,
         180,
+	119,
+	181,
+	118,
+	182,
+	117,
+	183,
+	116,
+	184,
+	115,
+	185,
+	114,
         186,
+	113,
+	187,
+	112,
+	188,
+	111,
+	189,
+	110,
+	190,
+	109,
+	191,
+	108,
         192,
+	107,
+	193,
+	106,
+	194,
+	105,
+	195,
+	104,
+	196,
+	103,
+	197,
+	102,
         198,
-	204,
         101,
+	199,
         100,
+	200,
         99,
+	201,
+	98,
+	202,
         97,
+	203,
+	96,
+	204,
+	95,
+	205,
         94,
+	206,
+	93,
+	207,
+	92,
+	208,
         91,
+	209,
+	90,
+	210,
+	89,
+	211,
         88,
+	212,
+	87,
+	213,
+	86,
+	214,
         85,
+	215,
+	84,
+	216,
+	83,
+	217,
         82,
+	218,
+	81,
+	219,
+	80,
+	220,
+	79,
+	221,
         78,
+	222,
+	77,
+	223,
+	76,
+	224,
+	75,
+	225,
         74,
+	226,
+	73,
+	227,
+	72,
+	228,
         71,
+	229,
+	70,
+	230,
+	69,
+	231,
+	68,
+	232,
         67,
+	233,
+	66,
+	234,
+	65,
+	235,
+	64,
+	236,
         63,
+	237,
+	62,
+	238,
+	61,
+	239,
+	60,
+	240,
         59,
+	241,
+	58,
+	242,
+	57,
+	243,
+	56,
+	244,
         55,
+	245,
+	54,
+	246,
+	53,
+	247,
+	52,
+	248,
         51,
+	249,
+	50,
+	250,
+	49,
+	251,
+	48,
+	252,
+	47,
+	253,
         46,
+	254,
+	45,
+	255,
+	44,
+	256,
+	43,
+	257,
+	42,
+	258,
         41,
+	259,
+	40,
+	260,
+	39,
+	261,
+	38,
+	262,
+	37,
+	263,
         36,
+	264,
+	35,
+	265,
+	34,
+	266,
+	33,
+	267,
+	32,
+	268,
         31,
+	269,
         30,
+	270,
+	29,
+	271,
+	28,
+	272,
+	27,
+	273,
+	26,
+	274,
+	25,
+	275,
         24,
+	276,
+	23,
+	277,
+	22,
+	278,
+	21,
+	279,
+	20,
+	280,
+	19,
+	281,
         18,
+	282,
+	17,
+	283,
+	16,
+	284,
+	15,
+	285,
+	14,
+	286,
+	13,
+	287,
         12,
+	288,
+	11,
+	289,
+	10,
+	290,
+	9,
+	291,
+	8,
+	292,
+	7,
+	293,
         6,
+	294,
+	5,
+	295,
+	4,
+	296,
+	3,
+	297,
+	2,
+	298,
+	1,
+	299,
         0,
+	300,
 };
 
 static long _vq_lengthlist_res0_160_128_5[] = {
-	 2, 2, 4, 5, 6, 7, 7, 7, 8, 9,10,12,14,15,18,19,
-	19,19,19,19,19,19,19,19,19,19,19,19, 2, 5, 5, 6,
-	 7, 7, 7, 8, 9, 9,11,14,15,18,18,19,19,19,19,19,
-	19,19,19,19,19,19,18,
+	 2, 2, 2, 5, 5, 6, 6, 7, 7, 7, 7, 8, 8, 8, 8, 8,
+	 8, 9, 8, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9,
+	10,10,10,10,10,10,10,10,10,10,10,11,11,11,13,12,
+	13,12,14,12,13, 8, 8, 8, 9, 8, 8, 8, 9, 9, 9, 9,
+	 9, 9,10,10,10,10,10,10,10,11,10,10,11,11,11,11,
+	11,12,12,12,11,12,12,13,12,13,12,13,12,13,13,15,
+	13,13,12,13,13,14,13,16,13,14,14,13,14,14,14,14,
+	15,15,15,15,13,14,13,14,15,16,16,15,15,16,15,16,
+	15,16,16,16,15,16,16,15,16,16,16,16,16,16,16,15,
+	15,16,16,16,16,16,15,16,16,16,16,16,15,16,16,16,
+	16,16,15,16,16,16,16,15,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,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,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,15,
 };
 
 static float _vq_quantthresh_res0_160_128_5[] = {
-	-99, -93, -87, -81, -75, -71.5, -68.5, -63.5, 
-	-58.5, -53.5, -49, -45, -41, -37, -33, -29.5, 
-	-26, -22, -18.5, -15.5, -12.5, -9.5, -6.5, -4, 
-	-2.5, -1.5, -0.5, 0.5, 1.5, 2.5, 4, 6.5, 
-	9.5, 12.5, 15.5, 18.5, 22, 26, 29.5, 33, 
-	37, 41, 45, 49, 53.5, 58.5, 63.5, 68.5, 
-	71.5, 75, 81, 87, 93, 99, 
+	-149.5, -148.5, -147.5, -146.5, -145.5, -144.5, -143.5, -142.5, 
+	-141.5, -140.5, -139.5, -138.5, -137.5, -136.5, -135.5, -134.5, 
+	-133.5, -132.5, -131.5, -130.5, -129.5, -128.5, -127.5, -126.5, 
+	-125.5, -124.5, -123.5, -122.5, -121.5, -120.5, -119.5, -118.5, 
+	-117.5, -116.5, -115.5, -114.5, -113.5, -112.5, -111.5, -110.5, 
+	-109.5, -108.5, -107.5, -106.5, -105.5, -104.5, -103.5, -102.5, 
+	-101.5, -100.5, -99.5, -98.5, -97.5, -96.5, -95.5, -94.5, 
+	-93.5, -92.5, -91.5, -90.5, -89.5, -88.5, -87.5, -86.5, 
+	-85.5, -84.5, -83.5, -82.5, -81.5, -80.5, -79.5, -78.5, 
+	-77.5, -76.5, -75.5, -74.5, -73.5, -72.5, -71.5, -70.5, 
+	-69.5, -68.5, -67.5, -66.5, -65.5, -64.5, -63.5, -62.5, 
+	-61.5, -60.5, -59.5, -58.5, -57.5, -56.5, -55.5, -54.5, 
+	-53.5, -52.5, -51.5, -50.5, -49.5, -48.5, -47.5, -46.5, 
+	-45.5, -44.5, -43.5, -42.5, -41.5, -40.5, -39.5, -38.5, 
+	-37.5, -36.5, -35.5, -34.5, -33.5, -32.5, -31.5, -30.5, 
+	-29.5, -28.5, -27.5, -26.5, -25.5, -24.5, -23.5, -22.5, 
+	-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, 22.5, 23.5, 24.5, 25.5, 
+	26.5, 27.5, 28.5, 29.5, 30.5, 31.5, 32.5, 33.5, 
+	34.5, 35.5, 36.5, 37.5, 38.5, 39.5, 40.5, 41.5, 
+	42.5, 43.5, 44.5, 45.5, 46.5, 47.5, 48.5, 49.5, 
+	50.5, 51.5, 52.5, 53.5, 54.5, 55.5, 56.5, 57.5, 
+	58.5, 59.5, 60.5, 61.5, 62.5, 63.5, 64.5, 65.5, 
+	66.5, 67.5, 68.5, 69.5, 70.5, 71.5, 72.5, 73.5, 
+	74.5, 75.5, 76.5, 77.5, 78.5, 79.5, 80.5, 81.5, 
+	82.5, 83.5, 84.5, 85.5, 86.5, 87.5, 88.5, 89.5, 
+	90.5, 91.5, 92.5, 93.5, 94.5, 95.5, 96.5, 97.5, 
+	98.5, 99.5, 100.5, 101.5, 102.5, 103.5, 104.5, 105.5, 
+	106.5, 107.5, 108.5, 109.5, 110.5, 111.5, 112.5, 113.5, 
+	114.5, 115.5, 116.5, 117.5, 118.5, 119.5, 120.5, 121.5, 
+	122.5, 123.5, 124.5, 125.5, 126.5, 127.5, 128.5, 129.5, 
+	130.5, 131.5, 132.5, 133.5, 134.5, 135.5, 136.5, 137.5, 
+	138.5, 139.5, 140.5, 141.5, 142.5, 143.5, 144.5, 145.5, 
+	146.5, 147.5, 148.5, 149.5, 
 };
 
 static long _vq_quantmap_res0_160_128_5[] = {
-	   54,   53,   52,   51,   50,   49,   48,   47,
-	   46,   45,   44,   43,   42,   41,   40,   39,
-	   38,   37,   36,   35,   34,   33,   32,   31,
-	   30,   29,   28,    0,    1,    2,    3,    4,
-	    5,    6,    7,    8,    9,   10,   11,   12,
-	   13,   14,   15,   16,   17,   18,   19,   20,
-	   21,   22,   23,   24,   25,   26,   27,
+	  299,  297,  295,  293,  291,  289,  287,  285,
+	  283,  281,  279,  277,  275,  273,  271,  269,
+	  267,  265,  263,  261,  259,  257,  255,  253,
+	  251,  249,  247,  245,  243,  241,  239,  237,
+	  235,  233,  231,  229,  227,  225,  223,  221,
+	  219,  217,  215,  213,  211,  209,  207,  205,
+	  203,  201,  199,  197,  195,  193,  191,  189,
+	  187,  185,  183,  181,  179,  177,  175,  173,
+	  171,  169,  167,  165,  163,  161,  159,  157,
+	  155,  153,  151,  149,  147,  145,  143,  141,
+	  139,  137,  135,  133,  131,  129,  127,  125,
+	  123,  121,  119,  117,  115,  113,  111,  109,
+	  107,  105,  103,  101,   99,   97,   95,   93,
+	   91,   89,   87,   85,   83,   81,   79,   77,
+	   75,   73,   71,   69,   67,   65,   63,   61,
+	   59,   57,   55,   53,   51,   49,   47,   45,
+	   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,   46,   48,   50,
+	   52,   54,   56,   58,   60,   62,   64,   66,
+	   68,   70,   72,   74,   76,   78,   80,   82,
+	   84,   86,   88,   90,   92,   94,   96,   98,
+	  100,  102,  104,  106,  108,  110,  112,  114,
+	  116,  118,  120,  122,  124,  126,  128,  130,
+	  132,  134,  136,  138,  140,  142,  144,  146,
+	  148,  150,  152,  154,  156,  158,  160,  162,
+	  164,  166,  168,  170,  172,  174,  176,  178,
+	  180,  182,  184,  186,  188,  190,  192,  194,
+	  196,  198,  200,  202,  204,  206,  208,  210,
+	  212,  214,  216,  218,  220,  222,  224,  226,
+	  228,  230,  232,  234,  236,  238,  240,  242,
+	  244,  246,  248,  250,  252,  254,  256,  258,
+	  260,  262,  264,  266,  268,  270,  272,  274,
+	  276,  278,  280,  282,  284,  286,  288,  290,
+	  292,  294,  296,  298,  300,
 };
 
 static encode_aux_threshmatch _vq_auxt_res0_160_128_5 = {
         _vq_quantthresh_res0_160_128_5,
         _vq_quantmap_res0_160_128_5,
-	55,
-	55
+	301,
+	301
 };
 
 static static_codebook _vq_book_res0_160_128_5 = {
-	1, 55,
+	1, 301,
         _vq_lengthlist_res0_160_128_5,
-	1, -522616832, 1611661312, 8, 0,
+	1, -520962048, 1611661312, 9, 0,
         _vq_quantlist_res0_160_128_5,
         NULL,
         &_vq_auxt_res0_160_128_5,

1.3       +15 -4     vorbis/lib/books/res0_160_128aux.vqh

Index: res0_160_128aux.vqh
===================================================================
RCS file: /usr/local/cvsroot/vorbis/lib/books/res0_160_128aux.vqh,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- res0_160_128aux.vqh	2000/11/17 11:47:21	1.2
+++ res0_160_128aux.vqh	2001/01/22 01:38:31	1.3
@@ -20,13 +20,24 @@
 #include "codebook.h"
 
 static long _huff_lengthlist_res0_160_128aux[] = {
-	 4,10,13,13,13,15, 3, 3, 5, 8,12,13, 4, 4, 6, 8,
-	15,14, 6, 6, 7, 8,10,13, 8, 5, 4, 5, 9,11, 6, 3,
-	 3, 4, 9,11,
+	13,15,16,16,16,16,13,11,13,16,16,15,11,11,12,15,
+	15,15,10,14,15,15,15,15,15,15,15,15,15,15,15,15,
+	15,15,15,15, 9,10,12,13,15,15, 5, 2, 5,13,15,15,
+	 7, 5, 8,12,15,15,10,11,13,15,15,15,15,15,15,15,
+	15,15,15,15,15,15,15,15, 9, 9,10,10,15,15, 5, 4,
+	 8,12,15,15, 9, 7,10,12,15,15,12,12,13,13,15,15,
+	15,15,15,15,15,15,15,15,15,15,15,15,11,11,12,12,
+	15,15, 9, 4, 5,10,15,15,12, 4, 6,10,15,15,13, 8,
+	 9,10,15,15,15,14,15,15,15,15,15,15,15,15,15,15,
+	12,13,15,15,15,15,13, 3, 5,10,15,15,15, 4, 5,10,
+	15,15,14, 8, 9,10,15,15,15,15,15,15,15,15,15,15,
+	15,15,15,15,13,14,15,15,15,15,15, 5, 6,12,15,15,
+	15, 6, 7,11,15,15,15,10,11,13,15,15,15,15,15,15,
+	15,15,15,15,15,15,15,15,
 };
 
 static static_codebook _huff_book_res0_160_128aux = {
-	2, 36,
+	3, 216,
         _huff_lengthlist_res0_160_128aux,
         0, 0, 0, 0, 0,
         NULL,

1.2       +13 -14    vorbis/lib/books/res0_192_1024_1.vqh

Index: res0_192_1024_1.vqh
===================================================================
RCS file: /usr/local/cvsroot/vorbis/lib/books/res0_192_1024_1.vqh,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- res0_192_1024_1.vqh	2000/11/08 13:16:28	1.1
+++ res0_192_1024_1.vqh	2001/01/22 01:38:31	1.2
@@ -1,13 +1,12 @@
 /********************************************************************
  *                                                                  *
- * THIS FILE IS PART OF THE Ogg Vorbis SOFTWARE CODEC SOURCE CODE.  *
+ * THIS FILE IS PART OF THE OggVorbis 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 GNU LESSER/LIBRARY PUBLIC LICENSE, WHICH IS INCLUDED WITH    *
+ * THIS SOURCE. PLEASE READ THESE TERMS BEFORE DISTRIBUTING.        *
  *                                                                  *
- * THE OggSQUISH SOURCE CODE IS (C) COPYRIGHT 1994-1999             *
- * by 1999 Monty <monty at xiph.org> and The XIPHOPHORUS Company       *
- * http://www.xiph.org/                                             *
+ * THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2001             *
+ * by the XIPHOPHORUS Company, http://www.xiph.org/                 *
  *                                                                  *
  ********************************************************************
 
@@ -21,17 +20,17 @@
 
 static long _vq_quantlist_res0_192_1024_1[] = {
         1,
-	2,
         0,
+	2,
 };
 
 static long _vq_lengthlist_res0_192_1024_1[] = {
-	 1, 5, 5, 5, 7, 7, 5, 7, 7, 5, 7, 7, 7, 9, 9, 7,
-	 9, 9, 5, 7, 7, 7, 9, 9, 7, 9, 9, 5, 7, 7, 7, 9,
-	 9, 7, 9, 9, 7, 9, 9, 9,11,11, 9,11,11, 7, 9, 9,
-	 9,11,11, 9,11,11, 5, 7, 7, 7, 9, 9, 8, 9, 9, 7,
-	 9, 9, 9,11,11, 9,11,11, 8, 9, 9, 9,11,11, 9,11,
-	11,
+	 1, 4, 4, 4, 8, 8, 4, 8, 8, 5, 8, 8, 8,12,12, 8,
+	12,12, 4, 8, 8, 8,12,12, 8,12,12, 5, 9, 8, 9,12,
+	12, 8,12,12, 9,12,12,13,16,16,12,16,16, 8,12,12,
+	12,17,16,12,16,16, 5, 8, 8, 8,12,12, 8,12,12, 9,
+	12,12,12,16,16,12,16,16, 8,12,12,13,17,16,12,16,
+	15,
 };
 
 static float _vq_quantthresh_res0_192_1024_1[] = {
@@ -39,7 +38,7 @@
 };
 
 static long _vq_quantmap_res0_192_1024_1[] = {
-	    2,    0,    1,
+	    1,    0,    2,
 };
 
 static encode_aux_threshmatch _vq_auxt_res0_192_1024_1 = {

1.3       +18 -55    vorbis/lib/books/res0_192_1024_2.vqh

Index: res0_192_1024_2.vqh
===================================================================
RCS file: /usr/local/cvsroot/vorbis/lib/books/res0_192_1024_2.vqh,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- res0_192_1024_2.vqh	2000/11/17 11:47:21	1.2
+++ res0_192_1024_2.vqh	2001/01/22 01:38:31	1.3
@@ -1,13 +1,12 @@
 /********************************************************************
  *                                                                  *
- * THIS FILE IS PART OF THE Ogg Vorbis SOFTWARE CODEC SOURCE CODE.  *
+ * THIS FILE IS PART OF THE OggVorbis 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 GNU LESSER/LIBRARY PUBLIC LICENSE, WHICH IS INCLUDED WITH    *
+ * THIS SOURCE. PLEASE READ THESE TERMS BEFORE DISTRIBUTING.        *
  *                                                                  *
- * THE OggSQUISH SOURCE CODE IS (C) COPYRIGHT 1994-1999             *
- * by 1999 Monty <monty at xiph.org> and The XIPHOPHORUS Company       *
- * http://www.xiph.org/                                             *
+ * THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2001             *
+ * by the XIPHOPHORUS Company, http://www.xiph.org/                 *
  *                                                                  *
  ********************************************************************
 
@@ -20,75 +19,39 @@
 #include "codebook.h"
 
 static long _vq_quantlist_res0_192_1024_2[] = {
-	2,
-	3,
-	4,
         1,
         0,
+	2,
 };
 
 static long _vq_lengthlist_res0_192_1024_2[] = {
-	 4, 5, 7, 5, 7, 5, 6, 9, 6, 9, 7, 9,11, 9,11, 5,
-	 6, 9, 7, 9, 7, 9,11, 9,11, 5, 7, 9, 7, 9, 7, 8,
-	10, 8,10, 9,10,12,10,12, 7, 8,10, 8,10, 9,10,12,
-	10,12, 8, 9,11, 9,11, 9,10,12,10,12,11,12,14,12,
-	14, 9,10,12,10,12,11,12,14,12,14, 5, 7, 9, 7, 9,
-	 7, 8,10, 8,10, 9,10,12,10,12, 7, 8,10, 8,10, 9,
-	10,12,10,12, 8, 9,11, 9,11, 9,10,12,10,12,11,12,
-	14,12,14, 9,10,12,10,12,11,12,14,12,14, 5, 7, 9,
-	 7, 9, 7, 8,10, 8,10, 9,10,12,10,12, 7, 8,10, 8,
-	10, 9,10,12,10,12, 7, 8,10, 8,10, 8, 8,11, 9,11,
-	10,11,12,11,13, 8, 9,11, 9,11,10,11,12,11,13, 9,
-	10,12,10,12,10,11,13,11,13,12,12,14,13,15,10,11,
-	13,11,13,12,13,15,13,15, 7, 8,10, 8,10, 8, 9,11,
-	 9,11,10,11,13,11,12, 8, 9,11, 9,11,10,11,13,11,
-	13, 9,10,12,10,12,10,11,13,11,13,12,13,14,13,14,
-	10,11,13,11,13,12,13,15,13,15, 8, 9,11, 9,11, 9,
-	10,12,10,12,11,12,14,12,14, 9,10,12,10,12,11,12,
-	14,12,14, 9,10,12,10,12,10,11,13,11,13,12,13,14,
-	13,15,10,11,13,11,13,12,13,14,13,14,11,12,14,12,
-	14,12,13,14,13,15,14,14,16,15,16,12,13,15,13,15,
-	14,15,16,14,16, 9,10,12,10,12,10,11,13,11,13,12,
-	13,15,13,14,10,11,13,11,13,12,13,14,13,14,11,12,
-	14,12,14,12,13,15,13,14,14,15,16,14,16,12,13,15,
-	13,15,14,15,16,15,16, 5, 7, 9, 7, 9, 7, 8,10, 8,
-	10, 9,10,12,10,12, 7, 8,10, 8,10, 9,10,12,10,12,
-	 7, 8,10, 8,10, 8, 9,11, 9,11,10,11,13,11,13, 8,
-	 9,11, 9,11,10,11,13,11,13, 9,10,12,10,12,10,11,
-	13,11,13,12,13,14,13,15,10,11,13,11,13,12,13,14,
-	13,14, 7, 8,10, 8,10, 8, 9,11, 9,11,10,11,13,11,
-	13, 8, 9,11, 9,11,10,11,13,11,12, 9,10,12,10,12,
-	10,11,13,11,13,12,13,14,13,14,10,11,13,11,13,12,
-	13,14,12,14, 8, 9,11, 9,11, 9,10,12,10,12,11,12,
-	14,12,14, 9,10,12,10,12,11,12,14,12,14, 9,10,12,
-	10,12,10,11,13,11,13,12,13,15,13,14,10,11,13,11,
-	13,12,13,14,13,15,11,12,14,12,14,12,13,15,13,14,
-	14,15,16,15,16,12,13,14,13,15,14,14,16,15,16, 9,
-	10,12,10,12,10,11,13,11,13,12,13,14,13,15,10,11,
-	13,11,13,12,13,15,13,14,11,12,14,12,14,12,13,15,
-	13,15,14,14,16,15,16,12,13,15,13,14,14,14,16,14,
-	16,
+	 3, 4, 4, 5, 6, 6, 4, 6, 6, 5, 6, 6, 6, 8, 8, 6,
+	 8, 8, 5, 6, 6, 6, 8, 8, 6, 8, 8, 5, 6, 6, 6, 8,
+	 8, 6, 8, 8, 6, 8, 8, 8, 9, 9, 8, 9, 9, 6, 8, 8,
+	 8, 9, 9, 8, 9, 9, 5, 6, 6, 6, 8, 8, 6, 8, 8, 6,
+	 8, 8, 8, 9, 9, 8, 9, 9, 6, 8, 8, 8, 9, 9, 8, 9,
+	 9,
 };
 
 static float _vq_quantthresh_res0_192_1024_2[] = {
-	-1.5, -0.5, 0.5, 1.5, 
+	-0.5, 0.5, 
 };
 
 static long _vq_quantmap_res0_192_1024_2[] = {
-	    4,    3,    0,    1,    2,
+	    1,    0,    2,
 };
 
 static encode_aux_threshmatch _vq_auxt_res0_192_1024_2 = {
         _vq_quantthresh_res0_192_1024_2,
         _vq_quantmap_res0_192_1024_2,
-	5,
-	5
+	3,
+	3
 };
 
 static static_codebook _vq_book_res0_192_1024_2 = {
-	4, 625,
+	4, 81,
         _vq_lengthlist_res0_192_1024_2,
-	1, -533725184, 1611661312, 3, 0,
+	1, -535822336, 1611661312, 2, 0,
         _vq_quantlist_res0_192_1024_2,
         NULL,
         &_vq_auxt_res0_192_1024_2,

1.3       +54 -26    vorbis/lib/books/res0_192_1024_3.vqh

Index: res0_192_1024_3.vqh
===================================================================
RCS file: /usr/local/cvsroot/vorbis/lib/books/res0_192_1024_3.vqh,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- res0_192_1024_3.vqh	2000/11/17 11:47:21	1.2
+++ res0_192_1024_3.vqh	2001/01/22 01:38:31	1.3
@@ -1,13 +1,12 @@
 /********************************************************************
  *                                                                  *
- * THIS FILE IS PART OF THE Ogg Vorbis SOFTWARE CODEC SOURCE CODE.  *
+ * THIS FILE IS PART OF THE OggVorbis 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 GNU LESSER/LIBRARY PUBLIC LICENSE, WHICH IS INCLUDED WITH    *
+ * THIS SOURCE. PLEASE READ THESE TERMS BEFORE DISTRIBUTING.        *
  *                                                                  *
- * THE OggSQUISH SOURCE CODE IS (C) COPYRIGHT 1994-1999             *
- * by 1999 Monty <monty at xiph.org> and The XIPHOPHORUS Company       *
- * http://www.xiph.org/                                             *
+ * THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2001             *
+ * by the XIPHOPHORUS Company, http://www.xiph.org/                 *
  *                                                                  *
  ********************************************************************
 
@@ -20,46 +19,75 @@
 #include "codebook.h"
 
 static long _vq_quantlist_res0_192_1024_3[] = {
-	5,
-	6,
-	7,
-	8,
-	10,
-	4,
-	3,
         2,
+	1,
+	3,
         0,
+	4,
 };
 
 static long _vq_lengthlist_res0_192_1024_3[] = {
-	 3, 4, 5, 6, 8, 4, 5, 6, 8, 4, 5, 6, 7, 8, 5, 6,
-	 7, 9, 5, 6, 7, 8, 9, 6, 7, 8, 9, 6, 7, 8, 9,10,
-	 7, 8, 9,10, 8, 9,10,10,11, 9,10,10,11, 4, 5, 6,
-	 7, 9, 5, 6, 7, 9, 5, 6, 7, 8, 9, 6, 7, 8, 9, 6,
-	 7, 8, 9,10, 7, 8, 9,10, 8, 9,10,10,11, 9,10,10,
-	11,
+	 3, 5, 5, 7, 7, 5, 6, 6, 9, 9, 5, 6, 6, 9, 9, 7,
+	 9, 9,12,12, 7, 9, 9,12,12, 5, 7, 6, 9, 9, 7, 8,
+	 8,11,11, 7, 8, 8,11,10, 9,11,11,14,14, 9,11,11,
+	13,14, 5, 6, 6, 9, 9, 7, 8, 8,11,10, 7, 8, 8,10,
+	10, 9,11,11,14,14, 9,11,11,14,14, 7, 9, 9,12,12,
+	 9,11,11,14,14, 9,11,11,14,14,12,14,14,17,17,12,
+	14,14,17,17, 7, 9, 9,12,12, 9,11,11,14,14, 9,11,
+	11,14,14,12,14,14,17,17,12,14,14,17,18, 5, 7, 7,
+	 9, 9, 7, 8, 8,11,11, 7, 8, 8,11,11, 9,11,11,14,
+	14, 9,11,11,14,14, 7, 8, 8,11,11, 8,10,10,12,12,
+	 8,10,10,12,12,11,12,13,15,16,11,13,12,16,16, 7,
+	 8, 8,11,11, 8,10,10,12,12, 8,10,10,12,12,11,13,
+	12,16,16,11,12,12,15,16, 9,11,11,14,14,11,12,12,
+	16,16,11,13,12,16,16,14,16,16,19,19,14,16,16,19,
+	18, 9,11,11,14,14,11,12,12,15,15,11,12,12,15,16,
+	14,16,16,19,18,14,16,16,19,19, 5, 7, 6, 9, 9, 7,
+	 8, 8,11,11, 7, 8, 8,11,11, 9,11,11,14,14, 9,11,
+	11,14,14, 7, 8, 8,11,11, 8,10,10,12,12, 8,10,10,
+	12,12,11,13,13,16,16,11,12,12,16,16, 7, 8, 8,11,
+	11, 8,10,10,12,12, 8,10, 9,12,12,11,12,12,15,16,
+	11,12,12,15,15, 9,11,11,14,14,11,12,12,16,16,11,
+	12,12,16,16,14,16,16,18,19,14,16,15,18,20, 9,11,
+	11,14,14,11,12,12,15,16,11,12,12,16,15,14,16,16,
+	18,18,14,16,16,19,19, 7, 9, 9,12,12, 9,11,11,14,
+	14, 9,11,11,14,14,12,14,14,17,17,12,14,14,18,17,
+	 9,11,11,14,14,11,12,12,16,15,11,13,12,16,16,14,
+	16,16,18,19,14,16,16,18,18, 9,11,11,14,14,11,13,
+	12,16,15,11,13,12,16,16,14,16,16,20,18,14,16,16,
+	19,18,12,14,14,17,17,14,15,16,18,19,14,16,16,19,
+	18,17,19,18,20,21,18,20,18,21,20,12,14,14,17,17,
+	14,16,16,19,18,14,16,17,18,18,17,19,17,21,20,17,
+	19,19,20,20, 7, 9, 9,12,12, 9,11,11,14,14, 9,11,
+	11,14,14,12,14,14,17,17,12,14,14,17,17, 9,11,11,
+	14,14,11,12,12,16,16,11,12,12,16,16,14,16,16,19,
+	19,14,16,16,19,18, 9,11,11,14,14,11,12,13,15,16,
+	11,12,12,16,16,14,16,16,18,19,14,16,16,18,18,12,
+	14,14,17,17,14,15,16,19,19,14,15,16,18,20,18,18,
+	19,20,21,17,19,18,20,21,12,14,14,17,17,14,16,16,
+	19,18,14,16,16,20,18,17,20,19,21,20,17,18,18,20,
+	19,
 };
 
 static float _vq_quantthresh_res0_192_1024_3[] = {
-	-4, -2.5, -1.5, -0.5, 0.5, 1.5, 2.5, 4, 
+	-1.5, -0.5, 0.5, 1.5, 
 };
 
 static long _vq_quantmap_res0_192_1024_3[] = {
-	    8,    7,    6,    5,    0,    1,    2,    3,
-	    4,
+	    3,    1,    0,    2,    4,
 };
 
 static encode_aux_threshmatch _vq_auxt_res0_192_1024_3 = {
         _vq_quantthresh_res0_192_1024_3,
         _vq_quantmap_res0_192_1024_3,
-	9,
-	9
+	5,
+	5
 };
 
 static static_codebook _vq_book_res0_192_1024_3 = {
-	2, 81,
+	4, 625,
         _vq_lengthlist_res0_192_1024_3,
-	1, -531365888, 1611661312, 4, 0,
+	1, -533725184, 1611661312, 3, 0,
         _vq_quantlist_res0_192_1024_3,
         NULL,
         &_vq_auxt_res0_192_1024_3,

1.3       +54 -36    vorbis/lib/books/res0_192_1024_4.vqh

Index: res0_192_1024_4.vqh
===================================================================
RCS file: /usr/local/cvsroot/vorbis/lib/books/res0_192_1024_4.vqh,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- res0_192_1024_4.vqh	2000/11/17 11:47:21	1.2
+++ res0_192_1024_4.vqh	2001/01/22 01:38:31	1.3
@@ -1,13 +1,12 @@
 /********************************************************************
  *                                                                  *
- * THIS FILE IS PART OF THE Ogg Vorbis SOFTWARE CODEC SOURCE CODE.  *
+ * THIS FILE IS PART OF THE OggVorbis 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 GNU LESSER/LIBRARY PUBLIC LICENSE, WHICH IS INCLUDED WITH    *
+ * THIS SOURCE. PLEASE READ THESE TERMS BEFORE DISTRIBUTING.        *
  *                                                                  *
- * THE OggSQUISH SOURCE CODE IS (C) COPYRIGHT 1994-1999             *
- * by 1999 Monty <monty at xiph.org> and The XIPHOPHORUS Company       *
- * http://www.xiph.org/                                             *
+ * THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2001             *
+ * by the XIPHOPHORUS Company, http://www.xiph.org/                 *
  *                                                                  *
  ********************************************************************
 
@@ -20,56 +19,75 @@
 #include "codebook.h"
 
 static long _vq_quantlist_res0_192_1024_4[] = {
-	11,
-	12,
-	13,
-	14,
-	16,
-	19,
-	22,
-	10,
-	9,
-	8,
-	6,
+	2,
+	1,
         3,
         0,
+	4,
 };
 
 static long _vq_lengthlist_res0_192_1024_4[] = {
-	 3, 5, 6, 6, 6, 7, 8, 5, 6, 6, 6, 7, 8, 5, 6, 6,
-	 7, 7, 8, 9, 6, 6, 7, 7, 8, 9, 6, 7, 7, 8, 8, 9,
-	11, 7, 7, 8, 8, 9,10, 6, 7, 8, 8, 8, 9,11, 7, 8,
-	 8, 8, 9,11, 7, 7, 8, 8, 8, 9,11, 7, 8, 8, 8, 9,
-	11, 7, 8, 9, 9, 9,10,12, 8, 9, 9,10,10,12, 9,10,
-	11,11,11,12,13,10,11,11,11,12,13, 5, 6, 6, 7, 7,
-	 8,10, 6, 7, 7, 7, 8, 9, 6, 7, 7, 8, 8, 9,10, 7,
-	 7, 8, 8, 9,10, 6, 7, 8, 8, 8, 9,11, 7, 8, 8, 8,
-	 9,11, 7, 7, 8, 8, 8, 9,11, 7, 8, 8, 9, 9,11, 7,
-	 8, 9, 9, 9,10,12, 8, 9, 9, 9,10,12, 9,10,11,11,
-	11,12,13,10,11,11,11,12,13,
+	 6, 7, 7, 8, 8, 7, 7, 7, 9, 9, 7, 7, 7, 9, 9, 8,
+	 9, 9,11,11, 8, 9, 9,11,11, 7, 7, 7, 9, 9, 7, 7,
+	 7, 9, 9, 7, 7, 7, 9, 9, 9, 9, 9,11,11, 9, 9, 9,
+	11,11, 7, 7, 7, 9, 9, 7, 7, 7, 9, 9, 7, 7, 7, 9,
+	 9, 9, 9, 9,11,11, 9, 9, 9,11,11, 8, 9, 9,11,11,
+	 9, 9, 9,11,11, 9, 9, 9,11,11,11,11,11,13,14,11,
+	11,11,13,13, 8, 9, 9,11,11, 9, 9, 9,11,11, 9, 9,
+	 9,11,11,11,11,11,13,13,11,11,11,13,13, 7, 7, 7,
+	 9, 9, 7, 8, 8, 9, 9, 7, 7, 7, 9, 9, 9, 9, 9,11,
+	11, 9, 9, 9,11,11, 7, 8, 7, 9, 9, 7, 8, 8,10,10,
+	 7, 8, 8,10,10, 9,10,10,12,12, 9,10,10,12,12, 7,
+	 8, 8, 9, 9, 8, 8, 8,10,10, 8, 8, 8,10,10, 9,10,
+	10,12,12, 9,10,10,12,12, 9,10, 9,12,11, 9,10,10,
+	12,12, 9,10,10,12,12,11,12,12,14,14,11,12,12,14,
+	14, 9, 9, 9,11,11, 9,10,10,12,12, 9,10,10,12,12,
+	11,12,12,14,13,11,12,12,14,14, 7, 7, 7, 9, 9, 7,
+	 8, 7, 9, 9, 7, 8, 7, 9, 9, 9, 9, 9,11,11, 9, 9,
+	 9,11,11, 7, 8, 7, 9, 9, 7, 8, 8,10,10, 7, 8, 8,
+	10,10, 9,10,10,12,12, 9,10,10,12,12, 7, 7, 7, 9,
+	 9, 7, 8, 8,10,10, 7, 8, 8,10,10, 9,10,10,12,12,
+	 9,10,10,12,12, 9, 9, 9,11,11, 9,10,10,12,12, 9,
+	10,10,12,12,11,12,12,14,14,11,12,12,14,14, 9, 9,
+	 9,11,11, 9,10,10,12,12, 9,10,10,12,12,11,12,12,
+	14,14,11,12,12,14,13, 8, 9, 9,11,11, 9,10,10,12,
+	11, 9, 9, 9,11,11,11,11,12,13,13,11,11,11,13,13,
+	 9, 9, 9,12,11, 9,10,10,12,12, 9,10,10,12,12,11,
+	12,12,14,14,11,12,12,14,14, 9, 9, 9,11,11, 9,10,
+	10,12,12, 9,10,10,12,12,11,12,12,14,14,11,12,12,
+	14,14,11,12,11,13,13,11,12,12,14,14,11,12,12,14,
+	14,13,14,14,15,16,14,14,14,16,16,11,11,11,13,13,
+	11,12,12,14,14,11,12,12,14,14,13,14,14,17,15,13,
+	14,14,16,16, 8, 9, 9,11,11, 9, 9, 9,11,11, 9, 9,
+	 9,11,11,11,11,11,13,13,11,11,11,14,13, 9, 9, 9,
+	11,11, 9,10,10,12,12, 9,10,10,12,12,11,12,12,14,
+	14,11,12,12,14,14, 9, 9, 9,11,11, 9,10,10,12,12,
+	 9,10,10,12,12,11,12,12,14,14,11,12,12,14,14,11,
+	11,11,13,13,11,12,12,14,14,11,12,12,14,14,13,14,
+	14,16,17,13,14,14,15,16,11,11,11,13,13,11,12,12,
+	14,14,11,12,12,14,14,13,14,14,15,16,13,14,14,16,
+	15,
 };
 
 static float _vq_quantthresh_res0_192_1024_4[] = {
-	-9.5, -6.5, -4, -2.5, -1.5, -0.5, 0.5, 1.5, 
-	2.5, 4, 6.5, 9.5, 
+	-1.5, -0.5, 0.5, 1.5, 
 };
 
 static long _vq_quantmap_res0_192_1024_4[] = {
-	   12,   11,   10,    9,    8,    7,    0,    1,
-	    2,    3,    4,    5,    6,
+	    3,    1,    0,    2,    4,
 };
 
 static encode_aux_threshmatch _vq_auxt_res0_192_1024_4 = {
         _vq_quantthresh_res0_192_1024_4,
         _vq_quantmap_res0_192_1024_4,
-	13,
-	13
+	5,
+	5
 };
 
 static static_codebook _vq_book_res0_192_1024_4 = {
-	2, 169,
+	4, 625,
         _vq_lengthlist_res0_192_1024_4,
-	1, -529137664, 1611661312, 5, 0,
+	1, -533725184, 1611661312, 3, 0,
         _vq_quantlist_res0_192_1024_4,
         NULL,
         &_vq_auxt_res0_192_1024_4,

1.3       +35 -81    vorbis/lib/books/res0_192_1024_5.vqh

Index: res0_192_1024_5.vqh
===================================================================
RCS file: /usr/local/cvsroot/vorbis/lib/books/res0_192_1024_5.vqh,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- res0_192_1024_5.vqh	2000/11/17 11:47:21	1.2
+++ res0_192_1024_5.vqh	2001/01/22 01:38:31	1.3
@@ -1,13 +1,12 @@
 /********************************************************************
  *                                                                  *
- * THIS FILE IS PART OF THE Ogg Vorbis SOFTWARE CODEC SOURCE CODE.  *
+ * THIS FILE IS PART OF THE OggVorbis 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 GNU LESSER/LIBRARY PUBLIC LICENSE, WHICH IS INCLUDED WITH    *
+ * THIS SOURCE. PLEASE READ THESE TERMS BEFORE DISTRIBUTING.        *
  *                                                                  *
- * THE OggSQUISH SOURCE CODE IS (C) COPYRIGHT 1994-1999             *
- * by 1999 Monty <monty at xiph.org> and The XIPHOPHORUS Company       *
- * http://www.xiph.org/                                             *
+ * THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2001             *
+ * by the XIPHOPHORUS Company, http://www.xiph.org/                 *
  *                                                                  *
  ********************************************************************
 
@@ -20,101 +19,56 @@
 #include "codebook.h"
 
 static long _vq_quantlist_res0_192_1024_5[] = {
-	102,
-	103,
-	104,
-	105,
-	107,
-	110,
-	113,
-	116,
-	119,
-	122,
-	126,
-	130,
-	133,
-	137,
-	141,
-	145,
-	149,
-	153,
-	158,
-	163,
-	168,
-	173,
-	174,
-	180,
-	186,
-	192,
-	198,
-	204,
-	101,
-	100,
-	99,
-	97,
-	94,
-	91,
-	88,
-	85,
-	82,
-	78,
-	74,
-	71,
-	67,
-	63,
-	59,
-	55,
-	51,
-	46,
-	41,
-	36,
-	31,
-	30,
-	24,
-	18,
-	12,
         6,
+	5,
+	7,
+	4,
+	8,
+	3,
+	9,
+	2,
+	10,
+	1,
+	11,
         0,
+	12,
 };
 
 static long _vq_lengthlist_res0_192_1024_5[] = {
-	 2, 3, 4, 4, 4, 5, 7, 6, 9,10,11,13,13,14,14,15,
-	17,17,18,19,20,21,21,21,20,21,21,21, 3, 4, 4, 4,
-	 5, 6, 6, 9,10,11,12,13,13,15,16,17,17,21,21,21,
-	21,21,21,21,21,21,21,
+	 2, 4, 3, 6, 5, 7, 7, 8, 8,10,10,11,11, 4, 5, 5,
+	 7, 7, 8, 8,10,10,12,12,13,13, 3, 5, 5, 7, 7, 8,
+	 8,10,10,12,12,13,13, 6, 7, 7, 9, 9,11,10,12,13,
+	14,14,15,15, 6, 7, 7, 9, 9,10,10,13,13,14,14,15,
+	15, 7, 8, 8,11,10,13,13,14,14,15,15,16,16, 7, 8,
+	 8,11,11,13,13,14,14,15,15,17,16, 8,10,10,13,13,
+	14,14,16,16,16,16,18,17, 9,11,10,13,13,14,14,16,
+	16,16,17,17,17,10,12,12,14,14,15,15,17,16,17,18,
+	19,18,10,12,12,14,14,16,15,16,16,18,17,18,20,11,
+	13,13,15,15,16,17,18,17,18,19,19,19,11,13,13,15,
+	15,16,16,17,17,18,18,19,20,
 };
 
 static float _vq_quantthresh_res0_192_1024_5[] = {
-	-99, -93, -87, -81, -75, -71.5, -68.5, -63.5, 
-	-58.5, -53.5, -49, -45, -41, -37, -33, -29.5, 
-	-26, -22, -18.5, -15.5, -12.5, -9.5, -6.5, -4, 
-	-2.5, -1.5, -0.5, 0.5, 1.5, 2.5, 4, 6.5, 
-	9.5, 12.5, 15.5, 18.5, 22, 26, 29.5, 33, 
-	37, 41, 45, 49, 53.5, 58.5, 63.5, 68.5, 
-	71.5, 75, 81, 87, 93, 99, 
+	-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_192_1024_5[] = {
-	   54,   53,   52,   51,   50,   49,   48,   47,
-	   46,   45,   44,   43,   42,   41,   40,   39,
-	   38,   37,   36,   35,   34,   33,   32,   31,
-	   30,   29,   28,    0,    1,    2,    3,    4,
-	    5,    6,    7,    8,    9,   10,   11,   12,
-	   13,   14,   15,   16,   17,   18,   19,   20,
-	   21,   22,   23,   24,   25,   26,   27,
+	   11,    9,    7,    5,    3,    1,    0,    2,
+	    4,    6,    8,   10,   12,
 };
 
 static encode_aux_threshmatch _vq_auxt_res0_192_1024_5 = {
         _vq_quantthresh_res0_192_1024_5,
         _vq_quantmap_res0_192_1024_5,
-	55,
-	55
+	13,
+	13
 };
 
 static static_codebook _vq_book_res0_192_1024_5 = {
-	1, 55,
+	2, 169,
         _vq_lengthlist_res0_192_1024_5,
-	1, -522616832, 1611661312, 8, 0,
+	1, -531103744, 1611661312, 4, 0,
         _vq_quantlist_res0_192_1024_5,
         NULL,
         &_vq_auxt_res0_192_1024_5,

1.3       +8 -4      vorbis/lib/books/res0_192_1024aux.vqh

Index: res0_192_1024aux.vqh
===================================================================
RCS file: /usr/local/cvsroot/vorbis/lib/books/res0_192_1024aux.vqh,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- res0_192_1024aux.vqh	2000/11/17 11:47:21	1.2
+++ res0_192_1024aux.vqh	2001/01/22 01:38:31	1.3
@@ -20,13 +20,17 @@
 #include "codebook.h"
 
 static long _huff_lengthlist_res0_192_1024aux[] = {
-	 3, 7,10, 9,11,13, 5, 3, 5, 7,10,13, 9, 5, 4, 4,
-	 9,12, 8, 6, 4, 2, 6,10, 9, 9, 8, 5, 4, 7,11,11,
-	10, 7, 5, 7,
+	 2, 7,12,11,16,10,14,11,17,22, 5, 4, 7, 8,11, 9,
+	10,10,14,22, 9, 6, 6, 6, 8, 8, 8,11,15,20, 9, 6,
+	 6, 5, 6, 6, 7, 9,13,21,15,10, 7, 5, 5, 6, 6,11,
+	18,21, 9, 8, 7, 5, 6, 5, 6, 7,13,21,14, 9, 8, 6,
+	 6, 5, 5, 8,13,20, 9, 9,10, 8, 9, 6, 6, 5, 9,15,
+	11,12,13,11,13, 9, 8, 6, 8,14,13,12,13,12,13,10,
+	 9, 5, 8,13,
 };
 
 static static_codebook _huff_book_res0_192_1024aux = {
-	2, 36,
+	2, 100,
         _huff_lengthlist_res0_192_1024aux,
         0, 0, 0, 0, 0,
         NULL,

1.3       +13 -14    vorbis/lib/books/res0_192_128_1.vqh

Index: res0_192_128_1.vqh
===================================================================
RCS file: /usr/local/cvsroot/vorbis/lib/books/res0_192_128_1.vqh,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- res0_192_128_1.vqh	2000/11/17 11:47:21	1.2
+++ res0_192_128_1.vqh	2001/01/22 01:38:31	1.3
@@ -1,13 +1,12 @@
 /********************************************************************
  *                                                                  *
- * THIS FILE IS PART OF THE Ogg Vorbis SOFTWARE CODEC SOURCE CODE.  *
+ * THIS FILE IS PART OF THE OggVorbis 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 GNU LESSER/LIBRARY PUBLIC LICENSE, WHICH IS INCLUDED WITH    *
+ * THIS SOURCE. PLEASE READ THESE TERMS BEFORE DISTRIBUTING.        *
  *                                                                  *
- * THE OggSQUISH SOURCE CODE IS (C) COPYRIGHT 1994-1999             *
- * by 1999 Monty <monty at xiph.org> and The XIPHOPHORUS Company       *
- * http://www.xiph.org/                                             *
+ * THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2001             *
+ * by the XIPHOPHORUS Company, http://www.xiph.org/                 *
  *                                                                  *
  ********************************************************************
 
@@ -21,17 +20,17 @@
 
 static long _vq_quantlist_res0_192_128_1[] = {
         1,
-	2,
         0,
+	2,
 };
 
 static long _vq_lengthlist_res0_192_128_1[] = {
-	 1, 4, 4, 5, 6, 6, 5, 6, 6, 5, 7, 7, 7, 8, 8, 7,
-	 8, 8, 5, 7, 7, 7, 8, 8, 7, 8, 8, 7, 8, 8, 9,10,
-	 9, 8, 9, 9, 9,10, 9, 9,10,11,10,11,11, 9, 9,10,
-	10,11,10,10,11,11, 7, 8, 8, 8, 9, 9, 9,10,10, 9,
-	10, 9,10,11,11,10,10,11, 9, 9,10,10,11,11,10,11,
-	10,
+	 2, 4, 4, 5, 6, 6, 5, 6, 6, 5, 6, 6, 6, 8, 8, 6,
+	 8, 8, 5, 6, 6, 6, 8, 8, 6, 8, 8, 5, 7, 7, 7, 8,
+	 8, 6, 8, 8, 7, 8, 8, 8, 9,10, 8,10, 9, 7, 8, 8,
+	 8,10, 9, 8, 9,10, 5, 7, 7, 7, 8, 8, 7, 8, 8, 7,
+	 8, 8, 8,10, 9, 8, 9,10, 7, 8, 8, 8, 9,10, 8,10,
+	 9,
 };
 
 static float _vq_quantthresh_res0_192_128_1[] = {
@@ -39,7 +38,7 @@
 };
 
 static long _vq_quantmap_res0_192_128_1[] = {
-	    2,    0,    1,
+	    1,    0,    2,
 };
 
 static encode_aux_threshmatch _vq_auxt_res0_192_128_1 = {

1.3       +164 -52   vorbis/lib/books/res0_192_128_2.vqh

Index: res0_192_128_2.vqh
===================================================================
RCS file: /usr/local/cvsroot/vorbis/lib/books/res0_192_128_2.vqh,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- res0_192_128_2.vqh	2000/11/17 11:47:21	1.2
+++ res0_192_128_2.vqh	2001/01/22 01:38:31	1.3
@@ -1,13 +1,12 @@
 /********************************************************************
  *                                                                  *
- * THIS FILE IS PART OF THE Ogg Vorbis SOFTWARE CODEC SOURCE CODE.  *
+ * THIS FILE IS PART OF THE OggVorbis 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 GNU LESSER/LIBRARY PUBLIC LICENSE, WHICH IS INCLUDED WITH    *
+ * THIS SOURCE. PLEASE READ THESE TERMS BEFORE DISTRIBUTING.        *
  *                                                                  *
- * THE OggSQUISH SOURCE CODE IS (C) COPYRIGHT 1994-1999             *
- * by 1999 Monty <monty at xiph.org> and The XIPHOPHORUS Company       *
- * http://www.xiph.org/                                             *
+ * THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2001             *
+ * by the XIPHOPHORUS Company, http://www.xiph.org/                 *
  *                                                                  *
  ********************************************************************
 
@@ -20,75 +19,188 @@
 #include "codebook.h"
 
 static long _vq_quantlist_res0_192_128_2[] = {
-	2,
         3,
+	2,
         4,
         1,
+	5,
         0,
+	6,
 };
 
 static long _vq_lengthlist_res0_192_128_2[] = {
-	 4, 5, 6, 5, 6, 5, 6, 7, 6, 7, 7, 8,10, 8,10, 5,
-	 6, 7, 6, 8, 8, 8,10, 8,10, 6, 7, 8, 7, 8, 7, 7,
-	 9, 7, 9, 9, 9,11, 9,11, 7, 7, 9, 7, 9, 9, 9,11,
-	 9,11, 8, 9,11, 9,11, 9,10,12,10,11,11,11,13,12,
-	13, 9,10,12,10,11,11,11,13,12,13, 6, 7, 8, 7, 8,
-	 7, 7, 9, 7, 9, 9,10,11, 9,11, 7, 7, 9, 7, 9, 9,
-	 9,11, 9,11, 8, 9,11, 9,11, 9,10,12,10,12,11,12,
-	13,11,13, 9,10,12,10,12,11,11,13,12,13, 7, 7, 9,
-	 7, 9, 7, 8,10, 8,10, 9,10,12,10,11, 7, 8,10, 8,
-	10, 9,10,11,10,12, 8, 8,10, 8,10, 8, 8,10, 9,11,
-	10,10,12,11,13, 8, 9,10, 8,10,10,10,12,11,12,10,
-	10,12,10,12,10,10,12,11,12,12,11,13,12,14,10,11,
-	13,11,12,12,12,14,12,14, 8, 8,10, 8,10, 8, 9,10,
-	 9,10,10,11,12,10,12, 8, 9,10, 9,11,10,11,13,11,
-	12,10,10,12,10,12,10,11,13,11,12,11,13,14,11,13,
-	10,11,13,11,12,12,13,14,12,14, 9,10,12,10,12,10,
-	11,12,11,12,12,13,14,13,13,10,10,12,10,12,11,12,
-	14,12,14,10,11,12,11,12,11,11,13,11,13,12,13,14,
-	13,14,11,11,13,11,12,13,13,14,13,14,12,12,14,12,
-	14,12,13,14,12,15,14,13,14,14,15,12,13,14,13,14,
-	14,14,15,15,16,10,11,12,11,12,11,11,13,11,12,13,
-	13,14,13,14,11,11,13,11,13,13,13,14,13,14,12,13,
-	14,12,14,12,13,15,12,14,14,15,16,13,15,13,13,15,
-	13,15,15,14,16,15,15, 7, 7, 9, 7, 9, 7, 8, 9, 8,
-	10, 9,10,11,10,11, 8, 8,10, 8,10,10,10,11,10,11,
-	 8, 8,10, 8,10, 8, 9,11, 9,10,10,10,12,11,12, 8,
-	 8,10, 9,10,10,11,12,11,13,10,10,12,10,12,10,11,
-	13,11,12,12,13,14,12,15,10,10,13,11,12,12,11,13,
-	13,14, 8, 8,10, 8,10, 8, 9,10, 9,10,10,11,12,10,
-	12, 8, 9,10, 8,11,10,11,13,10,12,10,10,12,10,12,
-	11,11,12,11,13,12,12,14,12,14,10,11,13,10,12,12,
-	12,15,11,13, 9,10,12,10,12,10,10,12,11,12,12,12,
-	13,12,13,10,10,12,11,13,12,12,14,12,14,10,11,12,
-	10,12,11,11,13,11,13,12,13,15,13,15,11,11,13,11,
-	13,12,13,14,13,15,12,12,14,12,13,12,13,15,13,15,
-	14,14,17,16,15,12,12,14,13,14,14,14,15,14,17,10,
-	10,12,11,12,11,11,13,11,12,12,12,14,13,15,11,11,
-	13,11,13,12,13,14,13,14,13,13,14,12,14,13,13,14,
-	13,15,15,14,16,14,16,12,13,15,13,14,14,14,16,14,
+	 4, 5, 5, 7, 7,10,10, 5, 6, 6, 8, 8,12,12, 5, 6,
+	 6, 8, 9,12,12, 7, 8, 8,12,13,15,16, 7, 8, 9,12,
+	12,15,15,10,12,12,17,16,17,18,10,12,12,15,17,18,
+	17, 5, 7, 6, 9, 8,12,12, 7, 8, 8,10,10,13,13, 7,
+	 8, 8,10,10,13,13, 9,10,10,14,14,16,15, 9,10,10,
+	13,14,16,18,12,14,13,17,16,18,18,12,14,13,16,18,
+	17,18, 5, 6, 7, 8, 8,12,12, 7, 8, 8,10,10,13,13,
+	 7, 8, 8,10,10,13,13, 9,10,10,14,14,18,15, 9,10,
+	10,14,13,17,16,12,14,13,17,16,18,18,12,13,14,15,
+	16,17,17, 7, 9, 9,12,12,15,14, 9,10,10,14,13,18,
+	16, 9,10,10,14,14,16,16,13,14,14,18,18,18,18,12,
+	14,14,18,18,18,18,14,18,15,18,18,18,18,14,17,17,
+	18,18,18,18, 7, 9, 9,12,12,14,14, 9,10,10,14,14,
+	15,15, 9,10,10,13,15,16,15,13,14,14,17,16,18,18,
+	12,14,15,17,16,18,18,16,17,17,18,18,18,18,16,18,
+	16,18,18,18,18,10,12,12,16,15,16,16,12,14,13,17,
+	17,18,17,13,14,14,16,16,18,17,15,17,18,18,18,18,
+	18,17,18,17,18,16,18,18,18,18,18,18,18,18,18,18,
+	18,18,18,18,18,18,10,12,13,15,14,17,18,12,14,13,
+	17,16,18,18,12,14,14,17,17,18,17,18,16,18,18,18,
+	18,18,16,17,18,18,18,18,18,16,18,18,18,18,18,18,
+	17,18,18,18,18,18,18, 6, 7, 7, 9, 9,12,12, 7, 8,
+	 8,10,10,14,13, 7, 8, 8,10,10,13,14, 9,11,10,14,
+	15,16,18, 9,10,10,14,14,16,17,12,13,14,17,16,18,
+	18,12,14,14,17,18,18,18, 7, 8, 8,10,10,13,13, 8,
+	 9, 9,12,11,15,14, 8, 9, 9,11,11,14,14,11,12,12,
+	16,15,16,18,10,12,12,17,17,17,18,14,15,16,18,18,
+	17,18,13,15,16,17,16,18,18, 7, 8, 8,10,10,13,13,
+	 8, 9, 9,11,11,14,14, 8, 9, 9,11,12,14,14,10,12,
+	11,16,15,18,17,11,12,12,15,16,18,18,14,15,15,18,
+	16,18,18,14,17,15,18,18,18,18, 9,11,10,14,14,18,
+	16,10,12,12,15,16,17,18,10,12,12,16,15,16,18,14,
+	15,16,16,18,17,18,14,16,17,18,17,18,18,16,17,18,
+	18,18,18,18,17,18,16,18,18,18,18, 9,10,11,15,14,
+	16,16,10,12,11,14,15,18,17,11,12,12,15,16,16,17,
+	14,15,15,18,18,18,18,14,18,17,18,18,18,18,18,18,
+	17,18,18,18,18,17,18,18,18,18,18,17,13,14,15,17,
+	16,18,18,13,14,16,18,17,18,18,14,17,15,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,12,14,13,
+	15,18,17,17,14,16,15,18,18,18,18,14,16,15,18,17,
+	18,18,17,17,18,18,18,18,18,16,18,18,18,18,18,18,
+	17,18,18,18,18,18,18,18,18,18,18,18,18,18, 5, 7,
+	 7, 9, 9,12,12, 7, 8, 8,10,10,13,13, 7, 8, 8,10,
+	10,13,13, 9,10,10,14,13,16,18, 9,10,10,13,15,17,
+	17,12,13,14,17,16,18,18,12,14,13,16,16,18,18, 7,
+	 8, 8,10,10,14,13, 8, 9, 9,12,11,14,15, 8, 9, 9,
+	11,11,14,15,10,12,11,16,16,18,17,10,11,12,16,15,
+	16,18,14,15,14,17,18,18,18,13,15,15,17,18,18,18,
+	 7, 8, 8,10,10,13,13, 8, 9, 9,11,11,14,14, 8, 9,
+	 9,11,11,14,15,10,12,12,15,15,18,18,10,12,11,15,
+	15,18,18,15,16,14,17,18,18,18,14,14,17,18,18,18,
+	18, 9,11,10,13,14,15,17,10,12,12,15,15,18,18,10,
+	11,12,14,15,18,17,16,16,16,18,18,18,18,14,17,17,
+	16,18,18,18,17,18,18,18,18,18,18,18,17,18,18,18,
+	18,18, 9,10,11,14,15,17,16,10,12,12,14,15,17,18,
+	10,12,12,16,14,17,18,14,17,17,18,18,18,18,15,16,
+	15,17,17,18,18,18,18,18,18,18,18,18,17,18,17,18,
+	18,18,18,12,15,15,17,17,17,18,14,15,17,17,17,18,
+	18,14,15,15,18,18,18,18,18,18,18,18,18,18,18,17,
+	17,18,18,18,18,18,18,18,18,18,18,18,18,17,18,18,
+	18,18,18,18,13,14,14,17,16,18,17,14,16,17,16,18,
+	18,18,14,15,14,18,18,18,18,17,18,18,18,18,18,18,
+	18,17,17,18,18,18,18,18,18,18,18,18,18,18,18,18,
+	18,18,18,18,18, 8, 9, 9,13,13,15,16, 9,11,11,14,
+	13,16,17, 9,11,11,14,14,16,16,14,15,14,18,18,18,
+	18,13,15,16,17,17,18,17,16,17,16,18,18,18,18,16,
+	17,18,18,18,18,17, 9,11,11,14,14,18,17,11,12,12,
+	16,15,17,18,11,13,12,15,15,17,18,15,15,17,17,18,
+	18,18,14,15,16,18,17,18,18,18,18,18,18,18,18,18,
+	17,16,18,18,18,18,18, 9,11,11,14,15,18,15,11,12,
+	12,16,15,18,18,10,12,12,15,15,17,18,15,17,18,18,
+	17,18,18,14,15,17,18,18,18,18,18,17,18,18,18,18,
+	18,18,18,18,18,18,18,18,13,15,14,17,16,18,18,14,
+	16,16,18,18,18,18,15,18,16,17,18,18,18,18,17,18,
+	15,18,18,18,17,18,18,18,18,18,18,18,18,18,18,18,
+	18,18,18,18,18,18,18,18,18,13,15,15,18,18,18,18,
+	14,16,16,18,18,18,17,16,16,16,18,18,18,18,18,18,
+	18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,
+	17,18,17,18,18,18,18,18,18,18,17,18,18,18,18,18,
+	18,17,18,18,18,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,
+	17,18,18,18,18,18,18,18,18,18,18,18,17,18,18,18,
+	18,18,18,18,17,18,17,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,18,18,18,18,18, 8, 9, 9,13,
+	13,16,15, 9,11,11,14,14,18,17, 9,11,11,15,14,18,
+	18,13,14,15,16,17,17,18,13,15,15,17,18,18,18,16,
+	16,18,18,18,18,18,16,18,17,18,18,18,18, 9,11,10,
+	14,14,17,17,11,13,12,15,14,18,18,10,12,12,15,16,
+	15,17,15,17,16,18,17,18,18,14,17,16,18,18,18,18,
+	17,18,18,18,18,18,18,18,18,16,18,18,18,18, 9,11,
+	11,14,14,17,16,11,12,12,14,15,17,18,11,12,12,16,
+	15,18,17,15,15,17,18,18,18,18,15,17,16,18,18,18,
+	18,18,17,18,18,18,18,16,17,18,18,18,18,18,18,13,
+	14,14,16,18,18,18,14,18,16,18,17,18,18,14,15,15,
+	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,18,18,18,18,
+	13,15,15,16,18,18,18,16,15,16,18,18,18,18,15,17,
+	16,18,18,18,18,18,18,18,18,18,18,18,17,18,16,18,
+	15,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,
+	17,16,18,18,18,18,18,18,16,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,18,18,18,
+	18,18,16,17,17,18,18,18,18,18,18,18,18,18,18,18,
+	16,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,18,18,18,18,
+	18,18,16,11,13,14,16,17,18,18,13,15,15,17,16,18,
+	17,13,15,15,16,18,18,18,17,18,18,18,18,18,18,16,
+	17,16,18,18,18,18,18,18,18,18,18,18,18,18,18,18,
+	17,18,18,18,13,14,14,17,18,18,18,14,16,16,16,18,
+	18,16,14,16,14,18,18,18,18,18,17,18,18,18,18,18,
+	17,18,17,18,18,18,18,18,18,18,18,18,18,18,18,18,
+	17,18,18,18,18,13,14,15,17,18,18,18,14,15,17,17,
+	17,18,18,14,15,16,17,18,18,18,18,18,18,18,18,18,
+	18,17,18,18,18,18,18,18,17,18,18,18,18,18,18,18,
+	18,18,18,18,18,18,16,17,18,18,18,18,18,18,18,18,
+	18,18,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,16,18,18,18,18,18,18,18,16,
+	18,18,18,18,18,16,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,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,18,18,18,18,
+	18,18,18,18,18,18,18,18,18,18,18,18,18,18,17,18,
+	15,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,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,18,18,18,11,13,13,16,15,18,
+	18,13,15,15,18,16,16,18,13,15,15,17,18,17,18,17,
+	18,17,18,18,18,18,17,18,16,18,18,18,18,18,18,18,
+	18,18,18,18,18,18,18,18,18,18,18,12,15,13,16,18,
+	18,18,14,16,17,17,17,18,17,15,15,17,17,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,13,14,15,16,
+	16,17,18,15,17,16,17,18,18,18,16,16,16,18,18,18,
+	18,18,17,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,17,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,18,18,18,18,18,18,18,18,18,18,18,18,18,18,
+	16,17,18,18,18,16,17,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,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,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,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,18,18,18,18,18,18,18,
+	18,18,18,18,18,18,18,18,18,18,18,17,17,17,17,17,
         15,
 };
 
 static float _vq_quantthresh_res0_192_128_2[] = {
-	-1.5, -0.5, 0.5, 1.5, 
+	-2.5, -1.5, -0.5, 0.5, 1.5, 2.5, 
 };
 
 static long _vq_quantmap_res0_192_128_2[] = {
-	    4,    3,    0,    1,    2,
+	    5,    3,    1,    0,    2,    4,    6,
 };
 
 static encode_aux_threshmatch _vq_auxt_res0_192_128_2 = {
         _vq_quantthresh_res0_192_128_2,
         _vq_quantmap_res0_192_128_2,
-	5,
-	5
+	7,
+	7
 };
 
 static static_codebook _vq_book_res0_192_128_2 = {
-	4, 625,
+	4, 2401,
         _vq_lengthlist_res0_192_128_2,
-	1, -533725184, 1611661312, 3, 0,
+	1, -533200896, 1611661312, 3, 0,
         _vq_quantlist_res0_192_128_2,
         NULL,
         &_vq_auxt_res0_192_128_2,

1.3       +217 -23   vorbis/lib/books/res0_192_128_3.vqh

Index: res0_192_128_3.vqh
===================================================================
RCS file: /usr/local/cvsroot/vorbis/lib/books/res0_192_128_3.vqh,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- res0_192_128_3.vqh	2000/11/17 11:47:21	1.2
+++ res0_192_128_3.vqh	2001/01/22 01:38:31	1.3
@@ -1,13 +1,12 @@
 /********************************************************************
  *                                                                  *
- * THIS FILE IS PART OF THE Ogg Vorbis SOFTWARE CODEC SOURCE CODE.  *
+ * THIS FILE IS PART OF THE OggVorbis 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 GNU LESSER/LIBRARY PUBLIC LICENSE, WHICH IS INCLUDED WITH    *
+ * THIS SOURCE. PLEASE READ THESE TERMS BEFORE DISTRIBUTING.        *
  *                                                                  *
- * THE OggSQUISH SOURCE CODE IS (C) COPYRIGHT 1994-1999             *
- * by 1999 Monty <monty at xiph.org> and The XIPHOPHORUS Company       *
- * http://www.xiph.org/                                             *
+ * THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2001             *
+ * by the XIPHOPHORUS Company, http://www.xiph.org/                 *
  *                                                                  *
  ********************************************************************
 
@@ -20,46 +19,241 @@
 #include "codebook.h"
 
 static long _vq_quantlist_res0_192_128_3[] = {
-	5,
-	6,
-	7,
-	8,
+	24,
+	23,
+	25,
+	22,
+	26,
+	21,
+	27,
+	20,
+	28,
+	19,
+	29,
+	18,
+	30,
+	17,
+	31,
+	16,
+	32,
+	15,
+	33,
+	14,
+	34,
+	13,
+	35,
+	12,
+	36,
+	11,
+	37,
         10,
+	38,
+	9,
+	39,
+	8,
+	40,
+	7,
+	41,
+	6,
+	42,
+	5,
+	43,
         4,
+	44,
         3,
+	45,
         2,
+	46,
+	1,
+	47,
         0,
+	48,
 };
 
 static long _vq_lengthlist_res0_192_128_3[] = {
-	 3, 4, 5, 6, 8, 4, 5, 6, 8, 4, 4, 6, 7,10, 4, 6,
-	 7,10, 5, 6, 7, 9,11, 6, 7, 8,11, 7, 7, 9,10,12,
-	 7, 9,10,12, 9,10,11,12,14,10,11,12,14, 4, 5, 6,
-	 7,10, 5, 6, 7,10, 5, 6, 7, 9,11, 6, 7, 9,11, 7,
-	 7, 9,10,13, 7, 9,10,12, 9,10,11,12,14,10,11,13,
-	14,
+	 4, 4, 4, 6, 6, 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,
+	 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9,10,10,
+	10, 5, 5, 5, 6, 6, 7, 7, 8, 8, 8, 8, 8, 8, 9, 9,
+	 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9,10,
+	 9, 9, 9, 9, 9, 9, 9, 9, 9, 9,10,10,10,10,10,10,
+	10,10, 5, 5, 5, 6, 6, 7, 7, 7, 8, 8, 8, 8, 8, 9,
+	 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9,10, 9,
+	10, 9, 9, 9,10, 9, 9, 9,10,10,10,10,10,10,10,10,
+	10,10,10, 7, 7, 7, 8, 8, 9, 9,10, 9,10,10,10,10,
+	11,11,11,11,11,11,11,11,11,11,11,11,12,11,11,11,
+	11,12,11,11,11,11,11,11,11,11,11,12,12,12,12,12,
+	12,12,12,12, 7, 7, 7, 8, 8, 9, 9, 9,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,12,11,11,12,11,12,11,
+	12,12,12,12,12, 9, 9, 9,10,10,11,11,11,11,12,12,
+	12,13,12,12,13,13,13,12,12,13,13,13,13,13,13,14,
+	13,13,13,13,13,14,13,13,13,14,13,13,13,13,13,13,
+	14,14,14,13,13,13, 9, 9, 9,10,10,11,11,11,11,12,
+	12,12,12,13,12,12,12,13,12,13,13,13,13,13,13,13,
+	12,13,12,13,14,13,13,13,13,13,13,13,13,14,13,14,
+	13,14,14,13,13,14,14, 9,10,10,11,11,12,12,13,13,
+	13,13,13,14,14,14,13,14,15,13,13,14,14,14,16,15,
+	14,15,14,15,13,15,14,14,15,15,14,15,14,14,14,15,
+	14,15,15,14,15,15,15,15, 9,10,10,12,11,12,12,13,
+	12,13,13,14,13,14,13,14,14,15,14,13,14,14,15,14,
+	14,14,15,14,14,15,15,15,14,14,15,14,15,14,15,15,
+	14,14,14,14,14,14,14,15,16,10,11,11,13,12,13,13,
+	13,13,14,14,14,14,15,14,14,14,15,14,14,14,15,14,
+	14,16,15,15,17,14,15,16,15,15,16,16,16,14,15,15,
+	15,15,15,16,16,15,17,15,16,16,10,11,11,12,12,14,
+	13,13,13,13,14,14,14,14,15,14,14,15,15,15,15,15,
+	15,15,14,15,15,15,14,16,15,15,17,16,15,16,16,16,
+	15,15,15,16,15,16,15,14,15,16,17,12,12,12,13,14,
+	14,14,14,14,14,14,15,16,15,15,16,17,14,16,16,16,
+	15,15,17,16,14,17,15,16,15,16,16,16,16,16,16,15,
+	15,17,15,15,17,17,16,16,17,16,16,16,11,12,12,13,
+	14,14,14,14,15,14,15,15,15,17,15,16,15,16,16,15,
+	16,14,16,16,16,16,17,16,16,15,16,15,17,15,15,16,
+	16,16,17,17,15,16,17,16,15,16,15,16,16,12,13,13,
+	14,14,14,15,15,15,15,16,15,15,15,16,16,15,15,16,
+	15,17,17,16,16,16,17,15,16,17,16,17,17,16,17,16,
+	17,17,16,16,17,17,17,17,17,16,17,16,17,17,12,13,
+	13,14,15,14,14,14,15,15,15,16,15,15,16,15,16,16,
+	15,16,15,15,16,17,17,17,16,16,15,17,16,16,16,16,
+	15,17,16,17,16,16,17,16,16,16,17,16,16,17,16,12,
+	13,13,14,15,15,16,15,16,16,16,17,16,16,17,16,16,
+	17,16,17,15,16,17,15,17,17,17,16,16,16,17,16,17,
+	17,16,17,16,16,17,16,17,16,17,16,17,16,17,17,15,
+	12,13,13,16,14,16,15,16,15,16,14,17,16,15,17,17,
+	17,17,17,16,16,16,17,16,16,17,17,17,17,17,17,17,
+	17,17,16,17,17,17,16,17,16,17,16,17,16,17,16,17,
+	16,13,15,14,16,15,15,16,16,15,16,15,16,17,15,17,
+	17,16,16,17,17,16,17,16,17,16,16,16,17,16,16,17,
+	17,15,16,17,16,17,17,16,17,16,17,17,17,16,16,17,
+	17,17,13,14,13,15,15,16,15,16,16,15,15,16,17,16,
+	17,17,17,16,17,16,16,17,17,15,17,16,16,17,16,17,
+	17,16,17,17,16,17,17,17,16,16,16,17,17,17,17,16,
+	16,16,17,14,14,14,16,14,17,16,15,16,16,16,17,17,
+	16,17,17,17,16,17,17,17,17,17,17,17,17,17,17,17,
+	17,17,17,17,16,16,16,17,17,17,17,16,17,17,17,17,
+	16,17,17,17,14,16,14,15,14,15,16,16,16,16,16,16,
+	17,17,16,17,17,17,17,17,17,17,16,16,17,17,17,17,
+	16,16,17,16,17,17,17,16,17,16,17,16,17,16,15,17,
+	17,17,17,17,16,14,14,14,15,16,15,17,15,16,17,17,
+	16,16,17,17,17,17,16,16,17,17,17,16,17,16,17,17,
+	17,17,17,17,17,17,17,17,17,17,17,17,17,16,17,17,
+	17,17,17,17,17,17,14,15,15,15,15,17,16,17,17,17,
+	17,16,16,16,17,17,17,16,17,16,17,17,17,17,16,17,
+	16,17,17,17,17,16,17,16,16,17,16,17,16,17,17,16,
+	17,17,17,17,17,16,17,14,16,15,15,15,17,16,16,16,
+	17,17,16,16,16,17,17,16,17,17,17,17,17,17,17,17,
+	17,16,17,17,17,17,17,16,17,16,17,17,17,17,17,17,
+	17,17,16,17,17,17,17,17,14,15,16,16,15,16,16,16,
+	17,16,17,17,17,17,16,17,17,17,17,17,17,17,17,17,
+	17,17,17,16,17,16,16,17,17,17,16,16,17,17,17,16,
+	17,17,16,16,17,17,16,17,17,14,16,14,15,16,16,17,
+	17,16,17,17,17,17,17,17,17,17,17,17,16,17,17,17,
+	16,17,17,17,17,17,17,17,17,17,17,17,17,16,16,17,
+	17,17,17,17,17,17,17,17,17,17,16,15,16,16,16,16,
+	15,16,17,16,17,17,17,17,17,16,17,17,17,16,17,17,
+	17,17,16,17,16,17,17,17,17,17,17,17,17,17,16,16,
+	17,17,16,17,17,17,16,17,17,17,17,15,16,16,16,16,
+	17,17,17,17,17,17,16,17,17,17,16,17,17,17,16,17,
+	17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,
+	17,17,17,17,17,17,17,17,17,17,17,17,16,16,14,17,
+	17,16,15,16,15,17,17,17,17,17,17,17,16,17,17,16,
+	17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,
+	17,17,16,17,16,17,17,17,17,17,17,17,17,16,16,15,
+	17,16,17,17,16,17,16,17,16,16,17,17,17,17,17,17,
+	17,17,16,17,17,17,17,17,17,17,16,17,17,17,17,16,
+	17,16,17,17,17,17,17,17,17,17,17,17,17,17,15,15,
+	15,16,16,16,17,17,15,16,17,16,17,17,16,17,17,17,
+	17,17,17,17,17,16,17,17,16,17,17,17,16,17,17,16,
+	17,17,16,17,17,17,17,17,17,17,17,17,17,17,17,14,
+	16,15,16,16,16,16,17,16,17,17,17,16,16,17,17,17,
+	17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,
+	17,17,17,17,17,16,17,17,17,16,17,17,17,17,17,17,
+	15,16,16,16,17,17,17,16,17,17,17,17,17,17,17,17,
+	17,17,17,17,17,17,17,17,17,17,17,16,17,16,17,17,
+	17,16,17,17,17,17,17,17,17,17,17,17,17,17,17,17,
+	17,15,15,15,16,17,17,17,17,17,16,17,16,17,17,17,
+	17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,
+	17,17,17,16,17,17,17,17,17,17,17,17,17,17,17,17,
+	17,17,15,16,16,17,17,16,17,17,17,17,17,17,17,17,
+	17,17,17,17,16,17,17,17,17,17,17,17,17,17,17,17,
+	17,17,17,17,17,17,17,16,16,16,16,17,17,17,17,17,
+	17,17,17,17,16,16,17,17,17,16,17,17,17,17,17,17,
+	17,17,17,17,17,17,17,17,17,16,17,17,17,17,17,17,
+	17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,
+	17,17,17,17,16,16,16,16,17,17,17,17,16,16,17,17,
+	17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,
+	16,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,
+	17,17,17,17,17,17,17,17,17,17,17,16,17,17,17,17,
+	17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,
+	17,17,17,17,16,17,17,17,17,16,17,17,17,17,17,17,
+	17,17,17,17,17,17,17,16,16,16,16,16,16,17,17,17,
+	17,17,17,17,17,16,17,17,17,17,17,17,17,17,17,17,
+	17,17,17,17,17,17,16,17,17,17,17,17,17,17,17,17,
+	17,17,17,17,17,17,17,17,16,17,17,17,17,17,17,17,
+	17,17,17,17,17,17,17,17,17,17,17,17,17,17,16,16,
+	17,17,17,17,17,17,17,17,17,17,17,16,16,17,17,16,
+	17,17,17,17,17,17,17,17,16,17,17,17,17,17,17,17,
+	17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,
+	17,17,17,17,16,17,17,17,17,17,17,17,17,17,17,17,
+	17,17,17,17,17,17,17,17,17,16,17,17,16,17,17,17,
+	17,17,17,17,16,17,17,17,17,17,17,17,17,17,17,16,
+	17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,
+	17,17,17,17,17,17,17,17,17,17,17,17,16,17,17,17,
+	17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,
+	17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,
+	17,16,17,17,17,17,17,17,17,17,17,17,17,17,17,17,
+	17,16,17,17,17,17,17,17,17,17,17,17,17,17,17,17,
+	17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,
+	17,17,17,17,17,17,17,17,17,17,17,17,17,16,17,17,
+	17,17,17,17,17,17,17,17,16,17,17,17,17,17,17,17,
+	17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,
+	17,17,17,17,17,17,17,17,17,17,17,17,17,17,16,17,
+	17,17,17,16,17,17,17,17,17,17,17,17,17,17,17,17,
+	17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,
+	17,17,17,17,17,17,17,17,17,17,17,17,17,17,16,17,
+	17,17,17,17,17,16,17,17,17,17,17,17,17,17,17,17,
+	17,17,17,17,16,17,17,17,17,17,17,17,17,17,17,17,
+	17,17,17,17,17,17,17,17,16,17,17,17,17,17,17,17,
+	17,17,16,16,17,16,17,17,17,17,17,17,17,17,17,17,
+	17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,
+	17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,
+	17,17,16,17,17,17,17,17,17,17,17,17,17,17,17,17,
+	17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,
+	17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,
+	17,
 };
 
 static float _vq_quantthresh_res0_192_128_3[] = {
-	-4, -2.5, -1.5, -0.5, 0.5, 1.5, 2.5, 4, 
+	-23.5, -22.5, -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, 22.5, 23.5, 
 };
 
 static long _vq_quantmap_res0_192_128_3[] = {
-	    8,    7,    6,    5,    0,    1,    2,    3,
-	    4,
+	   47,   45,   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,   46,
+	   48,
 };
 
 static encode_aux_threshmatch _vq_auxt_res0_192_128_3 = {
         _vq_quantthresh_res0_192_128_3,
         _vq_quantmap_res0_192_128_3,
-	9,
-	9
+	49,
+	49
 };
 
 static static_codebook _vq_book_res0_192_128_3 = {
-	2, 81,
+	2, 2401,
         _vq_lengthlist_res0_192_128_3,
-	1, -531365888, 1611661312, 4, 0,
+	1, -526909440, 1611661312, 6, 0,
         _vq_quantlist_res0_192_128_3,
         NULL,
         &_vq_auxt_res0_192_128_3,

1.3       +515 -31   vorbis/lib/books/res0_192_128_4.vqh

Index: res0_192_128_4.vqh
===================================================================
RCS file: /usr/local/cvsroot/vorbis/lib/books/res0_192_128_4.vqh,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- res0_192_128_4.vqh	2000/11/17 11:47:21	1.2
+++ res0_192_128_4.vqh	2001/01/22 01:38:31	1.3
@@ -1,13 +1,12 @@
 /********************************************************************
  *                                                                  *
- * THIS FILE IS PART OF THE Ogg Vorbis SOFTWARE CODEC SOURCE CODE.  *
+ * THIS FILE IS PART OF THE OggVorbis 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 GNU LESSER/LIBRARY PUBLIC LICENSE, WHICH IS INCLUDED WITH    *
+ * THIS SOURCE. PLEASE READ THESE TERMS BEFORE DISTRIBUTING.        *
  *                                                                  *
- * THE OggSQUISH SOURCE CODE IS (C) COPYRIGHT 1994-1999             *
- * by 1999 Monty <monty at xiph.org> and The XIPHOPHORUS Company       *
- * http://www.xiph.org/                                             *
+ * THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2001             *
+ * by the XIPHOPHORUS Company, http://www.xiph.org/                 *
  *                                                                  *
  ********************************************************************
 
@@ -20,56 +19,541 @@
 #include "codebook.h"
 
 static long _vq_quantlist_res0_192_128_4[] = {
-	11,
-	12,
-	13,
-	14,
-	16,
-	19,
+	40,
+	39,
+	41,
+	38,
+	42,
+	37,
+	43,
+	36,
+	44,
+	35,
+	45,
+	34,
+	46,
+	33,
+	47,
+	32,
+	48,
+	31,
+	49,
+	30,
+	50,
+	29,
+	51,
+	28,
+	52,
+	27,
+	53,
+	26,
+	54,
+	25,
+	55,
+	24,
+	56,
+	23,
+	57,
         22,
+	58,
+	21,
+	59,
+	20,
+	60,
+	19,
+	61,
+	18,
+	62,
+	17,
+	63,
+	16,
+	64,
+	15,
+	65,
+	14,
+	66,
+	13,
+	67,
+	12,
+	68,
+	11,
+	69,
         10,
+	70,
         9,
+	71,
         8,
+	72,
+	7,
+	73,
         6,
+	74,
+	5,
+	75,
+	4,
+	76,
         3,
+	77,
+	2,
+	78,
+	1,
+	79,
         0,
+	80,
 };
 
 static long _vq_lengthlist_res0_192_128_4[] = {
-	 5, 5, 6, 6, 6, 6, 7, 5, 6, 6, 6, 6, 7, 5, 6, 6,
-	 6, 6, 6, 7, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 7,
-	 8, 7, 7, 7, 7, 7, 8, 7, 8, 8, 8, 7, 8, 9, 8, 8,
-	 8, 7, 8, 9, 9, 9,10, 9, 9, 9,10, 9,10, 9, 9, 9,
-	10,10,11,12,12,11,12,13,11,12,12,12,12,13,12,14,
-	14,14,14,14,14,13,14,14,14,15,15, 5, 6, 6, 6, 6,
-	 6, 7, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 7, 8, 7,
-	 7, 7, 7, 7, 8, 7, 8, 8, 8, 7, 8, 9, 8, 8, 8, 7,
-	 8, 9, 9, 9,10, 9, 9, 9,10, 9, 9, 9, 9, 9,10,10,
-	11,12,12,11,12,13,11,12,12,12,12,12,13,14,14,14,
-	14,14,15,13,14,14,14,14,15,
+	 5, 5, 5, 6, 6, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8,
+	 8, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9,
+	10, 9,10, 9,10,10,10,10,10,10,10,11,10,11,11,11,
+	12, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9,10,10,10,
+	10,10,10,10,10,10,11,11,10,11,10,11,11,12,12,12,
+	12, 5, 5, 5, 6, 6, 7, 7, 8, 8, 8, 8, 9, 8, 9, 9,
+	 9, 9, 9, 9, 9, 9, 9,10, 9,10,10,10,10,10,10,10,
+	10,10,10,10,10,10,10,11,11,11,11,11,11,11,12,11,
+	12,12, 9, 9, 9, 9, 9, 9, 9,10, 9,10,10,10,10,10,
+	10,11,11,11,11,11,11,11,11,11,11,12,12,12,12,12,
+	12,12, 5, 5, 5, 6, 6, 7, 7, 8, 8, 8, 8, 9, 8, 9,
+	 9, 9, 9, 9, 9, 9, 9, 9, 9,10, 9,10,10,10,10,10,
+	10,10,10,10,11,10,10,10,10,10,11,11,12,11,11,12,
+	12,12,12, 9, 9, 9, 9,10,10,10,10,10,10,10,10,10,
+	10,10,10,11,11,11,11,11,11,11,11,11,11,12,12,12,
+	12,12,12, 7, 7, 7, 8, 8, 9, 9,10,10,10,10,10,10,
+	11,11,11,11,11,11,11,12,11,11,12,11,11,12,12,12,
+	12,12,12,12,12,12,13,13,12,13,13,13,13,13,14,13,
+	13,14,14,14,11,11,11,11,11,11,11,12,12,12,12,13,
+	12,12,13,13,13,13,13,13,14,12,14,14,13,13,14,13,
+	14,16,13,14, 7, 7, 7, 8, 8, 9, 9,10,10,10,10,10,
+	10,11,11,11,11,11,11,11,11,11,11,11,11,11,12,12,
+	12,12,12,11,12,12,12,12,13,12,13,13,13,14,13,13,
+	12,13,14,13,13,11,11,11,11,11,11,11,11,11,12,12,
+	12,12,13,12,12,12,14,13,13,13,12,12,13,13,14,15,
+	14,13,12,14,14, 9, 9, 9,10,10,11,11,12,11,12,12,
+	12,12,12,12,13,12,13,13,13,13,12,14,13,13,14,14,
+	13,13,13,14,13,13,13,13,13,14,15,14,14,14,13,13,
+	15,16,15,15,15,15,12,12,14,13,13,13,13,13,14,14,
+	13,13,13,15,14,14,14,14,15,15,15,15,14,15,15,15,
+	14,14,16,15,15,15, 9, 9, 9,10,10,11,11,11,12,12,
+	12,12,12,13,12,13,13,14,13,13,12,13,13,14,14,14,
+	13,13,14,14,13,14,12,13,12,14,14,15,14,15,16,16,
+	14,14,14,15,15,15,14,12,13,12,12,13,12,14,13,15,
+	13,14,13,14,14,14,15,14,15,13,15,14,16,14,15,14,
+	15,16,16,16,14,15,15,10,10,10,11,12,12,13,12,13,
+	14,13,13,14,14,13,14,13,14,14,14,14,15,15,14,16,
+	14,14,14,14,15,15,15,14,14,15,15,14,13,16,15,15,
+	16,15,15,15,15,15,16,16,14,15,14,14,13,15,15,14,
+	14,14,16,15,14,16,16,16,14,16,16,15,15,16,15,15,
+	15,15,16,16,16,15,16,16,10,11,10,12,11,12,11,13,
+	12,13,13,13,14,14,13,15,14,14,13,14,14,14,14,14,
+	15,14,15,15,14,15,14,15,13,15,16,15,15,15,15,15,
+	16,16,16,16,15,16,15,16,15,14,14,14,14,13,15,14,
+	13,13,15,15,14,15,14,15,15,16,16,16,15,15,16,15,
+	15,16,16,15,16,15,16,15,15,11,11,12,12,12,14,14,
+	14,14,13,14,14,14,14,15,15,14,15,15,14,15,15,15,
+	14,16,15,16,14,15,15,15,15,14,15,15,15,15,16,15,
+	15,15,16,16,16,15,16,16,16,16,15,15,14,15,15,14,
+	15,15,14,15,16,15,15,16,15,16,15,16,16,16,15,16,
+	16,15,16,16,16,15,16,16,16,16,11,11,11,13,13,14,
+	14,14,13,15,15,14,14,15,15,14,15,14,14,14,16,15,
+	16,15,16,16,14,15,16,15,14,15,15,15,15,16,15,14,
+	15,15,15,16,16,16,16,15,16,16,16,15,14,16,15,14,
+	14,15,15,15,15,16,15,16,16,16,15,16,15,15,16,16,
+	16,16,16,15,15,16,15,16,16,16,15,12,12,13,14,14,
+	14,14,15,14,14,14,14,15,15,15,14,16,15,14,14,16,
+	15,15,16,15,16,16,16,15,15,16,14,16,16,15,16,16,
+	16,16,16,16,16,15,16,16,16,15,16,16,14,15,15,16,
+	15,16,16,15,16,15,16,16,16,16,15,16,16,16,16,16,
+	16,16,16,16,16,16,15,16,16,15,16,16,12,12,13,13,
+	13,16,15,16,14,14,14,14,16,16,16,15,15,14,15,16,
+	15,15,16,16,16,16,16,15,15,15,16,16,15,16,16,15,
+	15,16,15,16,15,15,16,16,15,16,16,16,16,15,15,16,
+	15,16,15,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,16,14,14,13,
+	13,15,14,15,15,15,15,15,15,15,16,16,15,15,16,15,
+	16,16,15,16,15,16,16,16,15,16,15,16,16,16,16,16,
+	15,15,16,16,15,16,16,15,16,16,16,15,16,16,16,15,
+	16,15,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,13,14,
+	13,14,15,15,15,16,16,16,16,16,14,16,14,15,14,15,
+	16,16,16,16,16,16,15,15,16,15,16,16,15,16,15,16,
+	16,16,15,16,16,16,16,16,16,16,15,16,16,16,16,15,
+	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,15,
+	15,14,15,15,14,15,15,15,16,16,15,15,16,16,16,16,
+	16,15,15,16,16,15,16,16,16,15,15,16,16,16,16,15,
+	16,15,16,15,16,16,16,16,16,16,16,16,16,16,16,16,
+	16,16,15,15,16,15,16,15,15,15,16,16,16,16,16,15,
+	16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
+	14,14,15,15,15,15,16,16,15,15,15,15,16,15,15,16,
+	16,16,16,16,16,15,16,16,16,16,15,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,15,15,16,16,16,16,15,16,16,16,16,16,16,16,16,
+	16,15,14,14,16,15,16,16,16,16,15,15,15,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,15,16,
+	16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
+	16,16,15,14,14,16,16,16,15,16,15,15,16,16,15,15,
+	16,15,16,16,16,16,16,16,16,16,15,16,16,16,16,16,
+	16,15,16,15,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,16,16,16,16,16,16,16,16,16,16,16,16,16,
+	16,16,16,15,14,15,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,
+	15,16,16,16,16,16,16,15,16,15,16,16,16,16,16,16,
+	16,16,16,16,16,15,16,16,16,16,15,15,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,14,16,16,16,16,16,15,16,16,15,
+	16,15,16,16,16,16,16,16,16,15,16,15,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,15,16,15,16,16,16,
+	16,16,15,16,16,16,16,16,16,16,16,16,16,16,16,16,
+	16,16,16,16,16,15,14,16,16,15,16,16,16,16,16,16,
+	15,16,15,16,16,15,16,16,16,16,16,16,16,16,15,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,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,15,15,15,16,15,15,16,15,15,16,
+	15,16,16,16,16,16,15,16,16,16,16,16,16,16,16,16,
+	15,16,16,15,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,15,15,16,16,16,16,16,16,
+	16,15,16,16,16,16,16,16,16,16,16,15,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,15,16,16,16,16,16,16,16,16,16,
+	16,16,16,16,16,16,16,16,16,16,15,15,16,16,16,16,
+	16,16,16,16,16,16,16,16,16,16,16,16,16,15,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,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,15,16,16,16,16,
+	16,16,16,16,15,16,16,15,16,16,16,16,16,15,16,16,
+	16,16,16,16,16,15,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,15,
+	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,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,16,16,16,
+	16,16,16,16,16,16,16,15,16,16,16,16,16,16,16,15,
+	15,15,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,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,15,16,15,16,
+	16,16,15,16,15,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,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,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,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,16,16,16,16,16,16,15,15,
+	16,15,16,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,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,16,16,16,16,
+	16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
+	16,15,15,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,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,15,16,16,16,16,16,16,16,16,16,16,15,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,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,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,16,16,16,16,16,16,16,16,16,16,
+	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,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,16,16,16,16,16,16,16,16,16,16,
+	16,16,16,16,16,15,16,16,16,16,15,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,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,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,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,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,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,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,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,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,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,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,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,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,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,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,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,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,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,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,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,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,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,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,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,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,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,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,
+	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,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,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,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,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,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,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,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,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,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,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,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,
+	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,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,16,16,16,16,16,16,16,16,16,16,
+	16,16,16,16,16,16,16,16,15,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,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,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,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,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,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,
+	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,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,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,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,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,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,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,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,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,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,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,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,
+	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,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,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,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,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,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,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,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,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,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,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,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,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,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,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,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,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,
 };
 
 static float _vq_quantthresh_res0_192_128_4[] = {
-	-9.5, -6.5, -4, -2.5, -1.5, -0.5, 0.5, 1.5, 
-	2.5, 4, 6.5, 9.5, 
+	-39.5, -38.5, -37.5, -36.5, -35.5, -34.5, -33.5, -32.5, 
+	-31.5, -30.5, -29.5, -28.5, -27.5, -26.5, -25.5, -24.5, 
+	-23.5, -22.5, -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, 22.5, 23.5, 
+	24.5, 25.5, 26.5, 27.5, 28.5, 29.5, 30.5, 31.5, 
+	32.5, 33.5, 34.5, 35.5, 36.5, 37.5, 38.5, 39.5, 
 };
 
 static long _vq_quantmap_res0_192_128_4[] = {
-	   12,   11,   10,    9,    8,    7,    0,    1,
-	    2,    3,    4,    5,    6,
+	   79,   77,   75,   73,   71,   69,   67,   65,
+	   63,   61,   59,   57,   55,   53,   51,   49,
+	   47,   45,   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,   46,
+	   48,   50,   52,   54,   56,   58,   60,   62,
+	   64,   66,   68,   70,   72,   74,   76,   78,
+	   80,
 };
 
 static encode_aux_threshmatch _vq_auxt_res0_192_128_4 = {
         _vq_quantthresh_res0_192_128_4,
         _vq_quantmap_res0_192_128_4,
-	13,
-	13
+	81,
+	81
 };
 
 static static_codebook _vq_book_res0_192_128_4 = {
-	2, 169,
+	2, 6561,
         _vq_lengthlist_res0_192_128_4,
-	1, -529137664, 1611661312, 5, 0,
+	1, -525074432, 1611661312, 7, 0,
         _vq_quantlist_res0_192_128_4,
         NULL,
         &_vq_auxt_res0_192_128_4,

1.3       +367 -45   vorbis/lib/books/res0_192_128_5.vqh

Index: res0_192_128_5.vqh
===================================================================
RCS file: /usr/local/cvsroot/vorbis/lib/books/res0_192_128_5.vqh,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- res0_192_128_5.vqh	2000/11/17 11:47:21	1.2
+++ res0_192_128_5.vqh	2001/01/22 01:38:31	1.3
@@ -1,13 +1,12 @@
 /********************************************************************
  *                                                                  *
- * THIS FILE IS PART OF THE Ogg Vorbis SOFTWARE CODEC SOURCE CODE.  *
+ * THIS FILE IS PART OF THE OggVorbis 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 GNU LESSER/LIBRARY PUBLIC LICENSE, WHICH IS INCLUDED WITH    *
+ * THIS SOURCE. PLEASE READ THESE TERMS BEFORE DISTRIBUTING.        *
  *                                                                  *
- * THE OggSQUISH SOURCE CODE IS (C) COPYRIGHT 1994-1999             *
- * by 1999 Monty <monty at xiph.org> and The XIPHOPHORUS Company       *
- * http://www.xiph.org/                                             *
+ * THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2001             *
+ * by the XIPHOPHORUS Company, http://www.xiph.org/                 *
  *                                                                  *
  ********************************************************************
 
@@ -20,101 +19,424 @@
 #include "codebook.h"
 
 static long _vq_quantlist_res0_192_128_5[] = {
-	102,
-	103,
-	104,
-	105,
-	107,
-	110,
-	113,
-	116,
-	119,
-	122,
-	126,
-	130,
-	133,
-	137,
-	141,
-	145,
+	150,
         149,
+	151,
+	148,
+	152,
+	147,
         153,
+	146,
+	154,
+	145,
+	155,
+	144,
+	156,
+	143,
+	157,
+	142,
         158,
+	141,
+	159,
+	140,
+	160,
+	139,
+	161,
+	138,
+	162,
+	137,
         163,
+	136,
+	164,
+	135,
+	165,
+	134,
+	166,
+	133,
+	167,
+	132,
         168,
+	131,
+	169,
+	130,
+	170,
+	129,
+	171,
+	128,
+	172,
+	127,
         173,
+	126,
         174,
+	125,
+	175,
+	124,
+	176,
+	123,
+	177,
+	122,
+	178,
+	121,
+	179,
+	120,
         180,
+	119,
+	181,
+	118,
+	182,
+	117,
+	183,
+	116,
+	184,
+	115,
+	185,
+	114,
         186,
+	113,
+	187,
+	112,
+	188,
+	111,
+	189,
+	110,
+	190,
+	109,
+	191,
+	108,
         192,
+	107,
+	193,
+	106,
+	194,
+	105,
+	195,
+	104,
+	196,
+	103,
+	197,
+	102,
         198,
-	204,
         101,
+	199,
         100,
+	200,
         99,
+	201,
+	98,
+	202,
         97,
+	203,
+	96,
+	204,
+	95,
+	205,
         94,
+	206,
+	93,
+	207,
+	92,
+	208,
         91,
+	209,
+	90,
+	210,
+	89,
+	211,
         88,
+	212,
+	87,
+	213,
+	86,
+	214,
         85,
+	215,
+	84,
+	216,
+	83,
+	217,
         82,
+	218,
+	81,
+	219,
+	80,
+	220,
+	79,
+	221,
         78,
+	222,
+	77,
+	223,
+	76,
+	224,
+	75,
+	225,
         74,
+	226,
+	73,
+	227,
+	72,
+	228,
         71,
+	229,
+	70,
+	230,
+	69,
+	231,
+	68,
+	232,
         67,
+	233,
+	66,
+	234,
+	65,
+	235,
+	64,
+	236,
         63,
+	237,
+	62,
+	238,
+	61,
+	239,
+	60,
+	240,
         59,
+	241,
+	58,
+	242,
+	57,
+	243,
+	56,
+	244,
         55,
+	245,
+	54,
+	246,
+	53,
+	247,
+	52,
+	248,
         51,
+	249,
+	50,
+	250,
+	49,
+	251,
+	48,
+	252,
+	47,
+	253,
         46,
+	254,
+	45,
+	255,
+	44,
+	256,
+	43,
+	257,
+	42,
+	258,
         41,
+	259,
+	40,
+	260,
+	39,
+	261,
+	38,
+	262,
+	37,
+	263,
         36,
+	264,
+	35,
+	265,
+	34,
+	266,
+	33,
+	267,
+	32,
+	268,
         31,
+	269,
         30,
+	270,
+	29,
+	271,
+	28,
+	272,
+	27,
+	273,
+	26,
+	274,
+	25,
+	275,
         24,
+	276,
+	23,
+	277,
+	22,
+	278,
+	21,
+	279,
+	20,
+	280,
+	19,
+	281,
         18,
+	282,
+	17,
+	283,
+	16,
+	284,
+	15,
+	285,
+	14,
+	286,
+	13,
+	287,
         12,
+	288,
+	11,
+	289,
+	10,
+	290,
+	9,
+	291,
+	8,
+	292,
+	7,
+	293,
         6,
+	294,
+	5,
+	295,
+	4,
+	296,
+	3,
+	297,
+	2,
+	298,
+	1,
+	299,
         0,
+	300,
 };
 
 static long _vq_lengthlist_res0_192_128_5[] = {
-	 3, 3, 3, 4, 4, 5, 7, 6, 9,11,13,14,16,18,18,20,
-	20,19,20,20,19,19,19,19,19,19,19,19, 3, 3, 4, 4,
-	 5, 6, 6, 8,10,13,14,15,16,18,19,18,19,18,19,19,
-	19,19,19,19,19,19,19,
+	 2, 3, 3, 4, 4, 5, 5, 6, 6, 6, 6, 7, 6, 7, 7, 7,
+	 7, 7, 7, 7, 7, 8, 7, 8, 8, 8, 8, 8, 8, 9, 8, 9,
+	 9, 9, 9, 9, 9,11,10,11,11,12,10,12,12,12,11,12,
+	12,12,10,13,11,12,12,13,12,13,13,12,13,13,13,13,
+	13,13,13,12,12,13,13,12,13,13,12,12,13,13,13,13,
+	13, 7, 8, 8, 8, 8, 8, 9, 8, 8, 8, 9, 9, 9, 9, 9,
+	 9, 9, 9,11, 9,11,10,11, 9,10,10,10,10,12,10,11,
+	10,11,10,11,11,12,10,12,12,12,12,12,11,12,12,11,
+	13,12,12,13,13,11,13,13,13,13,13,13,12,13,12,13,
+	12,12,12,11,12,13,13,12,13,13,13,13,13,12,13,13,
+	13,13,12,13,13,13,13,13,13,13,13,13,13,13,13,13,
+	13,13,12,13,13,13,13,13,12,13,13,13,13,13,13,13,
+	12,13,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,
 };
 
 static float _vq_quantthresh_res0_192_128_5[] = {
-	-99, -93, -87, -81, -75, -71.5, -68.5, -63.5, 
-	-58.5, -53.5, -49, -45, -41, -37, -33, -29.5, 
-	-26, -22, -18.5, -15.5, -12.5, -9.5, -6.5, -4, 
-	-2.5, -1.5, -0.5, 0.5, 1.5, 2.5, 4, 6.5, 
-	9.5, 12.5, 15.5, 18.5, 22, 26, 29.5, 33, 
-	37, 41, 45, 49, 53.5, 58.5, 63.5, 68.5, 
-	71.5, 75, 81, 87, 93, 99, 
+	-149.5, -148.5, -147.5, -146.5, -145.5, -144.5, -143.5, -142.5, 
+	-141.5, -140.5, -139.5, -138.5, -137.5, -136.5, -135.5, -134.5, 
+	-133.5, -132.5, -131.5, -130.5, -129.5, -128.5, -127.5, -126.5, 
+	-125.5, -124.5, -123.5, -122.5, -121.5, -120.5, -119.5, -118.5, 
+	-117.5, -116.5, -115.5, -114.5, -113.5, -112.5, -111.5, -110.5, 
+	-109.5, -108.5, -107.5, -106.5, -105.5, -104.5, -103.5, -102.5, 
+	-101.5, -100.5, -99.5, -98.5, -97.5, -96.5, -95.5, -94.5, 
+	-93.5, -92.5, -91.5, -90.5, -89.5, -88.5, -87.5, -86.5, 
+	-85.5, -84.5, -83.5, -82.5, -81.5, -80.5, -79.5, -78.5, 
+	-77.5, -76.5, -75.5, -74.5, -73.5, -72.5, -71.5, -70.5, 
+	-69.5, -68.5, -67.5, -66.5, -65.5, -64.5, -63.5, -62.5, 
+	-61.5, -60.5, -59.5, -58.5, -57.5, -56.5, -55.5, -54.5, 
+	-53.5, -52.5, -51.5, -50.5, -49.5, -48.5, -47.5, -46.5, 
+	-45.5, -44.5, -43.5, -42.5, -41.5, -40.5, -39.5, -38.5, 
+	-37.5, -36.5, -35.5, -34.5, -33.5, -32.5, -31.5, -30.5, 
+	-29.5, -28.5, -27.5, -26.5, -25.5, -24.5, -23.5, -22.5, 
+	-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, 22.5, 23.5, 24.5, 25.5, 
+	26.5, 27.5, 28.5, 29.5, 30.5, 31.5, 32.5, 33.5, 
+	34.5, 35.5, 36.5, 37.5, 38.5, 39.5, 40.5, 41.5, 
+	42.5, 43.5, 44.5, 45.5, 46.5, 47.5, 48.5, 49.5, 
+	50.5, 51.5, 52.5, 53.5, 54.5, 55.5, 56.5, 57.5, 
+	58.5, 59.5, 60.5, 61.5, 62.5, 63.5, 64.5, 65.5, 
+	66.5, 67.5, 68.5, 69.5, 70.5, 71.5, 72.5, 73.5, 
+	74.5, 75.5, 76.5, 77.5, 78.5, 79.5, 80.5, 81.5, 
+	82.5, 83.5, 84.5, 85.5, 86.5, 87.5, 88.5, 89.5, 
+	90.5, 91.5, 92.5, 93.5, 94.5, 95.5, 96.5, 97.5, 
+	98.5, 99.5, 100.5, 101.5, 102.5, 103.5, 104.5, 105.5, 
+	106.5, 107.5, 108.5, 109.5, 110.5, 111.5, 112.5, 113.5, 
+	114.5, 115.5, 116.5, 117.5, 118.5, 119.5, 120.5, 121.5, 
+	122.5, 123.5, 124.5, 125.5, 126.5, 127.5, 128.5, 129.5, 
+	130.5, 131.5, 132.5, 133.5, 134.5, 135.5, 136.5, 137.5, 
+	138.5, 139.5, 140.5, 141.5, 142.5, 143.5, 144.5, 145.5, 
+	146.5, 147.5, 148.5, 149.5, 
 };
 
 static long _vq_quantmap_res0_192_128_5[] = {
-	   54,   53,   52,   51,   50,   49,   48,   47,
-	   46,   45,   44,   43,   42,   41,   40,   39,
-	   38,   37,   36,   35,   34,   33,   32,   31,
-	   30,   29,   28,    0,    1,    2,    3,    4,
-	    5,    6,    7,    8,    9,   10,   11,   12,
-	   13,   14,   15,   16,   17,   18,   19,   20,
-	   21,   22,   23,   24,   25,   26,   27,
+	  299,  297,  295,  293,  291,  289,  287,  285,
+	  283,  281,  279,  277,  275,  273,  271,  269,
+	  267,  265,  263,  261,  259,  257,  255,  253,
+	  251,  249,  247,  245,  243,  241,  239,  237,
+	  235,  233,  231,  229,  227,  225,  223,  221,
+	  219,  217,  215,  213,  211,  209,  207,  205,
+	  203,  201,  199,  197,  195,  193,  191,  189,
+	  187,  185,  183,  181,  179,  177,  175,  173,
+	  171,  169,  167,  165,  163,  161,  159,  157,
+	  155,  153,  151,  149,  147,  145,  143,  141,
+	  139,  137,  135,  133,  131,  129,  127,  125,
+	  123,  121,  119,  117,  115,  113,  111,  109,
+	  107,  105,  103,  101,   99,   97,   95,   93,
+	   91,   89,   87,   85,   83,   81,   79,   77,
+	   75,   73,   71,   69,   67,   65,   63,   61,
+	   59,   57,   55,   53,   51,   49,   47,   45,
+	   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,   46,   48,   50,
+	   52,   54,   56,   58,   60,   62,   64,   66,
+	   68,   70,   72,   74,   76,   78,   80,   82,
+	   84,   86,   88,   90,   92,   94,   96,   98,
+	  100,  102,  104,  106,  108,  110,  112,  114,
+	  116,  118,  120,  122,  124,  126,  128,  130,
+	  132,  134,  136,  138,  140,  142,  144,  146,
+	  148,  150,  152,  154,  156,  158,  160,  162,
+	  164,  166,  168,  170,  172,  174,  176,  178,
+	  180,  182,  184,  186,  188,  190,  192,  194,
+	  196,  198,  200,  202,  204,  206,  208,  210,
+	  212,  214,  216,  218,  220,  222,  224,  226,
+	  228,  230,  232,  234,  236,  238,  240,  242,
+	  244,  246,  248,  250,  252,  254,  256,  258,
+	  260,  262,  264,  266,  268,  270,  272,  274,
+	  276,  278,  280,  282,  284,  286,  288,  290,
+	  292,  294,  296,  298,  300,
 };
 
 static encode_aux_threshmatch _vq_auxt_res0_192_128_5 = {
         _vq_quantthresh_res0_192_128_5,
         _vq_quantmap_res0_192_128_5,
-	55,
-	55
+	301,
+	301
 };
 
 static static_codebook _vq_book_res0_192_128_5 = {
-	1, 55,
+	1, 301,
         _vq_lengthlist_res0_192_128_5,
-	1, -522616832, 1611661312, 8, 0,
+	1, -520962048, 1611661312, 9, 0,
         _vq_quantlist_res0_192_128_5,
         NULL,
         &_vq_auxt_res0_192_128_5,

1.3       +82 -4     vorbis/lib/books/res0_192_128aux.vqh

Index: res0_192_128aux.vqh
===================================================================
RCS file: /usr/local/cvsroot/vorbis/lib/books/res0_192_128aux.vqh,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- res0_192_128aux.vqh	2000/11/17 11:47:21	1.2
+++ res0_192_128aux.vqh	2001/01/22 01:38:31	1.3
@@ -20,13 +20,91 @@
 #include "codebook.h"
 
 static long _huff_lengthlist_res0_192_128aux[] = {
-	10,12,13,12,15,15, 5, 6, 8, 9,13,15, 4, 3, 4, 6,
-	12,15, 4, 4, 4, 5,12,13, 9, 9, 5, 2, 7,10,11,10,
-	 5, 3, 7,10,
+	 9,16,16,16,16,16,12,14,16,16,16,16,15,16,16,16,
+	16,16,12,16,16,16,16,16,16,16,16,16,16,16,16,16,
+	16,16,16,16, 9,14,16,16,16,16,10,11,15,16,16,16,
+	14,14,16,16,16,16,15,16,16,16,16,16,16,16,16,16,
+	16,16,16,16,16,16,16,16,11,16,16,16,16,16,12,14,
+	15,16,16,16,15,16,16,16,16,16,15,16,16,16,16,16,
+	16,16,16,16,16,16,16,16,16,16,16,16,10,16,16,16,
+	16,16,12,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,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, 4,10,13,14,16,16, 8, 9,
+	14,16,16,16,14,13,14,16,16,16,12,16,16,16,16,16,
+	16,16,16,16,16,16,16,16,16,16,16,16, 4, 8,11,12,
+	16,16, 5, 3, 6,10,16,16,10, 6, 8,15,16,16,13,15,
+	16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
+	 9,12,16,16,16,16, 8, 5, 8,13,16,16,11, 7,10,16,
+	16,16,13,16,16,16,16,16,16,16,16,16,16,16,16,16,
+	16,16,16,16,11,15,16,16,16,16,13,13,15,16,16,16,
+	14,15,15,16,16,16,14,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,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,
+	 6,11,16,16,16,16,10,10,16,16,16,16,14,13,13,16,
+	16,16,15,16,16,16,16,16,16,16,16,16,16,16,16,16,
+	16,16,16,16, 6, 9,11,14,16,16, 6, 5, 8,11,16,16,
+	11, 7, 9,15,16,16,16,14,16,16,16,16,16,16,16,16,
+	16,16,16,16,16,16,16,16, 9,12,15,16,16,16, 9, 7,
+	10,16,16,16,12, 9,11,16,16,16,14,16,16,16,16,16,
+	16,16,16,16,16,16,16,16,16,16,16,16,13,16,16,16,
+	16,16,13,13,15,16,16,16,15,16,16,16,16,16,13,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,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, 9,12,16,16,16,16,11,13,
+	15,16,16,16,15,14,16,16,16,16,16,16,16,16,16,16,
+	16,16,16,16,16,16,16,16,16,16,16,16,11,14,13,14,
+	16,16,11, 4, 6,10,16,16,11, 5, 7,13,16,16,14,11,
+	12,14,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
+	12,14,13,12,16,16,13, 4, 4, 9,15,16,11, 4, 6,10,
+	16,16,13,10,11,14,16,16,16,16,16,16,16,16,16,16,
+	16,16,16,16,14,15,13,13,16,16,16, 8, 8,10,15,16,
+	16, 8, 9,12,16,16,16,12,14,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,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,
+	13,15,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,15,15,14,16,16,16,13, 6, 7,12,16,16,
+	14, 7, 8,13,16,16,16,12,13,15,16,16,16,16,16,16,
+	16,16,16,16,16,16,16,16,16,16,15,16,16,16,13, 5,
+	 6,10,16,16,13, 6, 7,11,16,16,16,11,12,15,16,16,
+	16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
+	16,16,16, 9, 9,14,16,16,16, 9,11,14,16,16,16,14,
+	14,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,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,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, 9,10,15,16,16,16,10,11,16,16,16,16,14,
+	16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
+	16,16,16,16,16,16,16, 8, 9,13,16,16,15, 9,10,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,13,12,16,16,16,
+	16,15,13,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,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,15,
 };
 
 static static_codebook _huff_book_res0_192_128aux = {
-	2, 36,
+	4, 1296,
         _huff_lengthlist_res0_192_128aux,
         0, 0, 0, 0, 0,
         NULL,

1.3       +47 -48    vorbis/lib/books/res0_256_1024_1.vqh

Index: res0_256_1024_1.vqh
===================================================================
RCS file: /usr/local/cvsroot/vorbis/lib/books/res0_256_1024_1.vqh,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- res0_256_1024_1.vqh	2000/11/17 11:47:21	1.2
+++ res0_256_1024_1.vqh	2001/01/22 01:38:31	1.3
@@ -1,13 +1,12 @@
 /********************************************************************
  *                                                                  *
- * THIS FILE IS PART OF THE Ogg Vorbis SOFTWARE CODEC SOURCE CODE.  *
+ * THIS FILE IS PART OF THE OggVorbis 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 GNU LESSER/LIBRARY PUBLIC LICENSE, WHICH IS INCLUDED WITH    *
+ * THIS SOURCE. PLEASE READ THESE TERMS BEFORE DISTRIBUTING.        *
  *                                                                  *
- * THE OggSQUISH SOURCE CODE IS (C) COPYRIGHT 1994-1999             *
- * by 1999 Monty <monty at xiph.org> and The XIPHOPHORUS Company       *
- * http://www.xiph.org/                                             *
+ * THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2001             *
+ * by the XIPHOPHORUS Company, http://www.xiph.org/                 *
  *                                                                  *
  ********************************************************************
 
@@ -21,52 +20,52 @@
 
 static long _vq_quantlist_res0_256_1024_1[] = {
         2,
-	3,
-	4,
         1,
+	3,
         0,
+	4,
 };
 
 static long _vq_lengthlist_res0_256_1024_1[] = {
-	 2, 4, 8, 4, 8, 5, 7,10, 7,10, 9,10,12,10,12, 5,
-	 7,10, 7,10, 9,10,12,10,12, 5, 7,10, 7,10, 7, 8,
-	11, 8,11,10,11,13,11,13, 7, 8,11, 8,11,10,11,13,
-	11,13, 9,10,12,10,13,10,11,13,11,13,13,13,15,13,
-	15,10,11,13,11,13,13,13,15,14,15, 5, 7,10, 7,10,
-	 7, 8,11, 8,11,10,11,13,11,13, 7, 8,11, 8,11,10,
-	11,13,11,13, 9,10,13,10,13,10,11,13,11,13,13,13,
-	15,13,15,11,11,13,11,13,13,14,15,13,15, 5, 7,10,
-	 7,10, 7, 8,11, 8,11,10,11,13,11,13, 7, 8,11, 8,
-	11,10,11,13,11,13, 7, 9,11, 9,11, 9,10,12,10,12,
-	11,12,14,12,14, 9,10,12,10,12,11,12,14,12,14,10,
-	11,14,11,13,11,12,14,12,14,13,14,16,14,16,11,12,
-	14,12,14,14,14,16,14,16, 7, 8,11, 9,11, 9,10,12,
-	10,12,11,12,14,12,14, 9,10,12,10,12,11,12,14,12,
-	14,11,11,13,11,13,11,12,14,12,14,14,14,16,14,16,
-	12,12,14,12,14,14,14,16,14,16, 9,11,13,11,13,11,
-	11,13,11,13,13,13,15,14,15,10,11,13,12,14,13,14,
-	15,14,16,10,12,13,11,13,11,12,14,12,14,14,14,16,
-	14,16,12,12,14,12,14,14,14,16,14,16,13,13,15,14,
-	15,14,14,16,14,16,15,16,17,16,17,14,14,16,14,16,
-	16,16,18,16,17,10,11,13,12,14,11,12,14,12,14,14,
-	14,16,14,16,12,12,14,12,14,14,14,16,14,16,13,14,
-	15,14,16,14,14,16,14,16,15,17,17,16,17,14,14,16,
-	14,16,15,16,17,16,17, 5, 7,10, 7,10, 7, 8,11, 8,
-	11,10,11,13,11,13, 7, 8,11, 9,11,10,11,13,11,13,
-	 7, 9,11, 9,11, 9,10,12,10,12,11,12,14,12,14, 9,
-	10,12,10,12,11,12,14,12,14,10,11,14,11,13,11,12,
-	14,12,14,14,14,15,14,16,11,12,14,12,14,14,14,16,
-	14,16, 7, 9,11, 9,11, 9,10,12,10,12,11,12,14,12,
-	14, 9,10,12,10,12,11,12,14,12,14,11,11,13,11,14,
-	12,12,14,13,14,14,14,16,14,16,11,12,14,12,14,13,
-	14,16,14,15, 9,11,13,11,13,11,11,13,11,14,13,14,
-	15,14,15,11,12,14,12,14,13,14,15,14,15,10,12,13,
-	11,14,11,12,14,12,14,14,14,16,14,16,11,12,14,12,
-	14,14,14,16,14,16,13,14,16,14,15,14,14,16,14,16,
-	15,16,18,16,18,13,14,16,14,16,15,16,17,16,18,10,
-	12,14,12,14,12,12,14,12,14,14,14,16,14,16,12,12,
-	14,12,14,14,14,16,14,16,13,14,16,14,15,14,14,16,
-	14,16,16,16,18,16,17,14,15,16,14,16,15,16,18,16,
+	 2, 4, 4, 8, 8, 5, 7, 7,10,10, 5, 7, 7,10,10, 9,
+	10,10,12,13, 9,10,10,12,12, 5, 7, 7,10,10, 7, 8,
+	 8,11,11, 7, 8, 8,11,11,10,11,11,13,13,10,11,11,
+	13,14, 5, 7, 7,10,10, 7, 8, 8,11,11, 7, 8, 8,11,
+	11,10,11,11,13,13,10,11,11,13,13, 9,10,10,13,13,
+	10,12,11,14,13,10,12,11,14,14,13,14,14,15,16,13,
+	14,14,15,15, 9,10,10,13,13,10,11,11,14,13,10,11,
+	11,14,13,13,14,14,15,15,13,14,14,15,15, 5, 7, 7,
+	10,10, 7, 8, 8,11,11, 7, 8, 8,11,11,10,11,11,13,
+	13,10,11,11,13,13, 7, 9, 9,11,11, 9,10,10,12,12,
+	 9,10,10,12,12,11,12,12,14,14,11,12,12,14,14, 7,
+	 9, 9,11,11, 9,10,10,12,12, 9,10,10,12,12,11,12,
+	12,15,14,12,12,12,14,14,11,12,12,14,14,12,12,12,
+	14,15,12,12,12,14,14,14,14,14,16,16,14,14,14,16,
+	16,10,12,12,14,14,11,12,12,15,14,12,12,13,14,14,
+	14,14,14,16,15,14,15,15,16,16, 5, 7, 7,10,10, 7,
+	 8, 8,11,11, 7, 8, 8,11,11,10,11,11,13,13,10,11,
+	11,13,13, 7, 9, 8,11,11, 9,10,10,12,12, 9,10,10,
+	12,12,12,12,12,14,14,11,12,12,14,14, 7, 8, 8,11,
+	11, 9,10,10,12,12, 8,10,10,12,12,11,12,12,14,14,
+	11,12,12,14,14,11,12,12,14,14,12,12,12,14,14,12,
+	12,12,15,14,14,14,15,16,17,14,14,15,16,16,10,12,
+	12,14,14,12,12,12,14,14,11,12,12,15,14,14,14,14,
+	16,16,14,14,14,16,16, 9,11,11,13,13,10,12,12,14,
+	14,10,12,12,14,14,13,14,14,15,16,13,14,14,16,15,
+	10,12,12,14,14,12,12,13,15,14,12,13,12,15,14,14,
+	14,15,16,16,14,15,15,16,16,10,12,12,14,14,12,13,
+	12,15,14,12,12,12,14,15,14,15,14,16,16,14,15,15,
+	16,16,13,14,14,16,15,14,14,14,16,17,14,15,15,16,
+	16,15,16,16,17,18,16,16,16,17,17,13,14,14,16,16,
+	14,14,14,17,16,14,15,15,16,16,16,16,16,18,17,16,
+	17,17,18,18, 9,11,10,13,13,10,12,11,14,14,10,12,
+	12,14,14,13,14,14,16,15,13,14,14,15,15,10,12,12,
+	14,14,12,13,12,14,14,12,12,13,14,14,14,15,14,16,
+	16,14,14,14,16,16,10,12,11,14,13,12,12,12,15,15,
+	12,13,12,14,14,14,14,15,16,16,14,14,15,16,16,13,
+	14,14,15,15,14,15,15,16,16,14,14,14,16,16,16,16,
+	16,18,18,16,16,16,17,18,13,14,14,15,16,14,15,15,
+	17,16,14,15,14,16,16,16,16,16,17,17,15,16,16,18,
         17,
 };
 
@@ -75,7 +74,7 @@
 };
 
 static long _vq_quantmap_res0_256_1024_1[] = {
-	    4,    3,    0,    1,    2,
+	    3,    1,    0,    2,    4,
 };
 
 static encode_aux_threshmatch _vq_auxt_res0_256_1024_1 = {

1.3       +426 -22   vorbis/lib/books/res0_256_1024_2.vqh

Index: res0_256_1024_2.vqh
===================================================================
RCS file: /usr/local/cvsroot/vorbis/lib/books/res0_256_1024_2.vqh,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- res0_256_1024_2.vqh	2000/11/17 11:47:21	1.2
+++ res0_256_1024_2.vqh	2001/01/22 01:38:31	1.3
@@ -1,13 +1,12 @@
 /********************************************************************
  *                                                                  *
- * THIS FILE IS PART OF THE Ogg Vorbis SOFTWARE CODEC SOURCE CODE.  *
+ * THIS FILE IS PART OF THE OggVorbis 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 GNU LESSER/LIBRARY PUBLIC LICENSE, WHICH IS INCLUDED WITH    *
+ * THIS SOURCE. PLEASE READ THESE TERMS BEFORE DISTRIBUTING.        *
  *                                                                  *
- * THE OggSQUISH SOURCE CODE IS (C) COPYRIGHT 1994-1999             *
- * by 1999 Monty <monty at xiph.org> and The XIPHOPHORUS Company       *
- * http://www.xiph.org/                                             *
+ * THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2001             *
+ * by the XIPHOPHORUS Company, http://www.xiph.org/                 *
  *                                                                  *
  ********************************************************************
 
@@ -20,33 +19,438 @@
 #include "codebook.h"
 
 static long _vq_quantlist_res0_256_1024_2[] = {
-	5,
-	6,
-	7,
-	8,
-	10,
         4,
         3,
+	5,
         2,
+	6,
+	1,
+	7,
         0,
+	8,
 };
 
 static long _vq_lengthlist_res0_256_1024_2[] = {
-	 3, 4, 6, 6, 8, 4, 6, 6, 8, 4, 5, 6, 7, 8, 5, 6,
-	 7, 8, 6, 6, 7, 7, 9, 6, 7, 7, 9, 6, 7, 7, 8, 9,
-	 7, 8, 8, 9, 8, 8, 9, 9,10, 8, 9, 9,10, 4, 5, 6,
-	 7, 8, 5, 6, 7, 8, 6, 6, 7, 7, 9, 6, 7, 7, 9, 6,
-	 7, 7, 8, 9, 7, 7, 8, 9, 8, 8, 9, 9,10, 8, 9, 9,
-	10,
+	 5, 7, 7, 8, 8, 9, 9,10,10, 7, 8, 8, 9, 9,10,10,
+	12,12, 7, 8, 8, 9, 9,10,10,12,12, 8, 9, 9,10,10,
+	12,12,13,13, 8, 9, 9,10,10,12,12,13,13, 9,10,10,
+	12,12,13,13,14,14, 9,10,10,12,12,13,13,14,14,10,
+	12,12,14,13,15,14,16,16,10,12,12,13,13,14,15,16,
+	16, 7, 8, 8, 9, 9,10,10,12,12, 8, 9, 9,10,10,11,
+	11,13,13, 8, 9, 9,10,10,11,11,13,13, 9,10,10,11,
+	11,12,12,13,14, 9,10,10,11,11,12,12,14,14,11,11,
+	11,12,12,14,13,15,15,11,11,11,12,12,13,13,15,15,
+	12,13,13,14,14,15,15,16,17,12,13,13,14,14,15,15,
+	16,16, 7, 8, 8, 9, 9,10,10,12,12, 8, 9, 9,10,10,
+	11,11,13,12, 8, 9, 9,10,10,11,11,13,12, 9,10,10,
+	11,11,12,12,14,14, 9,10,10,11,11,12,12,14,14,11,
+	11,11,12,12,14,13,15,15,11,11,11,12,12,14,14,15,
+	15,12,13,13,14,14,15,15,16,16,12,13,13,14,14,15,
+	15,16,16, 8, 9, 9,11,11,12,12,13,13, 9,10,10,11,
+	11,12,12,14,14, 9,10,10,11,11,12,12,14,14,11,11,
+	11,12,12,13,13,14,14,11,11,11,12,12,13,13,14,15,
+	12,12,13,13,13,14,15,15,15,12,12,12,13,13,14,14,
+	16,16,14,14,14,15,15,16,16,17,18,14,14,14,15,15,
+	15,16,16,18, 8, 9, 9,11,11,12,12,13,13, 9,10,10,
+	11,11,12,12,14,14, 9,10,10,11,11,12,12,14,14,11,
+	11,11,12,12,13,13,15,15,11,11,11,12,12,13,13,14,
+	15,12,12,12,13,13,14,15,15,16,12,12,12,13,13,15,
+	14,15,16,14,14,14,15,15,16,16,17,17,14,14,14,15,
+	15,16,16,17,17, 9,11,11,12,12,13,13,15,14,11,11,
+	11,12,12,14,14,15,15,11,11,11,12,12,14,14,15,15,
+	12,12,12,14,13,15,14,15,16,12,13,12,14,13,15,15,
+	16,16,13,14,14,15,15,16,16,17,17,13,14,14,15,15,
+	15,16,17,17,15,15,15,16,16,16,16,17,18,15,15,15,
+	16,16,17,17,18,18, 9,11,11,12,12,13,13,15,14,11,
+	11,11,12,12,14,14,15,15,11,11,11,12,12,14,14,15,
+	15,12,13,13,14,13,15,14,16,16,12,12,12,13,13,15,
+	15,16,15,13,14,14,14,15,16,16,17,16,13,14,14,15,
+	15,16,15,18,17,15,15,16,15,16,16,17,18,18,15,15,
+	15,16,16,17,16,18,18,11,12,12,13,14,15,15,16,16,
+	12,13,13,14,14,15,15,17,16,12,13,13,14,14,15,16,
+	16,16,14,14,14,15,15,16,16,17,17,14,14,14,15,15,
+	16,16,17,17,15,15,15,16,16,16,17,18,17,15,15,15,
+	16,16,17,17,18,18,16,16,17,17,18,18,19,18,19,16,
+	17,16,17,18,17,18,19,20,11,12,12,14,14,15,15,16,
+	16,12,13,13,14,14,16,15,16,16,12,13,13,14,14,15,
+	15,16,16,13,14,14,15,15,16,16,17,17,13,14,14,15,
+	15,16,16,17,17,15,15,15,16,16,17,17,19,18,15,15,
+	15,16,16,17,17,17,18,16,16,16,17,17,17,18,19,21,
+	16,17,17,17,17,18,18,18,19, 7, 8, 8, 9, 9,10,10,
+	12,12, 8, 9, 9,10,10,11,11,13,13, 8, 9, 9,10,10,
+	11,11,13,13, 9,10,10,11,11,12,12,14,14, 9,10,10,
+	11,11,12,12,13,14,10,11,11,12,12,14,14,15,15,11,
+	11,11,12,12,14,13,15,15,12,13,13,14,14,15,15,17,
+	16,12,13,13,14,14,15,15,16,16, 8, 9, 9,10,10,11,
+	11,13,13, 9, 9, 9,10,10,12,12,13,13, 9, 9, 9,10,
+	10,12,12,13,13,10,10,10,11,12,12,13,14,14,10,10,
+	11,12,11,13,13,14,14,11,12,12,13,13,14,14,16,15,
+	11,12,12,13,13,14,14,16,15,13,13,13,14,14,16,15,
+	16,16,13,13,13,14,14,15,15,16,17, 8, 9, 9,10,10,
+	11,11,13,13, 9, 9, 9,10,10,12,12,13,13, 9, 9, 9,
+	10,10,12,12,13,13,10,10,10,11,11,13,13,14,14,10,
+	10,10,11,11,13,13,14,14,11,12,12,13,13,14,14,15,
+	15,11,12,12,13,13,14,14,15,15,13,13,13,14,14,15,
+	16,16,16,13,13,13,14,14,15,15,17,16, 9,10,10,11,
+	11,12,12,14,14,10,10,10,12,12,13,13,14,14,10,10,
+	11,12,12,13,13,14,14,11,11,12,12,13,14,14,15,15,
+	11,12,12,13,13,14,14,15,15,12,13,13,14,14,15,15,
+	16,16,12,13,13,14,14,15,15,16,16,14,14,14,15,15,
+	16,16,17,18,14,14,14,15,15,16,16,18,17, 9,10,10,
+	11,11,12,12,14,14,10,11,10,12,12,13,13,14,14,10,
+	10,11,12,12,13,13,14,14,11,12,12,12,12,14,13,15,
+	15,11,12,12,13,13,14,14,15,15,12,13,13,14,14,15,
+	14,16,16,12,13,13,14,14,15,14,16,16,14,15,14,15,
+	15,16,16,17,17,14,14,14,15,15,16,16,18,17,11,11,
+	11,12,12,14,14,15,15,11,12,12,13,13,14,14,15,16,
+	11,12,12,13,13,14,14,16,15,12,13,13,14,14,15,15,
+	17,16,13,13,13,14,14,15,15,16,16,14,14,14,15,15,
+	16,16,17,17,14,14,14,15,15,16,16,17,17,15,15,16,
+	16,16,17,17,18,17,15,16,16,16,16,17,17,18,18,11,
+	11,11,13,12,14,14,15,15,11,12,12,13,13,14,14,16,
+	15,11,12,12,13,13,14,14,15,16,12,13,13,14,14,15,
+	15,16,16,12,13,13,14,14,15,15,16,16,14,14,14,15,
+	15,16,16,17,17,14,14,14,15,15,16,16,17,17,15,15,
+	16,16,16,17,17,17,18,15,16,15,16,16,17,17,18,19,
+	12,13,13,14,14,15,15,16,17,13,14,13,15,15,16,15,
+	18,16,13,13,14,14,14,16,15,17,16,14,14,14,15,15,
+	16,16,18,17,14,14,15,15,15,16,16,17,18,15,16,16,
+	16,16,18,17,18,18,16,15,15,16,17,17,17,18,18,17,
+	17,17,18,17,18,18,20,21,16,16,17,18,17,19,19,20,
+	18,12,13,13,14,14,15,15,17,17,13,13,14,14,15,16,
+	16,17,17,13,14,14,14,15,16,15,17,17,14,15,14,15,
+	15,16,17,18,17,14,14,14,15,15,16,17,17,17,15,16,
+	15,17,16,18,18,19,19,15,16,15,16,16,17,17,18,17,
+	17,17,17,18,17,19,18,19,19,16,17,17,17,17,18,19,
+	19,19, 7, 8, 8, 9, 9,10,10,12,12, 8, 9, 9,10,10,
+	11,11,13,13, 8, 9, 9,10,10,11,11,13,13, 9,10,10,
+	11,11,12,12,14,13, 9,10,10,11,11,12,12,14,14,10,
+	11,11,12,12,13,14,15,15,10,11,11,12,12,14,14,15,
+	15,12,13,13,14,14,15,15,17,17,12,13,13,14,14,15,
+	15,16,16, 8, 9, 9,10,10,11,11,13,13, 9, 9, 9,11,
+	10,12,12,13,13, 9, 9, 9,10,10,12,12,13,13,10,10,
+	11,11,11,13,13,14,14,10,10,10,11,12,13,13,14,14,
+	11,12,12,13,13,14,14,16,15,11,12,12,13,13,14,14,
+	16,15,13,13,13,14,14,15,15,17,17,13,13,13,14,14,
+	15,16,17,17, 8, 9, 9,10,10,11,11,13,13, 9, 9, 9,
+	10,10,12,12,13,13, 9, 9, 9,10,10,12,12,13,13,10,
+	11,10,12,11,13,13,14,14,10,10,10,11,11,13,13,14,
+	14,11,12,12,13,13,14,14,15,15,11,12,12,13,13,14,
+	14,15,15,13,14,14,14,14,15,16,17,17,13,13,13,14,
+	14,16,16,17,17, 9,10,10,11,11,12,12,14,14,10,11,
+	10,12,11,13,13,14,14,10,11,11,12,11,13,13,14,14,
+	11,12,12,13,13,14,13,15,14,11,12,12,12,12,13,13,
+	15,15,13,13,13,14,14,15,15,16,16,12,13,13,14,14,
+	15,15,16,16,14,14,14,15,15,16,16,18,17,14,14,15,
+	15,15,16,16,17,18, 9,10,10,11,11,12,12,14,14,10,
+	10,11,12,12,13,13,14,14,10,11,10,12,11,13,13,14,
+	14,11,12,12,12,13,14,14,15,15,11,12,12,13,12,13,
+	14,15,15,13,13,13,14,14,15,15,16,16,12,13,13,14,
+	14,15,14,16,16,14,14,14,15,15,16,16,17,17,14,14,
+	14,15,15,16,16,17,17,11,11,11,13,12,14,14,15,15,
+	11,12,12,13,13,14,14,15,15,11,12,12,13,13,14,14,
+	15,15,12,13,13,14,14,15,15,16,16,12,13,13,14,14,
+	15,15,16,16,14,14,14,15,15,16,16,18,17,14,14,14,
+	15,15,16,16,17,17,15,16,15,16,16,18,18,18,18,15,
+	16,15,16,17,17,17,18,18,11,11,11,12,13,14,14,15,
+	15,11,12,12,13,13,14,14,15,15,11,12,12,13,13,14,
+	14,16,15,13,13,13,14,14,15,15,16,16,12,13,13,14,
+	14,15,15,16,16,14,14,14,15,15,16,16,18,17,14,14,
+	14,15,15,16,16,17,17,15,16,15,16,16,17,17,18,18,
+	15,16,16,16,16,17,17,20,18,12,13,13,14,14,15,15,
+	16,17,13,14,14,14,15,16,15,18,16,13,13,13,15,14,
+	16,16,16,17,14,14,14,16,15,16,16,17,18,14,14,14,
+	15,15,16,17,17,17,15,16,16,16,16,17,17,18,18,15,
+	16,15,16,17,17,17,18,19,17,17,17,17,18,18,20,20,
+	20,17,17,17,17,17,19,19,20,19,12,13,13,14,14,15,
+	16,16,16,13,14,13,14,15,16,15,17,17,13,13,13,14,
+	14,16,15,17,17,14,14,14,15,16,16,16,18,17,14,14,
+	14,15,15,16,16,17,17,15,16,16,16,16,17,17,18,18,
+	15,15,15,16,16,17,17,19,18,17,17,17,17,17,18,18,
+	20,19,16,17,16,17,18,20,19,18,19, 9, 9, 9,11,11,
+	12,12,13,13, 9,10,10,11,11,12,12,14,14, 9,10,10,
+	11,11,12,12,14,14,11,11,11,12,12,14,13,15,15,11,
+	11,11,12,12,13,13,15,15,12,13,13,13,14,15,15,17,
+	16,12,12,12,13,13,14,14,16,16,13,14,14,15,15,16,
+	16,17,18,13,14,14,15,15,16,16,17,17, 9,10,10,11,
+	11,12,12,14,14,10,11,11,12,12,13,13,14,14,10,11,
+	10,12,12,13,13,14,14,11,12,12,12,13,14,14,15,15,
+	11,12,12,13,13,14,14,15,15,13,13,13,14,14,15,15,
+	16,16,13,13,13,14,14,15,15,16,16,14,14,14,15,16,
+	16,16,18,17,14,15,15,15,15,16,17,18,17, 9,10,10,
+	11,11,13,12,14,14,10,11,10,12,12,13,13,14,14,10,
+	11,11,12,12,13,13,14,14,11,12,12,13,13,14,14,15,
+	15,11,12,12,13,13,14,14,16,15,12,13,13,14,14,15,
+	15,16,16,12,13,13,14,14,15,15,16,16,14,14,14,15,
+	15,16,16,17,18,14,14,14,15,15,16,16,18,17,11,11,
+	11,12,12,14,13,15,15,11,12,12,13,13,14,14,15,15,
+	11,12,12,13,13,14,14,15,15,12,12,13,13,14,14,15,
+	16,16,12,13,13,14,13,15,15,16,16,13,14,14,15,15,
+	16,16,17,17,13,14,14,14,15,16,16,17,17,15,15,15,
+	16,16,17,17,18,18,15,15,15,16,16,17,16,18,17,11,
+	11,11,12,12,13,13,15,15,11,12,12,13,12,14,14,15,
+	15,11,12,12,13,13,14,14,15,15,12,13,13,14,13,14,
+	14,16,15,12,13,13,13,13,15,14,16,16,13,14,14,15,
+	15,16,16,17,17,14,14,14,15,15,16,16,16,17,15,15,
+	15,16,16,17,17,18,18,15,15,15,16,16,17,17,18,18,
+	12,13,13,14,13,14,15,16,16,12,13,13,14,14,15,15,
+	16,16,12,13,13,14,14,15,15,16,16,13,14,14,14,15,
+	16,16,17,17,13,14,14,15,15,16,15,18,17,15,15,15,
+	16,16,16,17,17,18,15,15,15,16,16,17,16,17,18,16,
+	16,16,16,17,18,18,18,20,16,16,16,17,18,19,18,19,
+	18,12,12,13,14,13,14,15,16,16,12,13,13,14,14,15,
+	15,16,16,12,13,13,14,14,15,15,16,17,13,14,14,14,
+	15,16,15,17,17,14,14,14,14,15,16,16,17,17,15,15,
+	15,16,15,17,16,18,17,15,15,15,15,16,17,17,18,17,
+	16,16,16,17,17,18,17,19,18,16,17,16,17,17,18,18,
+	18,18,14,14,14,15,15,16,16,17,18,14,14,14,15,15,
+	17,17,17,17,14,15,14,15,15,17,17,18,17,15,15,15,
+	16,16,17,16,18,18,15,15,15,16,16,17,16,19,19,16,
+	17,16,17,17,18,17,18,19,16,16,16,17,17,18,17,18,
+	19,17,18,18,19,18,18,18,20,20,17,18,18,18,18,19,
+	18,20,21,14,14,14,15,15,16,16,18,17,14,14,15,15,
+	15,16,16,17,18,14,14,14,16,16,16,17,17,18,15,15,
+	15,16,16,17,17,18,19,15,15,15,16,16,17,16,18,18,
+	16,16,16,17,16,17,18,19,18,16,16,16,17,17,17,20,
+	19,19,17,17,17,19,19,19,18,19,20,18,17,17,18,18,
+	18,18,19,20, 8, 9, 9,11,11,12,12,13,13, 9,10,10,
+	11,11,12,12,14,14, 9,10,10,11,11,12,12,14,14,11,
+	11,11,12,12,13,14,15,15,11,11,11,12,12,13,13,15,
+	15,12,13,12,13,13,15,15,16,16,12,13,12,13,13,15,
+	15,16,16,13,14,14,15,15,16,16,18,17,13,14,14,15,
+	15,16,16,17,17, 9,10,10,11,11,12,13,14,14,10,11,
+	11,12,12,13,13,14,14,10,11,11,12,12,13,13,14,14,
+	11,12,12,13,12,14,14,15,15,11,12,12,13,13,14,14,
+	15,15,12,13,13,14,14,15,15,16,16,13,13,13,14,14,
+	15,15,16,16,14,14,15,15,15,16,16,17,18,14,14,14,
+	15,15,16,16,17,18, 9,10,10,11,11,12,13,14,14,10,
+	11,11,11,12,13,13,14,14,10,11,11,12,12,13,13,14,
+	14,11,12,12,13,13,13,14,15,15,11,12,12,13,12,14,
+	14,15,15,12,13,13,14,14,15,15,16,16,12,13,13,14,
+	14,15,15,17,16,14,14,15,15,15,16,16,17,17,14,14,
+	14,16,15,16,16,17,18,11,11,11,12,12,14,13,15,15,
+	11,12,12,13,12,14,14,15,15,11,12,12,13,13,14,14,
+	15,15,12,13,13,13,13,15,15,16,16,12,13,13,13,13,
+	14,15,15,16,13,14,14,15,14,16,16,17,17,13,14,14,
+	15,15,15,16,17,17,15,15,15,16,16,18,17,18,18,15,
+	15,15,16,16,17,17,18,18,11,11,11,12,12,13,13,15,
+	15,11,12,12,13,13,13,14,15,15,11,12,12,13,13,14,
+	14,15,15,12,13,13,13,13,14,15,17,16,12,13,13,13,
+	13,15,14,16,16,14,14,14,15,15,16,15,18,18,13,14,
+	14,15,14,16,15,17,17,15,15,15,16,16,17,17,17,18,
+	15,15,15,16,16,17,17,19,17,12,12,12,14,13,14,15,
+	16,16,12,13,13,14,14,15,15,16,17,12,13,13,14,14,
+	15,15,16,16,14,14,14,15,15,16,15,18,17,14,14,14,
+	14,15,16,16,16,16,15,15,15,15,16,17,16,18,18,15,
+	15,15,15,16,16,16,18,18,16,17,16,17,17,18,18,18,
+	19,16,17,16,17,17,18,18,19,18,12,13,13,13,14,15,
+	15,16,16,12,13,13,14,14,15,15,16,16,12,13,13,14,
+	14,15,15,16,17,14,14,14,15,15,16,16,17,17,13,14,
+	14,14,14,16,16,17,17,15,15,15,16,16,17,16,18,17,
+	15,15,15,16,16,17,16,18,17,16,16,16,18,17,18,17,
+	18,19,16,16,16,17,17,18,17,18,18,14,14,14,15,15,
+	16,16,17,18,14,15,14,16,15,17,16,18,18,14,14,15,
+	15,15,16,16,17,17,15,16,15,16,16,17,17,18,18,15,
+	15,15,16,15,17,17,18,18,16,17,17,17,17,17,18,18,
+	19,16,16,16,17,17,17,18,18,19,17,17,17,19,18,19,
+	18,20,19,18,17,18,18,18,18,19,19,20,13,14,14,15,
+	15,16,16,17,17,14,15,14,15,15,16,16,17,17,14,14,
+	14,15,16,16,16,18,18,15,15,15,16,16,17,17,18,18,
+	15,15,15,16,16,17,17,18,19,17,16,16,17,17,18,18,
+	20,19,16,16,16,17,17,17,17,19,19,18,17,17,18,17,
+	19,19,19,19,17,17,17,18,18,18,18,21,20, 9,11,11,
+	12,12,13,13,15,15,11,11,11,13,13,14,14,15,15,11,
+	11,11,13,13,14,14,15,15,12,13,13,14,13,15,15,16,
+	16,12,13,13,13,14,15,15,16,15,13,14,14,15,15,16,
+	16,17,17,13,14,14,15,15,16,16,17,17,15,15,16,16,
+	16,17,17,18,18,15,15,15,16,16,17,17,18,18,11,11,
+	11,12,13,14,14,15,15,11,12,12,13,13,14,14,16,15,
+	11,12,12,13,13,14,14,16,15,13,13,13,14,14,15,15,
+	16,16,13,13,13,14,14,15,15,16,16,14,14,14,15,15,
+	16,16,18,17,14,14,14,15,15,16,16,17,17,15,15,16,
+	16,17,17,17,18,18,15,16,16,16,16,18,17,20,18,11,
+	11,11,13,13,14,14,15,15,11,12,12,13,13,14,14,16,
+	15,11,12,12,13,13,14,14,15,16,13,13,13,14,14,15,
+	15,16,16,12,13,13,14,14,15,15,17,16,14,14,14,15,
+	15,16,15,18,17,14,14,14,15,15,16,16,18,18,15,16,
+	16,16,16,17,17,19,17,15,15,15,16,16,17,17,18,18,
+	12,13,12,13,13,15,15,16,16,12,13,13,14,14,15,15,
+	17,17,12,13,13,14,14,15,15,17,16,13,14,14,14,15,
+	16,16,17,17,14,14,14,15,14,16,16,17,17,15,15,15,
+	16,16,17,16,18,18,15,15,15,16,16,17,17,18,18,16,
+	16,16,17,17,18,18,19,18,16,16,17,17,17,17,18,18,
+	19,12,12,13,13,14,15,14,16,17,12,13,13,14,14,15,
+	15,16,17,12,13,13,14,14,15,15,16,16,14,14,14,15,
+	15,16,16,17,18,14,14,14,15,15,16,16,17,17,14,15,
+	15,15,16,17,16,18,17,15,15,15,16,16,16,17,18,18,
+	16,17,16,17,17,17,18,18,19,16,17,17,17,17,18,18,
+	18,18,13,14,14,15,15,16,16,17,17,14,14,14,15,15,
+	16,16,17,17,14,14,14,15,15,16,16,17,17,14,15,15,
+	15,16,17,17,17,18,15,15,15,16,15,17,17,18,18,16,
+	16,16,16,17,17,19,18,19,16,16,16,16,16,18,17,19,
+	18,17,17,17,17,18,17,18,21,19,17,17,17,17,18,19,
+	18,21,20,13,14,14,15,15,16,16,17,17,13,14,14,15,
+	15,16,16,17,17,14,14,14,15,15,16,16,17,18,15,15,
+	15,16,16,17,16,18,18,15,15,15,16,15,16,17,17,18,
+	16,16,16,17,16,18,18,17,18,16,16,16,17,17,17,19,
+	19,18,17,17,18,18,17,18,18,20,19,17,17,17,18,18,
+	18,19,21,20,15,15,15,16,16,17,16,18,18,15,15,15,
+	17,16,18,17,18,18,15,15,15,17,17,17,17,18,18,16,
+	16,16,17,17,17,18,19,19,16,16,16,17,17,18,17,18,
+	20,17,17,17,17,19,18,18,19,19,17,18,18,19,17,18,
+	19,19,19,17,18,18,19,18,18,20,20,21,18,19,19,19,
+	19,19,20,19,21,15,15,16,16,16,17,18,18,17,15,16,
+	16,16,16,17,17,19,19,15,16,16,16,16,18,17,18,18,
+	16,16,16,17,17,17,18,19,19,16,16,16,17,17,18,18,
+	19,19,17,17,17,18,18,19,19,19,20,17,17,18,18,18,
+	18,20,18,21,18,18,19,19,18,20,20,20,19,18,19,19,
+	19,18,19,21,19,20, 9,11,11,12,12,13,13,15,15,11,
+	11,11,13,13,14,14,15,15,11,11,11,13,13,14,14,15,
+	15,12,13,13,13,14,15,14,16,16,12,12,13,14,13,15,
+	15,16,16,13,14,14,15,15,16,16,17,17,13,14,14,15,
+	15,16,16,17,17,15,15,15,16,16,17,17,17,18,15,15,
+	15,16,16,17,17,18,18,10,11,11,12,13,14,14,15,15,
+	11,12,12,13,13,14,14,15,16,11,12,12,13,13,14,14,
+	15,16,13,13,13,14,14,15,15,17,16,13,13,13,14,14,
+	15,15,16,16,14,14,14,15,15,16,16,17,17,14,14,14,
+	15,15,16,16,17,17,15,16,16,17,16,18,17,19,19,15,
+	15,15,17,16,17,18,19,18,10,11,11,12,12,14,14,15,
+	15,11,12,12,13,13,14,14,16,15,11,12,12,13,13,14,
+	14,16,15,12,13,13,14,14,15,15,17,16,13,13,13,14,
+	14,15,15,16,16,14,14,14,15,15,16,16,17,17,14,14,
+	14,15,15,16,16,18,17,15,15,16,16,16,17,17,18,18,
+	15,16,16,17,16,17,17,18,18,12,12,13,14,14,15,15,
+	16,16,12,13,13,14,14,15,15,17,16,12,13,13,14,14,
+	15,15,17,16,14,14,14,15,14,16,16,17,17,13,14,14,
+	14,15,15,16,17,17,15,15,15,16,15,17,17,18,17,15,
+	15,15,16,16,17,16,17,18,16,16,16,17,17,19,18,18,
+	19,16,16,16,17,17,17,18,18,18,12,12,12,13,14,15,
+	15,16,16,12,13,13,14,14,15,15,16,16,12,13,13,14,
+	14,15,15,16,16,13,14,14,15,15,15,16,17,17,13,14,
+	14,15,14,16,16,16,16,15,15,15,16,16,16,17,18,18,
+	15,15,15,16,15,17,16,18,18,16,16,17,17,18,18,18,
+	21,19,16,16,16,17,17,17,18,19,19,13,14,14,15,15,
+	16,16,17,18,14,14,14,15,15,16,16,17,17,14,14,14,
+	15,15,16,16,18,17,15,15,15,16,15,17,17,18,18,15,
+	15,15,15,15,17,17,17,18,16,16,16,17,17,17,18,19,
+	19,16,16,16,16,16,17,18,18,18,17,17,18,18,17,19,
+	18,20,19,17,17,17,17,18,18,19,19,19,13,14,14,15,
+	15,16,16,17,17,14,14,14,15,15,16,16,17,17,14,14,
+	14,15,15,16,16,17,17,14,15,15,16,16,17,17,17,18,
+	15,15,15,16,15,17,16,17,17,16,16,16,17,17,17,18,
+	19,18,16,16,16,17,16,17,17,18,18,17,17,17,18,17,
+	18,18,19,20,17,17,17,17,17,20,18,19,19,15,15,15,
+	16,16,17,17,18,18,15,15,15,16,16,18,17,18,18,15,
+	16,16,16,16,18,18,17,18,16,17,17,17,17,17,18,19,
+	19,16,16,16,17,17,17,18,18,18,17,17,17,18,20,19,
+	19,19,20,16,17,18,18,18,18,19,19,19,18,20,19,18,
+	19,19,20,19,20,18,18,18,19,19,18,19,20,20,15,15,
+	15,16,16,17,17,18,19,15,16,16,16,16,17,17,18,18,
+	15,16,15,16,16,17,17,19,19,16,16,16,16,17,18,19,
+	19,20,16,16,16,17,17,19,18,18,18,17,18,19,18,17,
+	18,19,20,21,17,17,17,17,17,20,18,19,19,18,19,18,
+	20,19,19,19,19,21,18,18,19,19,18,19,19,20,20,11,
+	12,12,14,14,15,15,16,16,12,13,13,14,14,16,15,16,
+	17,12,13,13,14,14,15,16,17,17,13,14,14,15,15,16,
+	16,17,17,13,14,14,15,15,16,17,17,17,15,15,16,16,
+	16,17,17,18,18,15,15,15,16,16,17,17,18,18,16,17,
+	16,17,17,18,18,20,20,16,16,17,17,17,18,18,19,19,
+	12,13,13,14,14,15,15,17,16,13,13,14,14,14,15,16,
+	17,17,13,13,13,15,15,16,16,16,17,14,14,15,15,15,
+	17,16,18,17,14,15,14,15,16,16,17,18,17,15,16,16,
+	17,16,17,17,19,18,15,16,15,16,16,17,17,19,19,17,
+	17,17,18,18,18,18,20,20,17,17,17,18,17,19,19,19,
+	19,12,13,13,14,14,15,15,16,17,13,14,13,14,15,15,
+	15,17,17,13,14,13,14,14,16,16,17,17,14,15,15,15,
+	16,16,16,17,18,14,14,15,15,15,16,17,17,17,15,16,
+	16,16,16,18,17,19,18,15,16,15,16,17,17,17,18,18,
+	16,17,18,18,18,19,18,19,20,17,18,17,18,17,18,18,
+	19,21,13,14,14,15,15,16,16,17,17,14,14,14,15,15,
+	16,16,17,18,14,14,14,15,15,17,16,19,18,15,15,15,
+	16,16,17,17,19,18,15,15,15,16,16,17,17,17,18,16,
+	16,16,16,17,18,18,21,20,16,16,16,16,16,17,17,19,
+	18,17,18,18,18,19,18,20,20,19,18,18,17,18,18,20,
+	19,20,18,13,14,14,15,15,16,16,18,17,14,14,14,16,
+	15,17,16,17,17,14,14,15,16,15,16,17,17,18,15,15,
+	15,16,16,17,17,18,18,15,15,16,16,16,17,16,19,18,
+	16,17,16,17,16,18,18,19,20,16,16,16,17,17,17,17,
+	19,19,17,17,17,18,18,20,18,20,20,17,17,17,18,18,
+	19,18,20,19,15,15,15,16,16,17,17,18,18,15,16,16,
+	16,16,17,17,19,18,15,16,16,17,17,18,17,19,19,16,
+	16,16,17,16,18,17,20,19,16,16,16,17,17,18,18,20,
+	20,17,17,17,17,18,19,19,19,20,17,18,17,18,18,19,
+	19,19,21,18,19,18,18,19,20,19,21,19,20,19,19,19,
+	20,20,19,20,20,15,15,16,16,16,17,17,19,18,15,15,
+	15,16,16,17,17,18,18,15,15,16,16,16,17,17,19,19,
+	16,16,17,17,17,18,18,20,18,16,16,16,17,18,18,18,
+	18,20,17,17,17,17,17,18,18,20,19,17,18,18,18,18,
+	19,18,20,19,18,18,18,19,18,20,20,19,20,18,18,19,
+	20,18,20,21,21,19,16,17,17,17,17,18,18,18,19,17,
+	17,17,17,18,18,19,18,20,17,16,17,18,18,18,19,20,
+	18,18,17,17,18,18,18,18,20,20,17,20,17,17,18,20,
+	18,20,20,18,18,18,19,19,19,20,20,21,18,18,18,18,
+	19,20,18,21,20,19,18,19,20,19,18,19,20,21,19,18,
+	19,21,21,20,20,21,21,16,16,17,17,17,18,18,19,20,
+	17,17,17,18,18,19,19,20,20,17,16,18,19,18,18,19,
+	20,20,17,17,18,18,18,19,19,19,19,17,17,18,18,18,
+	18,18,19,20,18,18,18,19,20,19,20,21,19,19,18,20,
+	19,19,20,20,20,21,20,19,19,21,19,20,20,20,21,19,
+	19,19,20,21,20,21,21,20,11,12,12,14,13,15,15,16,
+	16,12,13,13,14,14,15,15,16,16,12,13,13,14,14,15,
+	16,17,16,13,14,14,15,15,16,16,17,18,13,14,14,15,
+	15,16,16,17,18,15,15,15,16,16,17,17,18,19,15,15,
+	15,16,16,17,17,18,18,16,16,16,17,17,18,18,19,18,
+	16,16,17,18,18,18,18,19,18,12,13,13,14,14,15,15,
+	16,17,13,14,13,15,15,16,16,17,16,13,14,14,14,15,
+	16,16,17,17,14,14,14,15,15,16,16,18,18,14,15,14,
+	15,15,16,16,17,18,15,16,15,17,16,17,17,19,19,15,
+	16,16,17,16,18,17,19,18,16,17,16,18,17,19,18,19,
+	19,16,17,17,18,17,19,18,19,20,12,13,13,14,14,15,
+	16,17,16,13,13,13,15,15,15,16,16,17,13,14,13,15,
+	15,16,16,17,16,14,14,15,15,15,16,17,17,18,14,14,
+	14,15,15,17,16,17,17,15,15,16,16,16,18,18,18,18,
+	15,16,16,17,16,17,17,18,19,17,16,17,18,18,18,19,
+	20,18,16,17,16,17,18,19,18,19,20,14,14,14,15,15,
+	16,16,17,17,14,15,15,15,15,16,17,17,17,14,14,14,
+	15,15,16,17,17,18,15,15,15,16,16,17,16,18,18,15,
+	15,15,16,16,17,17,18,18,16,17,16,17,17,18,19,19,
+	18,16,17,16,17,17,18,17,19,19,18,17,17,18,18,19,
+	19,21,20,17,17,17,18,18,18,19,19,19,14,14,14,15,
+	15,15,16,17,18,14,15,14,15,15,16,16,17,17,14,14,
+	14,15,15,17,16,18,17,15,15,15,16,16,17,17,18,18,
+	15,15,15,16,16,17,17,18,18,16,16,16,17,16,18,18,
+	20,18,16,16,16,17,17,18,17,19,19,17,18,18,18,18,
+	18,18,20,20,17,18,17,19,18,19,20,20,19,15,15,15,
+	16,16,17,17,17,18,15,16,15,16,17,18,17,19,18,16,
+	16,16,16,17,17,17,18,18,16,17,16,17,17,18,17,18,
+	19,16,16,16,17,17,18,18,18,19,17,17,17,18,18,19,
+	21,19,18,17,18,18,18,19,18,18,20,20,18,18,17,19,
+	19,20,20,21,19,18,18,18,19,19,20,19,21,21,15,15,
+	15,16,16,18,17,18,18,15,15,16,17,16,17,17,18,18,
+	15,15,16,16,16,17,17,18,18,16,17,16,17,17,18,18,
+	18,19,16,16,16,17,16,18,18,18,19,17,18,17,18,18,
+	18,18,19,20,17,18,17,18,17,19,18,19,20,19,19,18,
+	19,19,19,20,20,19,18,19,19,18,20,19,20,20,20,16,
+	17,16,17,18,18,19,20,19,16,17,17,17,17,19,18,19,
+	21,16,17,17,17,17,18,18,19,20,17,17,17,18,19,19,
+	19,20,21,17,17,18,18,19,19,18,19,19,18,18,18,19,
+	18,21,19,20,20,19,19,19,20,20,19,18,21,20,21,19,
+	20,20,18,21,20,20,21,18,20,20,20,21,20,20,20,21,
+	16,16,16,17,17,17,19,20,20,16,17,17,17,18,18,19,
+	18,19,16,17,17,17,18,19,18,19,20,17,18,17,18,18,
+	20,18,20,20,17,17,17,17,18,18,20,20,19,19,19,18,
+	19,19,20,20,19,20,18,18,18,18,18,19,19,20,21,19,
+	19,19,21,19,20,20,21,20,20,19,18,19,20,19,19,20,
+	21,
 };
 
 static float _vq_quantthresh_res0_256_1024_2[] = {
-	-4, -2.5, -1.5, -0.5, 0.5, 1.5, 2.5, 4, 
+	-3.5, -2.5, -1.5, -0.5, 0.5, 1.5, 2.5, 3.5, 
 };
 
 static long _vq_quantmap_res0_256_1024_2[] = {
-	    8,    7,    6,    5,    0,    1,    2,    3,
-	    4,
+	    7,    5,    3,    1,    0,    2,    4,    6,
+	    8,
 };
 
 static encode_aux_threshmatch _vq_auxt_res0_256_1024_2 = {
@@ -57,9 +461,9 @@
 };
 
 static static_codebook _vq_book_res0_256_1024_2 = {
-	2, 81,
+	4, 6561,
         _vq_lengthlist_res0_256_1024_2,
-	1, -531365888, 1611661312, 4, 0,
+	1, -531628032, 1611661312, 4, 0,
         _vq_quantlist_res0_256_1024_2,
         NULL,
         &_vq_auxt_res0_256_1024_2,

1.3       +58 -38    vorbis/lib/books/res0_256_1024_3.vqh

Index: res0_256_1024_3.vqh
===================================================================
RCS file: /usr/local/cvsroot/vorbis/lib/books/res0_256_1024_3.vqh,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- res0_256_1024_3.vqh	2000/11/17 11:47:21	1.2
+++ res0_256_1024_3.vqh	2001/01/22 01:38:31	1.3
@@ -1,13 +1,12 @@
 /********************************************************************
  *                                                                  *
- * THIS FILE IS PART OF THE Ogg Vorbis SOFTWARE CODEC SOURCE CODE.  *
+ * THIS FILE IS PART OF THE OggVorbis 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 GNU LESSER/LIBRARY PUBLIC LICENSE, WHICH IS INCLUDED WITH    *
+ * THIS SOURCE. PLEASE READ THESE TERMS BEFORE DISTRIBUTING.        *
  *                                                                  *
- * THE OggSQUISH SOURCE CODE IS (C) COPYRIGHT 1994-1999             *
- * by 1999 Monty <monty at xiph.org> and The XIPHOPHORUS Company       *
- * http://www.xiph.org/                                             *
+ * THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2001             *
+ * by the XIPHOPHORUS Company, http://www.xiph.org/                 *
  *                                                                  *
  ********************************************************************
 
@@ -20,62 +19,83 @@
 #include "codebook.h"
 
 static long _vq_quantlist_res0_256_1024_3[] = {
+	10,
+	9,
+	11,
+	8,
+	12,
+	7,
+	13,
+	6,
         14,
+	5,
         15,
+	4,
         16,
+	3,
         17,
+	2,
+	18,
+	1,
         19,
-	22,
-	25,
-	28,
-	13,
-	12,
-	11,
-	9,
-	6,
-	3,
         0,
+	20,
 };
 
 static long _vq_lengthlist_res0_256_1024_3[] = {
-	 4, 6, 6, 6, 7, 8, 9,11, 6, 6, 6, 7, 8, 9,11, 6,
-	 6, 7, 7, 7, 8,10,11, 6, 7, 7, 7, 8,10,11, 6, 7,
-	 7, 7, 7, 8,10,12, 7, 7, 7, 7, 8,10,12, 7, 7, 7,
-	 7, 7, 8,10,12, 7, 7, 7, 7, 8,10,12, 7, 7, 7, 7,
-	 7, 8,10,12, 7, 7, 7, 7, 8,10,12, 8, 8, 8, 8, 8,
-	 9,11,13, 8, 8, 8, 8,10,11,13, 9,10,10,10,10,11,
-	13,14,10,10,10,10,11,13,14,11,12,12,12,12,13,15,
-	16,12,12,12,12,13,15,16, 6, 6, 7, 7, 7, 8,10,11,
-	 6, 7, 7, 7, 8,10,11, 6, 7, 7, 7, 7, 8,10,12, 7,
-	 7, 7, 7, 8,10,12, 7, 7, 7, 7, 7, 8,10,12, 7, 7,
-	 7, 7, 8,10,12, 7, 7, 7, 7, 7, 8,10,12, 7, 7, 7,
-	 7, 8,10,12, 8, 8, 8, 8, 8, 9,11,13, 8, 8, 8, 8,
-	 9,11,13, 9,10,10,10,10,11,13,14,10,10,10,10,11,
-	13,14,11,12,12,12,12,13,14,16,12,12,12,12,13,14,
-	16,
+	 3, 4, 4, 6, 6, 7, 7, 8, 8, 8, 8, 9, 9,10,10,11,
+	11,11,11,12,12, 4, 5, 5, 6, 6, 7, 7, 8, 8, 9, 9,
+	10,10,11,11,12,12,13,13,13,13, 4, 5, 5, 6, 6, 7,
+	 7, 8, 8, 9, 9,10,10,11,11,12,12,13,13,13,13, 6,
+	 6, 6, 7, 7, 8, 8, 9, 9,10,10,11,11,12,12,13,13,
+	14,14,15,15, 6, 6, 6, 7, 7, 8, 8, 9, 9,10,10,11,
+	11,12,12,13,13,14,14,15,15, 7, 7, 7, 8, 8, 9, 9,
+	11,10,11,11,12,12,14,13,15,15,16,15,16,16, 7, 7,
+	 7, 8, 8, 9, 9,10,10,11,11,12,12,13,14,15,15,16,
+	15,16,16, 8, 9, 9,10, 9,11,11,12,12,12,12,13,14,
+	15,15,16,16,16,16,17,17, 8, 9, 9,10, 9,11,11,12,
+	12,12,12,13,13,15,14,16,16,16,17,17,17, 8, 9, 9,
+	10,10,11,11,12,12,13,13,15,15,16,16,16,17,17,17,
+	17,17, 8, 9, 9,10,10,11,11,12,12,14,13,15,15,16,
+	16,17,16,17,17,18,18, 9,10,10,11,11,12,12,13,14,
+	15,15,16,15,17,17,17,18,18,17,18,18, 9,10,10,11,
+	11,12,12,13,14,15,15,16,16,16,17,17,17,17,18,18,
+	18,10,11,11,13,12,14,14,15,15,16,16,17,16,17,17,
+	18,18,19,18,18,18,10,11,11,13,13,14,14,15,15,16,
+	16,17,17,17,17,18,18,18,18,18,18,11,12,12,14,14,
+	15,15,16,16,16,16,17,18,18,18,19,18,19,19,19,19,
+	11,12,12,14,14,15,15,16,16,17,17,17,17,18,18,18,
+	19,18,18,19,19,11,13,13,15,15,16,16,17,17,17,17,
+	18,17,18,18,18,19,19,19,19,19,12,13,13,15,15,16,
+	16,16,17,17,17,18,18,18,18,19,19,18,19,18,20,12,
+	14,14,15,15,16,17,17,17,18,18,18,18,19,19,20,19,
+	19,19,20,20,12,14,14,15,15,17,16,17,18,18,18,18,
+	18,18,19,19,19,19,20,20,19,
 };
 
 static float _vq_quantthresh_res0_256_1024_3[] = {
-	-12.5, -9.5, -6.5, -4, -2.5, -1.5, -0.5, 0.5, 
-	1.5, 2.5, 4, 6.5, 9.5, 12.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, 
 };
 
 static long _vq_quantmap_res0_256_1024_3[] = {
-	   14,   13,   12,   11,   10,    9,    8,    0,
-	    1,    2,    3,    4,    5,    6,    7,
+	   19,   17,   15,   13,   11,    9,    7,    5,
+	    3,    1,    0,    2,    4,    6,    8,   10,
+	   12,   14,   16,   18,   20,
 };
 
 static encode_aux_threshmatch _vq_auxt_res0_256_1024_3 = {
         _vq_quantthresh_res0_256_1024_3,
         _vq_quantmap_res0_256_1024_3,
-	15,
-	15
+	21,
+	21
 };
 
 static static_codebook _vq_book_res0_256_1024_3 = {
-	2, 225,
+	2, 441,
         _vq_lengthlist_res0_256_1024_3,
-	1, -528744448, 1611661312, 5, 0,
+	1, -529268736, 1611661312, 5, 0,
         _vq_quantlist_res0_256_1024_3,
         NULL,
         &_vq_auxt_res0_256_1024_3,

1.3       +57 -58    vorbis/lib/books/res0_256_1024_4.vqh

Index: res0_256_1024_4.vqh
===================================================================
RCS file: /usr/local/cvsroot/vorbis/lib/books/res0_256_1024_4.vqh,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- res0_256_1024_4.vqh	2000/11/17 11:47:21	1.2
+++ res0_256_1024_4.vqh	2001/01/22 01:38:31	1.3
@@ -1,13 +1,12 @@
 /********************************************************************
  *                                                                  *
- * THIS FILE IS PART OF THE Ogg Vorbis SOFTWARE CODEC SOURCE CODE.  *
+ * THIS FILE IS PART OF THE OggVorbis 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 GNU LESSER/LIBRARY PUBLIC LICENSE, WHICH IS INCLUDED WITH    *
+ * THIS SOURCE. PLEASE READ THESE TERMS BEFORE DISTRIBUTING.        *
  *                                                                  *
- * THE OggSQUISH SOURCE CODE IS (C) COPYRIGHT 1994-1999             *
- * by 1999 Monty <monty at xiph.org> and The XIPHOPHORUS Company       *
- * http://www.xiph.org/                                             *
+ * THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2001             *
+ * by the XIPHOPHORUS Company, http://www.xiph.org/                 *
  *                                                                  *
  ********************************************************************
 
@@ -20,70 +19,70 @@
 #include "codebook.h"
 
 static long _vq_quantlist_res0_256_1024_4[] = {
-	28,
-	29,
-	31,
-	33,
-	36,
-	39,
-	42,
-	45,
-	48,
-	52,
-	56,
-	27,
-	25,
-	23,
-	20,
-	17,
-	14,
+	10,
+	9,
         11,
         8,
+	12,
+	7,
+	13,
+	6,
+	14,
+	5,
+	15,
         4,
+	16,
+	3,
+	17,
+	2,
+	18,
+	1,
+	19,
         0,
+	20,
 };
 
 static long _vq_lengthlist_res0_256_1024_4[] = {
-	 4, 5, 6, 7, 7, 8, 9, 8, 9,10,11, 5, 6, 7, 7, 8,
-	 9, 8, 9,10,11, 5, 6, 6, 7, 8, 8, 9, 9, 9,10,11,
-	 5, 6, 7, 8, 8, 9, 9, 9,10,11, 6, 6, 7, 8, 8, 9,
-	10, 9,10,11,12, 6, 7, 8, 8, 9,10, 9,10,11,12, 7,
-	 7, 8, 8, 9, 9,10,10,10,11,12, 7, 8, 8, 9, 9,10,
-	10,10,11,12, 8, 8, 8, 9, 9,10,10,10,11,12,13, 8,
-	 8, 9, 9,10,10,10,11,12,13, 9, 9, 9,10,10,11,11,
-	11,11,12,13, 9, 9,10,10,11,11,11,11,12,13, 9,10,
-	10,10,11,11,11,12,12,13,14,10,10,10,11,11,12,12,
-	12,13,14, 9, 9,10,10,11,11,12,12,12,13,14, 9,10,
-	10,11,11,12,12,12,13,14,10,10,11,11,11,12,12,13,
-	13,13,15,10,11,11,12,12,12,13,13,13,14,11,11,11,
-	12,12,12,13,13,13,14,15,11,12,12,12,13,13,13,14,
-	14,15,12,12,13,13,13,14,14,14,14,15,16,12,13,13,
-	14,14,14,15,15,15,16, 5, 5, 6, 7, 8, 8, 9, 9, 9,
-	10,11, 6, 6, 7, 8, 8, 9, 9, 9,10,11, 6, 6, 7, 8,
-	 8, 9,10, 9,10,11,12, 6, 7, 8, 8, 9,10, 9,10,11,
-	12, 7, 7, 8, 8, 9, 9,10,10,10,11,12, 7, 8, 8, 9,
-	 9,10,10,10,11,12, 8, 8, 8, 9, 9,10,10,10,11,12,
-	13, 8, 8, 9, 9,10,10,10,11,12,13, 9, 9, 9,10,10,
-	11,11,11,11,12,13, 9, 9,10,10,11,11,11,11,12,13,
-	 9,10,10,10,11,11,12,12,12,13,14,10,10,10,11,11,
-	12,12,12,12,14, 9, 9,10,10,11,11,12,12,12,13,14,
-	 9,10,10,11,11,12,12,13,13,14,10,10,11,11,11,12,
-	12,13,13,13,15,10,11,11,11,12,12,13,13,13,14,11,
-	11,12,12,12,12,13,13,13,14,15,11,12,12,12,13,13,
-	13,13,14,15,12,12,13,13,13,14,14,14,15,15,16,12,
-	13,13,13,14,14,14,15,15,16,
+	 6, 6, 6, 6, 6, 7, 7, 7, 7, 8, 8, 8, 8, 9, 9,10,
+	10,11,11,11,11, 6, 6, 6, 6, 6, 7, 7, 7, 7, 8, 8,
+	 9, 9, 9, 9,10,10,11,11,11,11, 6, 6, 6, 6, 6, 7,
+	 7, 7, 7, 8, 8, 9, 9, 9, 9,10,10,11,11,11,11, 6,
+	 6, 6, 7, 7, 7, 7, 8, 8, 8, 8, 9, 9,10,10,10,10,
+	11,11,12,12, 6, 6, 6, 7, 7, 7, 7, 8, 8, 8, 8, 9,
+	 9,10,10,10,10,11,11,12,12, 7, 7, 7, 7, 7, 7, 7,
+	 8, 8, 9, 9, 9, 9,10,10,11,11,12,12,12,12, 7, 7,
+	 7, 7, 7, 7, 7, 8, 8, 9, 9, 9, 9,10,10,11,11,12,
+	12,12,12, 7, 7, 7, 8, 8, 8, 8, 9, 9, 9, 9,10,10,
+	11,11,11,11,12,12,13,13, 7, 7, 7, 8, 8, 8, 8, 9,
+	 9, 9, 9,10,10,11,11,11,11,12,12,13,13, 8, 8, 8,
+	 8, 8, 9, 9, 9, 9,10,10,11,11,11,11,12,12,13,13,
+	13,13, 8, 8, 8, 8, 8, 9, 9, 9, 9,10,10,11,11,11,
+	11,12,12,12,13,13,13, 9, 9, 9, 9, 9, 9, 9,10,10,
+	11,11,11,11,12,12,13,12,13,13,14,14, 9, 9, 9, 9,
+	 9, 9, 9,10,10,11,11,11,11,12,12,13,13,13,13,14,
+	14, 9, 9,10,10,10,10,10,11,11,11,11,12,12,13,13,
+	13,13,14,14,14,14, 9,10,10,10,10,10,10,11,11,11,
+	11,12,12,13,13,13,13,14,14,14,14,10,10,10,11,11,
+	11,11,12,12,12,12,13,13,13,13,14,14,14,14,15,15,
+	10,10,10,11,11,11,11,12,12,12,12,13,13,13,13,14,
+	14,15,14,15,15,11,11,11,11,11,12,12,12,12,13,13,
+	13,13,14,14,15,14,15,15,15,16,11,11,11,11,11,12,
+	12,12,12,13,13,13,13,14,14,14,14,15,15,15,16,11,
+	12,12,12,12,13,13,13,13,14,13,14,14,15,15,15,15,
+	16,15,16,16,11,12,12,12,12,12,13,13,13,13,13,14,
+	14,15,15,15,15,15,16,16,16,
 };
 
 static float _vq_quantthresh_res0_256_1024_4[] = {
-	-26, -22, -18.5, -15.5, -12.5, -9.5, -6.5, -4, 
-	-2, -0.5, 0.5, 2, 4, 6.5, 9.5, 12.5, 
-	15.5, 18.5, 22, 26, 
+	-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, 
 };
 
 static long _vq_quantmap_res0_256_1024_4[] = {
-	   20,   19,   18,   17,   16,   15,   14,   13,
-	   12,   11,    0,    1,    2,    3,    4,    5,
-	    6,    7,    8,    9,   10,
+	   19,   17,   15,   13,   11,    9,    7,    5,
+	    3,    1,    0,    2,    4,    6,    8,   10,
+	   12,   14,   16,   18,   20,
 };
 
 static encode_aux_threshmatch _vq_auxt_res0_256_1024_4 = {
@@ -96,7 +95,7 @@
 static static_codebook _vq_book_res0_256_1024_4 = {
         2, 441,
         _vq_lengthlist_res0_256_1024_4,
-	1, -526647296, 1611661312, 6, 0,
+	1, -529268736, 1611661312, 5, 0,
         _vq_quantlist_res0_256_1024_4,
         NULL,
         &_vq_auxt_res0_256_1024_4,

1.3       +163 -79   vorbis/lib/books/res0_256_1024_5.vqh

Index: res0_256_1024_5.vqh
===================================================================
RCS file: /usr/local/cvsroot/vorbis/lib/books/res0_256_1024_5.vqh,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- res0_256_1024_5.vqh	2000/11/17 11:47:21	1.2
+++ res0_256_1024_5.vqh	2001/01/22 01:38:31	1.3
@@ -1,13 +1,12 @@
 /********************************************************************
  *                                                                  *
- * THIS FILE IS PART OF THE Ogg Vorbis SOFTWARE CODEC SOURCE CODE.  *
+ * THIS FILE IS PART OF THE OggVorbis 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 GNU LESSER/LIBRARY PUBLIC LICENSE, WHICH IS INCLUDED WITH    *
+ * THIS SOURCE. PLEASE READ THESE TERMS BEFORE DISTRIBUTING.        *
  *                                                                  *
- * THE OggSQUISH SOURCE CODE IS (C) COPYRIGHT 1994-1999             *
- * by 1999 Monty <monty at xiph.org> and The XIPHOPHORUS Company       *
- * http://www.xiph.org/                                             *
+ * THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2001             *
+ * by the XIPHOPHORUS Company, http://www.xiph.org/                 *
  *                                                                  *
  ********************************************************************
 
@@ -20,101 +19,186 @@
 #include "codebook.h"
 
 static long _vq_quantlist_res0_256_1024_5[] = {
-	102,
-	103,
-	104,
-	105,
-	107,
-	110,
-	113,
-	116,
-	119,
-	122,
-	126,
-	130,
-	133,
-	137,
-	141,
-	145,
-	149,
-	153,
-	158,
-	163,
-	168,
-	173,
-	174,
-	180,
-	186,
-	192,
-	198,
-	204,
-	101,
-	100,
-	99,
-	97,
-	94,
-	91,
-	88,
-	85,
-	82,
-	78,
-	74,
-	71,
-	67,
-	63,
-	59,
-	55,
-	51,
-	46,
-	41,
-	36,
-	31,
-	30,
-	24,
+	20,
+	19,
+	21,
         18,
+	22,
+	17,
+	23,
+	16,
+	24,
+	15,
+	25,
+	14,
+	26,
+	13,
+	27,
         12,
+	28,
+	11,
+	29,
+	10,
+	30,
+	9,
+	31,
+	8,
+	32,
+	7,
+	33,
         6,
+	34,
+	5,
+	35,
+	4,
+	36,
+	3,
+	37,
+	2,
+	38,
+	1,
+	39,
         0,
+	40,
 };
 
 static long _vq_lengthlist_res0_256_1024_5[] = {
-	 3, 4, 4, 4, 4, 4, 5, 5, 6, 6, 7, 8, 7, 8, 9,11,
-	11,12,13,13,14,15,15,15,15,16,17,16, 4, 4, 4, 4,
-	 4, 5, 5, 6, 6, 6, 8, 7, 8, 9,10,11,12,12,13,14,
-	16,16,15,17,17,18,18,
+	 4, 5, 5, 6, 6, 7, 7, 8, 8, 8, 8, 8, 8, 9, 9, 9,
+	 9, 9, 9,10,10, 9, 9,10,10,10,10,10,10,11,11,11,
+	11,11,11,11,11,12,12,12,12, 5, 6, 6, 7, 7, 8, 8,
+	 8, 8, 8, 8, 9, 9, 9, 9,10,10,10,10,10,10,10,10,
+	10,10,11,11,11,11,11,11,12,12,12,12,12,12,12,13,
+	13,13, 5, 6, 6, 7, 7, 8, 8, 8, 8, 8, 8, 9, 9, 9,
+	 9,10,10,10,10,10,10,10,10,10,10,11,11,11,11,11,
+	11,12,12,12,12,12,12,13,13,13,13, 7, 7, 7, 8, 8,
+	 8, 8, 9, 9, 9, 9, 9, 9,10,10,10,10,10,10,11,11,
+	11,11,11,11,11,11,12,12,12,12,12,12,13,13,13,13,
+	13,13,14,14, 6, 7, 7, 8, 8, 8, 8, 8, 9, 9, 9, 9,
+	 9,10,10,10,10,10,10,11,11,11,11,11,11,11,11,12,
+	12,12,12,12,12,13,13,13,13,13,13,14,14, 7, 8, 8,
+	 8, 8, 9, 9, 9, 9, 9, 9,10,10,10,10,10,10,11,11,
+	11,11,11,11,12,12,12,12,12,12,13,13,13,13,13,13,
+	14,14,14,14,14,14, 7, 8, 8, 8, 8, 9, 9, 9, 9, 9,
+	 9,10,10,10,10,10,10,11,11,11,11,11,11,12,12,12,
+	12,12,12,13,13,13,13,13,13,14,14,14,14,14,14, 8,
+	 8, 8, 9, 9, 9, 9, 9, 9,10,10,10,10,11,10,11,11,
+	11,11,12,12,12,12,12,12,12,12,13,13,13,13,14,13,
+	14,14,14,14,14,14,15,15, 8, 8, 8, 9, 9, 9, 9, 9,
+	 9,10,10,10,10,11,10,11,11,11,11,12,12,12,11,12,
+	12,12,12,13,13,13,13,13,13,14,14,14,14,14,15,15,
+	15, 8, 9, 9, 9, 9, 9, 9,10,10,10,10,11,11,11,11,
+	11,11,12,12,12,12,12,12,12,12,13,13,13,13,14,14,
+	14,14,14,14,14,14,15,15,15,15, 8, 9, 9, 9, 9, 9,
+	 9,10,10,10,10,10,11,11,11,11,11,12,12,12,12,12,
+	12,12,12,13,13,13,13,13,14,14,14,14,14,15,14,15,
+	15,15,15, 9, 9, 9, 9, 9,10,10,10,10,11,11,11,11,
+	11,11,12,12,12,12,12,12,12,12,13,13,13,13,14,14,
+	14,14,14,14,15,15,15,15,15,15,16,15, 9, 9, 9, 9,
+	 9,10,10,10,10,11,11,11,11,11,11,12,12,12,12,12,
+	12,12,12,13,13,13,13,13,13,14,14,14,14,15,14,15,
+	15,15,15,15,16, 9, 9, 9,10,10,10,10,11,11,11,11,
+	11,11,12,12,12,12,12,12,13,13,13,13,13,13,14,13,
+	14,14,14,14,15,15,15,15,15,15,16,16,16,16, 9, 9,
+	 9,10,10,10,10,11,11,11,11,11,11,12,12,12,12,12,
+	12,13,13,13,13,13,13,14,14,14,14,14,14,15,15,15,
+	15,15,15,16,16,16,16, 9,10,10,10,10,11,11,11,11,
+	11,11,12,12,12,12,12,12,13,13,13,13,13,13,14,14,
+	14,14,14,14,15,15,15,15,15,15,16,16,16,16,16,16,
+	 9,10,10,10,10,11,11,11,11,11,11,12,12,12,12,12,
+	12,13,13,13,13,13,13,14,14,14,14,14,14,15,15,15,
+	15,15,15,16,16,16,16,16,16,10,10,10,11,11,11,11,
+	11,11,12,12,12,12,12,12,13,13,13,13,13,13,14,14,
+	14,14,14,14,14,15,15,15,15,15,16,16,16,16,16,16,
+	16,17,10,10,10,11,11,11,11,11,11,12,12,12,12,12,
+	13,13,13,13,13,14,14,13,14,14,14,14,14,15,14,15,
+	15,15,15,16,16,16,16,16,16,17,16,10,11,11,11,11,
+	11,11,12,12,12,12,13,12,13,13,13,13,13,14,14,14,
+	14,14,14,14,15,15,15,15,15,16,16,16,16,16,16,16,
+	17,17,16,17,10,11,11,11,11,11,11,12,12,12,12,13,
+	12,13,13,13,13,14,14,14,14,14,14,14,14,14,15,15,
+	15,15,16,16,16,16,16,17,16,17,16,17,17,10,10,10,
+	11,11,11,11,12,12,12,12,13,13,13,13,13,13,14,14,
+	14,14,14,14,15,15,15,15,15,15,16,16,16,16,16,16,
+	17,17,17,17,17,17,10,10,10,11,11,11,11,12,12,12,
+	12,13,13,13,13,13,13,14,14,14,14,14,14,15,15,15,
+	15,15,16,16,16,16,16,17,16,17,17,17,17,17,17,10,
+	11,11,11,11,12,12,12,12,13,13,13,13,13,13,14,14,
+	14,14,14,14,15,15,15,15,15,15,16,16,16,16,16,16,
+	17,17,17,17,17,17,17,18,10,11,11,11,11,12,12,12,
+	12,13,13,13,13,13,13,14,14,14,14,14,14,15,15,15,
+	15,15,15,16,16,16,16,16,16,17,17,17,17,17,17,17,
+	17,10,11,11,12,12,12,12,13,13,13,13,14,13,14,14,
+	14,14,14,14,15,15,15,15,16,15,16,16,16,16,17,17,
+	16,17,17,17,17,17,18,17,18,18,10,11,11,12,12,12,
+	12,13,13,13,13,13,14,14,14,14,14,15,14,15,15,15,
+	15,16,15,16,16,16,16,16,16,17,17,17,17,17,18,18,
+	17,19,17,11,12,12,12,12,13,13,13,13,14,14,14,14,
+	14,14,15,14,15,15,15,15,16,15,16,16,16,16,16,16,
+	17,17,17,17,17,17,17,17,18,17,17,18,11,12,12,12,
+	12,13,13,13,13,14,13,14,14,14,14,15,15,15,15,15,
+	15,16,16,16,16,16,16,16,17,16,16,17,17,17,17,17,
+	18,18,18,18,17,11,12,12,13,13,13,13,13,14,14,14,
+	14,14,15,15,15,15,15,15,15,16,16,16,16,16,17,17,
+	17,17,17,17,17,18,17,18,18,18,18,18,19,19,11,12,
+	12,13,13,13,13,13,14,14,14,14,14,15,15,15,15,15,
+	15,16,15,16,16,16,16,16,16,16,17,17,17,17,17,17,
+	18,17,18,18,18,18,18,12,12,12,13,13,13,13,14,14,
+	14,14,15,14,15,15,15,15,15,16,16,16,16,16,16,16,
+	17,17,17,17,17,17,17,17,18,18,18,18,18,18,19,18,
+	11,12,12,13,13,14,13,14,14,14,14,15,15,15,15,15,
+	15,16,16,16,16,17,16,17,17,17,17,17,17,17,17,17,
+	18,18,18,17,18,18,18,18,19,12,13,13,13,13,14,14,
+	14,14,15,15,15,15,15,15,16,16,16,16,17,16,17,17,
+	17,17,17,17,17,18,18,17,17,18,18,18,19,19,18,18,
+	19,18,12,13,13,13,13,14,14,14,14,15,15,15,15,16,
+	15,16,16,16,16,16,16,17,17,17,17,17,17,18,17,18,
+	18,18,18,18,19,18,18,18,18,18,18,12,13,13,14,14,
+	14,14,15,14,15,15,16,15,16,16,16,16,16,16,17,17,
+	17,17,17,17,17,18,18,17,17,18,18,18,17,19,18,19,
+	18,18,19,19,12,13,13,14,14,14,14,15,15,15,15,16,
+	15,16,16,16,16,16,17,17,17,17,17,17,17,17,17,17,
+	18,19,18,18,18,18,18,18,18,19,19,19,20,12,13,13,
+	14,14,15,15,15,15,15,15,16,16,16,16,16,16,17,16,
+	17,17,17,17,18,17,18,18,18,18,18,19,18,19,18,19,
+	19,19,19,19,18,18,12,13,13,14,14,15,15,15,15,15,
+	15,16,16,16,16,17,16,16,16,17,17,17,17,17,17,18,
+	18,18,18,18,18,18,18,18,19,18,18,19,19,19,19,13,
+	14,14,14,14,15,15,15,16,16,16,16,16,16,17,17,16,
+	17,17,17,17,18,17,18,17,18,18,18,18,18,18,18,18,
+	20,18,18,20,20,18,19,20,13,14,14,14,15,15,15,15,
+	15,16,16,16,16,16,17,16,17,17,17,17,17,17,18,17,
+	19,18,18,18,18,18,18,18,19,18,18,19,20,19,19,19,
+	19,
 };
 
 static float _vq_quantthresh_res0_256_1024_5[] = {
-	-99, -93, -87, -81, -75, -71.5, -68.5, -63.5, 
-	-58.5, -53.5, -49, -45, -41, -37, -33, -29.5, 
-	-26, -22, -18.5, -15.5, -12.5, -9.5, -6.5, -4, 
-	-2.5, -1.5, -0.5, 0.5, 1.5, 2.5, 4, 6.5, 
-	9.5, 12.5, 15.5, 18.5, 22, 26, 29.5, 33, 
-	37, 41, 45, 49, 53.5, 58.5, 63.5, 68.5, 
-	71.5, 75, 81, 87, 93, 99, 
+	-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, 
 };
 
 static long _vq_quantmap_res0_256_1024_5[] = {
-	   54,   53,   52,   51,   50,   49,   48,   47,
-	   46,   45,   44,   43,   42,   41,   40,   39,
-	   38,   37,   36,   35,   34,   33,   32,   31,
-	   30,   29,   28,    0,    1,    2,    3,    4,
-	    5,    6,    7,    8,    9,   10,   11,   12,
-	   13,   14,   15,   16,   17,   18,   19,   20,
-	   21,   22,   23,   24,   25,   26,   27,
+	   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,
 };
 
 static encode_aux_threshmatch _vq_auxt_res0_256_1024_5 = {
         _vq_quantthresh_res0_256_1024_5,
         _vq_quantmap_res0_256_1024_5,
-	55,
-	55
+	41,
+	41
 };
 
 static static_codebook _vq_book_res0_256_1024_5 = {
-	1, 55,
+	2, 1681,
         _vq_lengthlist_res0_256_1024_5,
-	1, -522616832, 1611661312, 8, 0,
+	1, -527171584, 1611661312, 6, 0,
         _vq_quantlist_res0_256_1024_5,
         NULL,
         &_vq_auxt_res0_256_1024_5,

1.3       +5 -4      vorbis/lib/books/res0_256_1024aux.vqh

Index: res0_256_1024aux.vqh
===================================================================
RCS file: /usr/local/cvsroot/vorbis/lib/books/res0_256_1024aux.vqh,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- res0_256_1024aux.vqh	2000/11/17 11:47:21	1.2
+++ res0_256_1024aux.vqh	2001/01/22 01:38:32	1.3
@@ -20,13 +20,14 @@
 #include "codebook.h"
 
 static long _huff_lengthlist_res0_256_1024aux[] = {
-	 3, 7,10,10,12,14, 5, 3, 6, 8,10,14, 9, 5, 3, 4,
-	 8,14, 9, 6, 4, 2, 6,12,10, 8, 7, 4, 6,12,11,11,
-	 9, 6, 7,14,
+	 2, 7,11,11,17,13,15,19, 5, 3, 6, 7,10,10,12,19,
+	10, 5, 4, 5, 7, 9,12,18, 9, 6, 5, 5, 6, 7,10,15,
+	15, 9, 6, 6, 5, 6,10,16,10, 9, 8, 6, 5, 4, 6,13,
+	11,10, 9, 7, 7, 5, 6,12,13,10,10, 9, 8, 6, 6,12,
 };
 
 static static_codebook _huff_book_res0_256_1024aux = {
-	2, 36,
+	2, 64,
         _huff_lengthlist_res0_256_1024aux,
         0, 0, 0, 0, 0,
         NULL,

1.3       +18 -55    vorbis/lib/books/res0_256_128_1.vqh

Index: res0_256_128_1.vqh
===================================================================
RCS file: /usr/local/cvsroot/vorbis/lib/books/res0_256_128_1.vqh,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- res0_256_128_1.vqh	2000/11/17 11:47:21	1.2
+++ res0_256_128_1.vqh	2001/01/22 01:38:32	1.3
@@ -1,13 +1,12 @@
 /********************************************************************
  *                                                                  *
- * THIS FILE IS PART OF THE Ogg Vorbis SOFTWARE CODEC SOURCE CODE.  *
+ * THIS FILE IS PART OF THE OggVorbis 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 GNU LESSER/LIBRARY PUBLIC LICENSE, WHICH IS INCLUDED WITH    *
+ * THIS SOURCE. PLEASE READ THESE TERMS BEFORE DISTRIBUTING.        *
  *                                                                  *
- * THE OggSQUISH SOURCE CODE IS (C) COPYRIGHT 1994-1999             *
- * by 1999 Monty <monty at xiph.org> and The XIPHOPHORUS Company       *
- * http://www.xiph.org/                                             *
+ * THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2001             *
+ * by the XIPHOPHORUS Company, http://www.xiph.org/                 *
  *                                                                  *
  ********************************************************************
 
@@ -20,75 +19,39 @@
 #include "codebook.h"
 
 static long _vq_quantlist_res0_256_128_1[] = {
-	2,
-	3,
-	4,
         1,
         0,
+	2,
 };
 
 static long _vq_lengthlist_res0_256_128_1[] = {
-	 3, 5, 7, 5, 8, 5, 6, 9, 7, 8, 8, 9,11, 9,10, 5,
-	 6, 9, 7, 9, 7, 9, 9,10,10, 5, 7, 9, 7, 9, 6, 7,
-	10, 8, 9,10,10,11,10,12, 7, 8, 9, 8, 9, 9, 9,11,
-	10,13, 9, 9,13, 9,10, 9, 9,10,10,12,11,11,12,10,
-	12, 9, 9,11,10,12,12,10,12,11,12, 5, 7, 9, 7, 9,
-	 7, 8,10, 7,10, 9, 9,11, 9,12, 7, 8, 9, 7,10, 8,
-	 9,11,10,11, 8,10,12, 9,12, 9,12,10,11,10,11,12,
-	13,11,13, 9,10,13,12,13,11,12,13,11,11, 6, 7, 9,
-	 8,12, 8, 8,10, 8, 9, 9,10,13,12,12, 8, 8,10, 8,
-	12,10,10,11,12,12, 8, 9,11, 9,10, 8, 9,12, 9,11,
-	 9,11,13,11,11, 9,10,13, 9,11,10,11,12,10,12,10,
-	13,10,10,13,10,11,11,12,12,13,13,12,13,13,11,11,
-	11,10,13,13,11,13,13,13, 7, 8,10, 9,10, 8, 9,11,
-	 9,11,10,13,11,10,12, 8,10,11, 9,11,11,10,13,11,
-	12,10,11,12,11,11,10,11,13,10,13,13,13,13,13,12,
-	11,10,12,10,11,13,11,13,12,13,10,12,12,10,11,11,
-	11,12,11,13,11,12,13,13,13, 9,12,13,10,13,13,11,
-	13,11,13,11,12,13,12,13,10,11,13,12,11,10,11,13,
-	13,13,12,13,12,11,13,11,13,13,11,13,12,11,13,13,
-	13,13,13,13,13,12,13,13,13,13,13,12,12,13,13,13,
-	13,13,13,13,13,10,10,13,11,13,13,12,12,11,12,13,
-	12,13,13,13,11,11,13,13,12,12,13,13,11,13,11,12,
-	13,13,13,11,13,13,11,13,13,13,13,13,13,12,13,12,
-	13,13,13,13,13,13,13, 6, 8, 9, 8,10, 7, 9,10, 8,
-	 9,10,10,11, 9,11, 7, 8,11, 9,10,10,11,13,11,12,
-	 8, 9, 9, 8,10, 9, 8,10, 9,10,11,10,12,10,11, 9,
-	 8,10, 9,11,10,10,12,11,11,10,11,11,11,11,10,11,
-	12,11,11,12,10,11,12,11,10,12,11,10,11,10,11,12,
-	12,12, 8, 9,11, 9,10, 9, 9,11,10,10,10,11,11,12,
-	12, 8, 9,11, 9,11,10,11,11,11,12,10,11,11,11,11,
-	10,12,12,12,11,11,12,12,11,12, 9,11,12,10,12,11,
-	11,11,12,11, 9, 9,11,10,12,11,11,12,10,12,10,12,
-	12,12,12,10,11,12,10,12,11,11,12,12,12,10,12,11,
-	10,12,10,11,12,11,12,11,12,12,11,12,11,12,12,11,
-	12,11,12,12,12,12,11,11,11,11,12,11,12,11,12,11,
-	12,11,12,11,12,11,11,12,12,11,11,11,11,12,12,10,
-	10,12,11,11,10,11,11,11,12,12,11,12,12,11,10,11,
-	12,12,11,12,12,12,12,12,12,12,11,11,12,12,11,12,
-	12,12,12,12,12,12,12,11,12,12,12,12,12,11,12,12,
-	12,
+	 2, 4, 4, 4, 6, 6, 4, 6, 6, 5, 7, 6, 7, 8, 8, 7,
+	 8, 8, 5, 6, 7, 7, 8, 8, 7, 8, 8, 5, 7, 7, 7, 8,
+	 8, 7, 8, 8, 7, 9, 8, 8, 9,10, 8,10, 9, 7, 8, 8,
+	 8,10, 9, 9, 9, 9, 5, 7, 7, 7, 8, 8, 7, 8, 8, 7,
+	 8, 8, 9, 9, 9, 8, 9,10, 7, 8, 9, 9, 9,10, 8,10,
+	 9,
 };
 
 static float _vq_quantthresh_res0_256_128_1[] = {
-	-1.5, -0.5, 0.5, 1.5, 
+	-0.5, 0.5, 
 };
 
 static long _vq_quantmap_res0_256_128_1[] = {
-	    4,    3,    0,    1,    2,
+	    1,    0,    2,
 };
 
 static encode_aux_threshmatch _vq_auxt_res0_256_128_1 = {
         _vq_quantthresh_res0_256_128_1,
         _vq_quantmap_res0_256_128_1,
-	5,
-	5
+	3,
+	3
 };
 
 static static_codebook _vq_book_res0_256_128_1 = {
-	4, 625,
+	4, 81,
         _vq_lengthlist_res0_256_128_1,
-	1, -533725184, 1611661312, 3, 0,
+	1, -535822336, 1611661312, 2, 0,
         _vq_quantlist_res0_256_128_1,
         NULL,
         &_vq_auxt_res0_256_128_1,

1.3       +54 -26    vorbis/lib/books/res0_256_128_2.vqh

Index: res0_256_128_2.vqh
===================================================================
RCS file: /usr/local/cvsroot/vorbis/lib/books/res0_256_128_2.vqh,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- res0_256_128_2.vqh	2000/11/17 11:47:21	1.2
+++ res0_256_128_2.vqh	2001/01/22 01:38:32	1.3
@@ -1,13 +1,12 @@
 /********************************************************************
  *                                                                  *
- * THIS FILE IS PART OF THE Ogg Vorbis SOFTWARE CODEC SOURCE CODE.  *
+ * THIS FILE IS PART OF THE OggVorbis 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 GNU LESSER/LIBRARY PUBLIC LICENSE, WHICH IS INCLUDED WITH    *
+ * THIS SOURCE. PLEASE READ THESE TERMS BEFORE DISTRIBUTING.        *
  *                                                                  *
- * THE OggSQUISH SOURCE CODE IS (C) COPYRIGHT 1994-1999             *
- * by 1999 Monty <monty at xiph.org> and The XIPHOPHORUS Company       *
- * http://www.xiph.org/                                             *
+ * THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2001             *
+ * by the XIPHOPHORUS Company, http://www.xiph.org/                 *
  *                                                                  *
  ********************************************************************
 
@@ -20,46 +19,75 @@
 #include "codebook.h"
 
 static long _vq_quantlist_res0_256_128_2[] = {
-	5,
-	6,
-	7,
-	8,
-	10,
-	4,
-	3,
         2,
+	1,
+	3,
         0,
+	4,
 };
 
 static long _vq_lengthlist_res0_256_128_2[] = {
-	 4, 4, 5, 5, 6, 5, 5, 5, 6, 5, 5, 6, 6, 7, 5, 6,
-	 6, 7, 6, 6, 7, 7, 8, 6, 7, 7, 8, 7, 7, 7, 7, 8,
-	 7, 7, 8, 8, 8, 8, 9, 9, 9, 8, 8, 8, 9, 5, 5, 6,
-	 6, 7, 5, 6, 6, 7, 6, 6, 7, 7, 8, 6, 7, 7, 8, 7,
-	 7, 7, 8, 8, 7, 7, 7, 8, 8, 8, 8, 9, 9, 8, 8, 9,
-	 9,
+	 5, 6, 6, 7, 7, 6, 7, 7, 8, 8, 6, 7, 7, 8, 8, 7,
+	 8, 8,10,10, 7, 8, 8,10,10, 6, 7, 7, 8, 8, 7, 8,
+	 8, 9, 9, 7, 8, 8, 9, 9, 8, 9, 9,11,11, 8, 9, 9,
+	11,11, 6, 7, 7, 8, 8, 7, 8, 8, 9, 9, 7, 8, 8, 9,
+	 9, 8, 9, 9,11,10, 8, 9, 9,11,11, 8, 9, 9,10,10,
+	 9, 9, 9,11,11, 9, 9, 9,11,11,10,11,11,12,13,10,
+	11,11,12,13, 8, 9, 9,10,10, 9, 9, 9,11,11, 9, 9,
+	 9,11,11,10,11,11,13,12,10,11,11,13,12, 6, 7, 7,
+	 9, 9, 7, 8, 8, 9, 9, 7, 8, 8, 9, 9, 9, 9, 9,11,
+	11, 8, 9, 9,11,11, 7, 8, 8, 9, 9, 8, 9, 9,10,10,
+	 8, 9, 9,10,10, 9,10,10,11,12, 9,10,10,12,12, 7,
+	 8, 8, 9, 9, 8, 9, 8,10,10, 8, 9, 9,10,10, 9,10,
+	10,12,11, 9,10,10,12,12, 9,10, 9,11,11, 9,10,10,
+	12,12,10,10,10,12,12,11,11,12,13,13,11,12,12,14,
+	14, 9, 9,10,11,11, 9,10,10,12,12,10,10,10,11,12,
+	11,12,11,13,12,11,12,12,14,14, 6, 7, 7, 9, 8, 7,
+	 8, 8, 9, 9, 7, 8, 8, 9, 9, 9, 9, 9,11,11, 9, 9,
+	 9,11,11, 7, 8, 8, 9, 9, 8, 9, 9,10,10, 8, 8, 9,
+	10,10, 9,10,10,12,12, 9,10,10,11,12, 7, 8, 8, 9,
+	 9, 8, 9, 9,10,10, 8, 9, 8,10,10, 9,10,10,12,12,
+	 9,10,10,12,11, 9,10, 9,11,11,10,10,10,12,12, 9,
+	10,10,12,12,12,12,12,14,14,11,11,12,12,14, 9, 9,
+	10,11,11, 9,10,10,12,12, 9,10,10,12,11,11,12,12,
+	14,13,11,12,11,13,12, 8, 9, 9,10,11, 9,10,10,11,
+	11, 9,10,10,11,11,11,12,12,13,13,11,11,11,13,13,
+	 9,10,10,12,11,10,10,10,12,12,10,11,10,13,12,11,
+	12,12,14,14,11,12,12,14,14, 9, 9,10,11,12,10,10,
+	10,12,12,10,10,10,12,12,12,12,12,14,13,11,12,12,
+	13,13,11,12,11,13,13,11,12,12,14,14,12,12,12,14,
+	13,13,14,14,14,15,13,14,14,15,16,11,11,12,13,13,
+	11,12,11,14,14,12,12,13,14,13,13,14,13,16,13,14,
+	14,14,15,16, 8, 9, 9,10,11, 9,10,10,11,11, 9,10,
+	10,11,11,10,11,11,13,13,11,12,12,13,13, 9,10,10,
+	11,11,10,10,10,12,12,10,10,10,12,12,11,12,12,14,
+	14,12,12,12,14,14, 9,10,10,11,11,10,10,10,12,12,
+	10,10,10,12,12,11,12,12,14,13,12,12,12,14,13,11,
+	12,11,13,13,11,13,12,14,14,11,12,12,13,14,14,15,
+	14,15,16,13,13,14,14,16,11,11,12,13,13,12,12,12,
+	14,15,11,12,12,14,13,14,14,14,15,16,14,14,13,15,
+	15,
 };
 
 static float _vq_quantthresh_res0_256_128_2[] = {
-	-4, -2.5, -1.5, -0.5, 0.5, 1.5, 2.5, 4, 
+	-1.5, -0.5, 0.5, 1.5, 
 };
 
 static long _vq_quantmap_res0_256_128_2[] = {
-	    8,    7,    6,    5,    0,    1,    2,    3,
-	    4,
+	    3,    1,    0,    2,    4,
 };
 
 static encode_aux_threshmatch _vq_auxt_res0_256_128_2 = {
         _vq_quantthresh_res0_256_128_2,
         _vq_quantmap_res0_256_128_2,
-	9,
-	9
+	5,
+	5
 };
 
 static static_codebook _vq_book_res0_256_128_2 = {
-	2, 81,
+	4, 625,
         _vq_lengthlist_res0_256_128_2,
-	1, -531365888, 1611661312, 4, 0,
+	1, -533725184, 1611661312, 3, 0,
         _vq_quantlist_res0_256_128_2,
         NULL,
         &_vq_auxt_res0_256_128_2,

1.3       +34 -41    vorbis/lib/books/res0_256_128_3.vqh

Index: res0_256_128_3.vqh
===================================================================
RCS file: /usr/local/cvsroot/vorbis/lib/books/res0_256_128_3.vqh,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- res0_256_128_3.vqh	2000/11/17 11:47:21	1.2
+++ res0_256_128_3.vqh	2001/01/22 01:38:32	1.3
@@ -1,13 +1,12 @@
 /********************************************************************
  *                                                                  *
- * THIS FILE IS PART OF THE Ogg Vorbis SOFTWARE CODEC SOURCE CODE.  *
+ * THIS FILE IS PART OF THE OggVorbis 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 GNU LESSER/LIBRARY PUBLIC LICENSE, WHICH IS INCLUDED WITH    *
+ * THIS SOURCE. PLEASE READ THESE TERMS BEFORE DISTRIBUTING.        *
  *                                                                  *
- * THE OggSQUISH SOURCE CODE IS (C) COPYRIGHT 1994-1999             *
- * by 1999 Monty <monty at xiph.org> and The XIPHOPHORUS Company       *
- * http://www.xiph.org/                                             *
+ * THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2001             *
+ * by the XIPHOPHORUS Company, http://www.xiph.org/                 *
  *                                                                  *
  ********************************************************************
 
@@ -20,62 +19,56 @@
 #include "codebook.h"
 
 static long _vq_quantlist_res0_256_128_3[] = {
-	14,
-	15,
-	16,
-	17,
-	19,
-	22,
-	25,
-	28,
-	13,
-	12,
-	11,
-	9,
         6,
+	5,
+	7,
+	4,
+	8,
         3,
+	9,
+	2,
+	10,
+	1,
+	11,
         0,
+	12,
 };
 
 static long _vq_lengthlist_res0_256_128_3[] = {
-	 6, 6, 7, 6, 6, 7, 8,10, 6, 7, 6, 6, 7, 8,10, 7,
-	 7, 7, 7, 7, 7, 9,10, 7, 7, 7, 7, 7, 9,10, 7, 7,
-	 7, 7, 7, 8, 9,11, 7, 7, 7, 7, 8, 9,11, 7, 7, 7,
-	 7, 7, 7, 9,10, 7, 7, 7, 7, 7, 9,10, 7, 7, 7, 7,
-	 7, 7, 9,10, 7, 7, 7, 7, 7, 9,10, 8, 8, 8, 8, 8,
-	 8,10,11, 8, 8, 8, 8, 8,10,11,10,10,10, 9, 9,10,
-	11,13,10,10, 9, 9,10,11,13,11,11,12,11,11,12,13,
-	14,11,12,11,11,12,13,14, 7, 7, 7, 7, 7, 7, 9,10,
-	 7, 7, 7, 7, 7, 9,10, 7, 7, 7, 7, 7, 8, 9,11, 7,
-	 7, 7, 7, 8, 9,11, 7, 7, 7, 7, 7, 7, 9,10, 7, 7,
-	 7, 7, 7, 9,10, 7, 7, 7, 7, 7, 7, 9,10, 7, 7, 7,
-	 7, 7, 9,10, 8, 8, 8, 8, 8, 8,10,11, 8, 8, 8, 8,
-	 8,10,11,10,10,10, 9, 9,10,11,13,10,10, 9, 9,10,
-	11,13,11,12,12,11,11,12,13,14,11,12,11,11,12,13,
-	14,
+	 3, 4, 4, 5, 5, 6, 6, 8, 8,10,10,11,11, 4, 5, 4,
+	 6, 6, 7, 7, 9, 9,11,11,13,13, 4, 4, 5, 6, 6, 7,
+	 7,10, 9,11,11,12,12, 5, 6, 6, 8, 8, 9, 9,11,11,
+	13,13,14,14, 5, 6, 6, 8, 8, 9, 9,11,11,12,13,14,
+	14, 7, 7, 7, 9, 9,12,11,13,13,14,15,16,16, 6, 7,
+	 7, 9, 9,12,12,14,13,15,15,17,16, 9,10,10,12,12,
+	14,14,15,15,16,16,16,18, 9,10,10,12,12,14,14,16,
+	15,16,16,17,17,10,12,12,13,14,16,16,15,19,17,18,
+	18,17,10,12,12,14,14,17,15,17,16,17,16,19,17,12,
+	13,13,15,15,16,16,17,18,18,17,18,19,11,13,13,15,
+	14,17,16,19,16,19,17,19,18,
 };
 
 static float _vq_quantthresh_res0_256_128_3[] = {
-	-12.5, -9.5, -6.5, -4, -2.5, -1.5, -0.5, 0.5, 
-	1.5, 2.5, 4, 6.5, 9.5, 12.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, 
 };
 
 static long _vq_quantmap_res0_256_128_3[] = {
-	   14,   13,   12,   11,   10,    9,    8,    0,
-	    1,    2,    3,    4,    5,    6,    7,
+	   11,    9,    7,    5,    3,    1,    0,    2,
+	    4,    6,    8,   10,   12,
 };
 
 static encode_aux_threshmatch _vq_auxt_res0_256_128_3 = {
         _vq_quantthresh_res0_256_128_3,
         _vq_quantmap_res0_256_128_3,
-	15,
-	15
+	13,
+	13
 };
 
 static static_codebook _vq_book_res0_256_128_3 = {
-	2, 225,
+	2, 169,
         _vq_lengthlist_res0_256_128_3,
-	1, -528744448, 1611661312, 5, 0,
+	1, -531103744, 1611661312, 4, 0,
         _vq_quantlist_res0_256_128_3,
         NULL,
         &_vq_auxt_res0_256_128_3,

1.3       +507 -50   vorbis/lib/books/res0_256_128_4.vqh

Index: res0_256_128_4.vqh
===================================================================
RCS file: /usr/local/cvsroot/vorbis/lib/books/res0_256_128_4.vqh,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- res0_256_128_4.vqh	2000/11/17 11:47:21	1.2
+++ res0_256_128_4.vqh	2001/01/22 01:38:32	1.3
@@ -1,13 +1,12 @@
 /********************************************************************
  *                                                                  *
- * THIS FILE IS PART OF THE Ogg Vorbis SOFTWARE CODEC SOURCE CODE.  *
+ * THIS FILE IS PART OF THE OggVorbis 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 GNU LESSER/LIBRARY PUBLIC LICENSE, WHICH IS INCLUDED WITH    *
+ * THIS SOURCE. PLEASE READ THESE TERMS BEFORE DISTRIBUTING.        *
  *                                                                  *
- * THE OggSQUISH SOURCE CODE IS (C) COPYRIGHT 1994-1999             *
- * by 1999 Monty <monty at xiph.org> and The XIPHOPHORUS Company       *
- * http://www.xiph.org/                                             *
+ * THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2001             *
+ * by the XIPHOPHORUS Company, http://www.xiph.org/                 *
  *                                                                  *
  ********************************************************************
 
@@ -20,83 +19,541 @@
 #include "codebook.h"
 
 static long _vq_quantlist_res0_256_128_4[] = {
-	28,
-	29,
-	31,
-	33,
-	36,
+	40,
         39,
+	41,
+	38,
         42,
+	37,
+	43,
+	36,
+	44,
+	35,
         45,
+	34,
+	46,
+	33,
+	47,
+	32,
         48,
+	31,
+	49,
+	30,
+	50,
+	29,
+	51,
+	28,
         52,
-	56,
         27,
+	53,
+	26,
+	54,
         25,
+	55,
+	24,
+	56,
         23,
+	57,
+	22,
+	58,
+	21,
+	59,
         20,
+	60,
+	19,
+	61,
+	18,
+	62,
         17,
+	63,
+	16,
+	64,
+	15,
+	65,
         14,
+	66,
+	13,
+	67,
+	12,
+	68,
         11,
+	69,
+	10,
+	70,
+	9,
+	71,
         8,
+	72,
+	7,
+	73,
+	6,
+	74,
+	5,
+	75,
         4,
+	76,
+	3,
+	77,
+	2,
+	78,
+	1,
+	79,
         0,
+	80,
 };
 
 static long _vq_lengthlist_res0_256_128_4[] = {
-	 7, 7, 7, 7, 7, 8, 9, 9,10,10,11, 7, 7, 7, 7, 8,
-	 9, 9,10,10,11, 7, 7, 6, 7, 7, 8, 8, 9, 9,10,11,
-	 7, 6, 7, 7, 8, 8, 9, 9,10,11, 7, 7, 7, 7, 7, 8,
-	 8, 9, 9,10,11, 7, 7, 7, 7, 7, 8, 9, 9,10,11, 7,
-	 7, 7, 7, 7, 8, 9, 9,10,10,11, 7, 7, 7, 7, 8, 8,
-	 9, 9,10,11, 8, 8, 7, 7, 7, 8, 9, 9,10,10,11, 8,
-	 7, 7, 7, 8, 9, 9,10,10,11, 9, 9, 8, 8, 8, 9,10,
-	10,11,11,12, 9, 8, 8, 8, 9,10,10,11,11,12,10,10,
-	10,10,10,10,11,12,12,12,14,10,10, 9,10,10,11,12,
-	12,13,14,11,10,10,10,11,11,12,13,13,15,16,10,10,
-	10,11,11,13,13,14,14,15,12,12,11,12,12,13,13,14,
-	15,15,19,11,12,12,12,12,14,15,16,16,18,13,13,13,
-	13,13,14,14,16,15,17,17,13,13,13,13,14,15,16,17,
-	17,18,15,14,15,14,14,15,16,17,19,19,19,14,14,14,
-	16,16,16,16,16,17,18, 7, 7, 7, 7, 7, 8, 8, 9, 9,
-	10,11, 7, 7, 7, 7, 8, 8, 9, 9,10,11, 7, 7, 6, 7,
-	 7, 7, 8, 9, 9,10,11, 7, 6, 7, 7, 7, 8, 9, 9,10,
-	11, 7, 7, 7, 7, 7, 8, 8, 9,10,10,11, 7, 7, 7, 7,
-	 8, 8, 9, 9,10,11, 8, 8, 7, 7, 7, 8, 9, 9,10,10,
-	11, 8, 7, 7, 7, 8, 9, 9,10,10,11, 9, 9, 9, 8, 9,
-	 9,10,10,11,12,12, 9, 8, 8, 8, 9,10,10,11,11,12,
-	10,10,10,10,10,10,11,12,12,13,14,10,10,10,10,10,
-	11,12,12,13,13,11,10,10,10,11,11,12,13,13,14,15,
-	10,10,10,11,11,12,13,13,14,15,12,11,11,12,12,13,
-	13,14,15,16,17,12,12,12,12,13,13,14,15,15,17,13,
-	12,13,13,14,14,15,16,16,16,19,13,13,13,13,13,15,
-	16,16,17,18,14,14,14,14,15,15,15,16,18,19,18,14,
-	15,15,15,15,16,16,17,17,18,
+	 6, 6, 6, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8,
+	 8, 8, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9,
+	 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9,10,
+	 9,10,10,10,10,10,10,10,10,10,10,10,11,11,11,11,
+	11,11,11,11,12,11,12,12,12,12,12,12,12,12,12,13,
+	12, 7, 7, 7, 7, 7, 8, 7, 8, 8, 8, 8, 8, 8, 8, 8,
+	 8, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9,
+	 9, 9, 9, 9, 9, 9, 9, 9, 9,10, 9, 9,10,10,10,10,
+	10,10,10,10,10,10,10,10,11,11,11,11,11,11,11,11,
+	11,12,12,12,12,12,12,12,12,13,12,12,12,13,13,13,
+	13,13, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8, 8,
+	 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9,
+	 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,11,11,11,11,11,11,11,
+	11,12,11,11,12,12,12,12,12,12,13,12,13,13,13,13,
+	13,13,13, 7, 7, 7, 8, 7, 8, 8, 8, 8, 8, 8, 8, 8,
+	 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9,10,
+	 9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,
+	10,10,10,10,11,11,11,11,11,11,11,11,11,12,12,11,
+	12,12,12,12,12,12,13,13,13,13,12,13,13,13,14,14,
+	13,14,14,14, 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, 9, 9,
+	 9, 9, 9,10,10,10,10,10,10,10,10,10,10,10,10,10,
+	10,10,10,10,10,11,11,11,11,11,11,11,11,11,12,12,
+	12,12,12,12,12,12,13,13,13,13,12,13,13,13,13,13,
+	14,13,14,14,13, 9, 9, 9, 9, 9, 9, 9,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,12,12,11,12,
+	12,12,12,12,12,12,12,12,12,12,12,12,13,13,13,13,
+	13,14,13,14,15,13,13,14,14,14,15,14,15,15,15,15,
+	15,14,14,15,16,15, 9, 9, 9, 9, 9, 9, 9, 9, 9,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,
+	12,12,12,12,12,12,12,12,12,13,12,13,12,13,13,13,
+	13,13,14,13,13,13,14,14,14,14,14,14,14,15,14,15,
+	15,14,14,15,15,17,16,10,10,10,10,10,11,11,11,11,
+	11,11,11,11,11,11,11,11,12,11,12,12,12,12,12,12,
+	12,12,12,12,12,12,12,12,12,13,12,12,13,12,13,13,
+	13,13,13,13,13,13,13,14,13,13,14,13,14,13,14,14,
+	14,14,15,15,15,15,15,15,15,15,16,14,15,16,15,16,
+	15,17,17,15,16,16,15,17,10,10,10,10,10,11,10,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,13,12,13,
+	13,13,13,13,13,13,13,13,13,13,13,13,14,14,14,14,
+	14,14,14,14,15,15,15,15,14,14,15,15,15,15,15,15,
+	15,16,16,16,16,17,16,16,17,11,11,11,11,11,11,12,
+	12,12,12,12,12,12,12,12,12,13,12,13,12,13,13,13,
+	13,13,13,13,13,13,13,14,13,13,13,14,13,13,13,13,
+	13,13,13,13,13,14,14,14,14,14,15,14,15,14,15,15,
+	15,16,15,15,15,15,16,15,16,15,17,16,15,15,16,17,
+	17,15,16,16,18,17,16,16,17,18,11,11,11,11,11,12,
+	11,12,12,12,12,12,12,12,12,13,12,13,12,12,13,12,
+	13,13,13,13,13,13,13,13,12,13,13,13,13,13,13,13,
+	13,14,14,13,14,14,14,14,14,15,14,15,14,15,14,15,
+	14,15,14,15,15,15,15,15,15,15,16,16,15,15,15,17,
+	16,16,16,17,18,17,17,18,16,16,18,12,12,12,12,12,
+	13,13,13,12,13,13,13,13,13,13,13,13,14,13,13,13,
+	14,14,13,14,14,13,13,14,14,14,14,14,14,14,14,14,
+	14,14,14,15,15,15,15,15,14,14,14,15,15,15,15,15,
+	15,16,16,15,16,16,15,17,15,17,17,18,17,16,17,17,
+	16,17,17,17,17,18,18,17,18,17,16,18,12,12,12,12,
+	12,12,12,13,12,13,13,13,13,13,13,13,13,13,13,13,
+	13,13,13,14,14,14,14,13,13,14,14,14,13,14,14,14,
+	14,14,15,14,14,14,15,15,15,15,15,14,14,15,14,16,
+	16,15,15,15,15,16,16,16,16,17,15,17,16,18,16,17,
+	18,16,17,16,18,17,18,17,17,17,16,17,17,12,12,12,
+	13,13,13,13,14,13,14,13,14,14,14,14,14,14,14,14,
+	14,14,14,14,14,15,14,14,14,13,14,15,14,14,14,14,
+	15,15,15,16,15,15,16,15,14,15,15,15,16,15,16,16,
+	15,16,16,16,16,15,16,17,17,18,17,18,18,18,17,17,
+	17,17,18,18,17,17,18,18,18,17,18,18,18,17,11,12,
+	12,13,13,13,13,14,13,13,13,13,13,14,14,14,14,14,
+	14,14,14,14,14,14,14,14,14,15,14,14,15,15,15,15,
+	15,15,15,15,14,15,15,15,15,16,16,15,15,17,16,15,
+	15,17,15,15,16,17,16,17,17,17,16,16,17,17,17,17,
+	18,18,17,18,17,18,16,18,17,18,17,17,17,18,18,12,
+	13,13,14,14,14,14,14,14,14,15,14,14,14,14,14,15,
+	15,14,14,14,15,15,15,15,15,15,15,15,16,15,15,15,
+	14,16,15,15,16,15,16,15,16,16,16,16,16,15,17,16,
+	16,16,17,16,16,17,18,17,17,16,17,17,17,17,18,17,
+	18,17,17,17,18,18,17,18,18,18,17,18,17,18,18,17,
+	12,13,13,14,13,13,14,14,14,15,14,14,15,14,14,14,
+	15,15,15,15,14,15,15,14,15,14,15,15,15,15,14,15,
+	15,15,15,15,15,16,15,15,15,17,17,15,15,16,15,17,
+	16,15,16,15,16,18,15,17,15,16,18,17,16,18,17,18,
+	17,18,17,18,18,18,17,18,18,18,18,18,18,18,18,18,
+	18,13,14,13,13,14,14,14,14,15,14,15,15,14,15,15,
+	15,16,15,15,15,15,15,15,15,15,15,16,16,16,15,16,
+	15,16,15,15,15,16,18,16,15,16,15,16,16,17,17,16,
+	16,16,16,17,16,18,16,17,16,16,16,17,17,18,17,16,
+	18,17,18,18,17,18,18,18,17,18,17,17,17,17,18,18,
+	17,18,12,14,14,14,14,14,14,15,15,15,15,15,15,15,
+	15,15,15,15,15,15,16,15,15,15,16,15,15,15,15,15,
+	16,16,16,16,15,15,16,16,15,16,17,16,17,15,16,17,
+	17,17,16,16,16,17,18,16,16,17,17,18,18,17,18,18,
+	17,18,18,18,17,18,18,18,17,18,18,18,17,18,18,18,
+	18,17,17,14,14,14,14,14,14,15,15,15,15,15,15,16,
+	15,16,16,15,15,15,17,15,17,16,15,16,16,16,15,16,
+	16,16,15,16,16,15,17,17,16,16,16,17,17,18,18,16,
+	18,16,18,17,17,15,17,17,16,16,16,18,17,18,16,17,
+	18,18,17,18,18,18,18,18,17,17,18,18,18,18,18,18,
+	18,18,18,18,14,14,14,15,14,14,15,15,15,14,15,15,
+	16,16,15,15,17,15,15,15,15,16,16,16,16,16,17,16,
+	17,15,15,16,16,17,15,16,16,16,16,17,16,17,17,17,
+	18,16,16,17,17,17,18,16,17,17,18,18,18,18,18,18,
+	16,17,17,17,17,17,17,18,17,18,18,18,18,18,17,18,
+	18,18,18,18,18,14,14,15,15,15,15,15,16,16,15,16,
+	15,15,16,15,16,16,15,17,16,16,15,15,17,16,16,17,
+	16,16,17,16,16,17,18,17,17,17,17,17,17,17,18,16,
+	17,17,17,18,18,18,17,16,18,18,17,17,18,17,18,18,
+	18,18,17,18,17,17,18,18,18,18,18,18,17,18,18,18,
+	18,18,18,18,18,18,13,14,14,15,16,15,15,15,16,16,
+	16,16,16,16,16,17,16,17,16,15,16,17,16,15,15,16,
+	16,17,17,16,16,16,17,16,16,16,16,17,17,18,17,17,
+	17,16,17,17,17,18,16,18,18,17,18,17,18,18,17,18,
+	17,18,17,18,18,18,18,18,18,18,18,18,18,18,18,18,
+	18,17,18,17,18,18,18,15,16,15,15,15,15,16,15,17,
+	15,16,18,16,16,16,16,16,16,18,17,17,17,17,17,16,
+	18,16,18,17,17,17,15,17,18,17,16,16,17,16,17,18,
+	17,17,17,18,17,17,17,17,18,18,18,17,18,18,18,18,
+	18,18,18,18,18,18,18,18,17,18,18,18,18,18,17,18,
+	18,18,18,18,18,18,18,18,15,17,16,15,15,15,16,15,
+	16,15,15,16,17,17,17,17,15,16,16,17,17,17,17,17,
+	17,16,15,16,16,17,17,17,17,17,17,17,16,18,17,17,
+	16,17,17,17,16,17,18,17,18,17,16,18,18,17,17,17,
+	17,18,18,18,17,17,18,18,18,18,18,18,17,18,17,17,
+	18,18,18,18,18,18,18,17,18,14,15,16,15,16,16,17,
+	17,18,16,15,16,17,17,16,16,17,17,17,16,17,18,16,
+	17,16,17,16,17,17,17,17,18,18,17,17,17,18,18,17,
+	17,18,17,18,18,18,17,17,18,18,17,17,16,18,18,18,
+	17,18,17,18,18,18,17,17,18,18,18,18,18,18,18,18,
+	18,17,18,18,18,18,18,18,18,18,14,15,16,16,15,16,
+	16,16,16,16,16,16,16,17,15,16,16,16,17,16,17,17,
+	17,17,18,16,17,15,17,18,18,18,16,16,18,17,18,18,
+	17,18,16,17,16,17,17,16,17,18,18,18,17,17,18,17,
+	17,18,17,18,17,17,18,18,17,18,18,18,17,17,17,18,
+	18,18,17,18,18,18,18,17,18,18,18,15,16,16,17,17,
+	16,16,16,16,16,16,16,16,17,17,16,17,17,17,18,17,
+	16,17,17,17,17,17,17,18,17,16,17,18,17,16,17,18,
+	17,18,18,17,18,18,18,16,17,18,17,18,17,18,18,17,
+	18,17,18,18,17,17,18,17,18,18,18,18,18,18,18,18,
+	18,18,18,18,18,18,18,18,18,18,18,17,15,17,16,16,
+	15,16,16,17,16,17,15,16,16,16,17,17,17,18,17,17,
+	16,17,18,18,16,18,17,17,16,16,17,18,16,17,17,18,
+	18,17,17,17,18,18,18,18,18,18,17,18,17,17,18,17,
+	17,18,18,18,18,18,18,18,18,18,18,18,18,18,18,17,
+	18,17,18,18,18,18,18,17,17,18,18,18,18,17,16,15,
+	15,16,17,18,17,17,16,16,18,17,17,17,16,17,16,17,
+	17,17,16,18,18,17,17,17,18,18,17,18,16,16,17,16,
+	18,17,17,18,18,17,17,18,18,17,18,18,18,18,17,18,
+	17,17,18,17,18,18,17,18,17,18,18,18,17,17,18,18,
+	17,18,18,18,18,18,18,18,18,18,18,18,18,18,17,16,
+	17,16,17,17,18,18,17,17,16,17,16,18,17,17,17,17,
+	17,17,16,17,18,17,17,18,16,17,18,17,17,17,17,18,
+	17,18,17,17,16,17,18,17,17,18,18,18,17,17,17,17,
+	18,17,17,18,18,18,18,17,17,18,18,18,18,18,18,18,
+	18,17,18,18,18,18,18,18,18,18,18,18,18,18,18,16,
+	17,17,17,17,17,17,17,17,18,16,17,16,18,17,17,17,
+	17,17,18,17,17,18,17,18,16,17,18,18,18,17,17,18,
+	18,18,17,18,18,17,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,18,18,
+	16,17,16,18,16,18,17,17,17,16,16,17,16,18,16,18,
+	18,18,17,17,16,17,18,17,18,18,18,17,18,16,17,17,
+	17,18,18,18,18,18,18,18,17,18,17,18,18,18,17,18,
+	18,18,18,18,17,18,17,18,18,17,18,18,17,18,18,18,
+	18,18,17,18,18,18,17,18,18,18,18,18,18,18,18,18,
+	18,16,17,18,16,18,17,17,17,16,16,18,17,17,17,16,
+	16,18,17,17,16,17,17,18,16,18,17,18,17,18,17,17,
+	17,17,18,18,18,18,17,18,18,18,18,18,18,18,18,18,
+	17,18,18,18,18,18,18,17,18,18,18,18,18,18,17,18,
+	18,18,18,18,18,18,18,18,18,17,18,18,18,18,18,18,
+	18,18,16,17,17,17,17,17,18,17,18,18,17,17,17,18,
+	17,18,16,17,17,17,17,18,18,18,17,18,18,18,18,18,
+	17,18,18,18,17,18,18,18,18,18,18,18,17,18,18,18,
+	18,18,18,18,18,18,17,18,18,18,18,17,18,18,17,18,
+	18,18,17,18,18,18,18,17,18,18,18,18,18,18,18,18,
+	18,18,18,17,17,17,17,16,16,18,16,17,16,18,18,17,
+	17,18,17,18,18,18,18,17,18,17,17,17,18,17,18,18,
+	18,18,18,18,18,18,17,18,18,18,18,18,17,17,18,18,
+	18,18,18,17,18,18,17,18,18,18,18,18,17,18,18,18,
+	18,18,18,18,18,18,18,18,18,18,17,18,18,18,18,18,
+	18,18,18,18,17,17,16,17,17,17,17,17,17,17,18,17,
+	18,17,17,17,17,18,17,17,16,17,18,17,17,18,18,18,
+	17,17,17,18,18,18,18,17,18,18,17,17,17,17,18,18,
+	18,18,18,18,18,18,18,18,18,18,18,17,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,17,17,16,17,16,18,17,18,18,17,16,
+	18,17,18,17,17,18,18,18,17,18,18,18,17,18,17,18,
+	18,17,18,18,18,17,18,18,18,18,18,18,17,18,18,17,
+	18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,17,
+	18,18,18,18,18,18,17,18,18,18,18,18,18,18,18,18,
+	18,18,18,18,17,18,16,17,17,17,18,16,17,18,17,18,
+	16,17,18,18,18,17,17,17,18,18,18,18,18,16,17,18,
+	18,18,17,18,18,18,18,18,18,18,18,18,17,18,18,18,
+	18,18,18,18,18,17,17,18,18,17,18,17,18,18,18,18,
+	18,18,18,18,17,17,18,18,18,18,18,18,18,18,18,18,
+	18,18,18,18,18,18,18,16,17,17,17,17,17,17,16,17,
+	18,17,17,17,18,18,18,18,18,18,17,18,18,18,18,17,
+	17,17,17,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,18,18,18,17,18,
+	18,18,18,18,18,18,18,18,17,17,18,18,16,18,17,17,
+	18,17,17,18,18,18,17,17,17,17,18,18,18,18,17,17,
+	17,17,18,18,18,18,17,18,17,18,17,18,18,18,17,18,
+	18,17,18,18,18,18,18,18,17,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,18,18,18,17,18,16,17,17,17,18,
+	18,17,18,17,18,17,18,17,18,18,18,17,18,18,16,18,
+	18,17,18,18,17,17,18,18,18,17,18,18,17,18,18,17,
+	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,18,18,18,18,18,18,18,18,18,17,16,18,17,17,17,
+	18,18,18,17,18,17,18,17,18,18,18,18,17,18,18,18,
+	18,18,18,18,17,17,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,17,18,18,18,18,18,18,18,18,18,17,18,18,18,
+	18,18,18,18,18,18,18,18,18,18,18,17,17,17,18,18,
+	18,17,17,18,18,18,18,17,18,18,18,18,18,18,18,18,
+	18,17,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,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,18,18,18,18,17,17,18,18,
+	17,17,17,18,17,18,18,17,18,18,17,18,18,18,18,18,
+	18,18,18,17,18,18,17,18,18,17,18,18,18,18,18,18,
+	17,18,17,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,18,18,18,18,18,18,18,18,18,18,18,17,18,18,
+	18,17,18,18,17,18,18,18,17,18,18,18,18,18,18,18,
+	18,18,18,17,18,18,18,17,18,17,18,17,18,18,18,18,
+	18,18,18,18,17,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,
+	17,18,18,18,18,18,18,18,18,18,18,18,18,18,17,18,
+	17,17,18,17,17,18,18,18,18,17,18,18,18,17,18,18,
+	18,18,18,18,18,18,17,18,17,18,18,18,18,17,18,18,
+	18,18,18,18,18,18,18,18,18,18,18,17,18,18,17,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,17,
+	18,18,18,18,17,17,18,18,18,18,18,18,17,18,18,18,
+	18,18,18,18,18,18,18,18,17,18,18,18,18,18,17,18,
+	17,18,18,17,18,18,17,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,18,18,18,18,18,18,18,18,18,18,18,18,18,
+	17,18,18,18,18,18,17,17,17,17,18,18,18,17,18,18,
+	17,18,18,18,18,18,17,18,18,18,18,18,18,18,17,17,
+	17,18,18,18,18,18,18,18,18,17,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,18,18,18,18,18,18,
+	18,18,18,18,17,18,18,18,17,18,18,18,17,17,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,18,18,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,17,18,17,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,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,18,18,18,18,18,18,
+	18,18,18,18,17,18,17,18,17,18,17,18,18,18,17,17,
+	18,17,18,18,18,17,18,18,18,18,17,18,18,18,18,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,18,18,18,18,18,18,18,18,18,
+	18,18,18,18,18,16,18,17,18,17,18,18,18,18,18,17,
+	18,17,18,17,18,18,18,18,18,18,18,18,18,18,18,18,
+	18,18,18,18,18,18,18,18,18,17,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,
+	18,18,18,18,18,18,17,18,17,17,18,18,18,18,18,18,
+	18,18,18,18,18,17,18,18,18,17,18,18,18,17,18,18,
+	18,17,17,18,18,17,18,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,18,
+	18,18,18,18,18,18,18,17,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,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,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,18,
+	18,18,18,17,18,17,18,18,17,18,17,18,18,18,18,18,
+	18,17,18,18,18,18,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,18,18,
+	18,18,18,18,18,18,18,18,17,18,18,18,17,18,18,18,
+	18,17,18,18,17,18,18,18,18,18,18,18,18,18,17,18,
+	18,17,18,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,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,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,
+	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,18,
+	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,17,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,18,18,18,18,18,18,18,18,18,
+	18,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,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,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,18,
+	18,18,18,18,17,18,18,18,18,18,18,17,17,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,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,18,18,18,18,18,18,18,17,18,18,18,18,
+	18,18,18,18,18,18,18,17,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,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,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,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,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,18,18,17,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,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,18,18,
+	18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,
+	17,18,18,17,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,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,
+	18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,
+	18,18,18,18,16,18,18,18,17,18,18,18,18,18,18,18,
+	18,17,18,18,18,18,17,18,18,18,18,18,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,18,18,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,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,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,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,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,18,18,18,18,18,18,18,18,18,18,
+	18,18,18,18,18,18,18,18,17,17,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,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,18,18,18,18,18,18,18,18,18,18,18,
+	18,18,18,18,18,18,18,18,18,17,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,18,18,18,18,
+	18,18,18,18,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,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,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,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,
+	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,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,18,18,18,18,18,18,18,18,18,18,18,18,17,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,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,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,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,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,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,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,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,18,18,18,18,18,18,18,18,
+	18,18,18,18,18,18,18,18,18,18,18,18,18,17,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,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,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,18,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,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,18,18,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,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,18,18,18,
+	18,18,18,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,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,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,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,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,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,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,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,18,18,
+	18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,
+	18,
 };
 
 static float _vq_quantthresh_res0_256_128_4[] = {
-	-26, -22, -18.5, -15.5, -12.5, -9.5, -6.5, -4, 
-	-2, -0.5, 0.5, 2, 4, 6.5, 9.5, 12.5, 
-	15.5, 18.5, 22, 26, 
+	-39.5, -38.5, -37.5, -36.5, -35.5, -34.5, -33.5, -32.5, 
+	-31.5, -30.5, -29.5, -28.5, -27.5, -26.5, -25.5, -24.5, 
+	-23.5, -22.5, -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, 22.5, 23.5, 
+	24.5, 25.5, 26.5, 27.5, 28.5, 29.5, 30.5, 31.5, 
+	32.5, 33.5, 34.5, 35.5, 36.5, 37.5, 38.5, 39.5, 
 };
 
 static long _vq_quantmap_res0_256_128_4[] = {
-	   20,   19,   18,   17,   16,   15,   14,   13,
-	   12,   11,    0,    1,    2,    3,    4,    5,
-	    6,    7,    8,    9,   10,
+	   79,   77,   75,   73,   71,   69,   67,   65,
+	   63,   61,   59,   57,   55,   53,   51,   49,
+	   47,   45,   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,   46,
+	   48,   50,   52,   54,   56,   58,   60,   62,
+	   64,   66,   68,   70,   72,   74,   76,   78,
+	   80,
 };
 
 static encode_aux_threshmatch _vq_auxt_res0_256_128_4 = {
         _vq_quantthresh_res0_256_128_4,
         _vq_quantmap_res0_256_128_4,
-	21,
-	21
+	81,
+	81
 };
 
 static static_codebook _vq_book_res0_256_128_4 = {
-	2, 441,
+	2, 6561,
         _vq_lengthlist_res0_256_128_4,
-	1, -526647296, 1611661312, 6, 0,
+	1, -525074432, 1611661312, 7, 0,
         _vq_quantlist_res0_256_128_4,
         NULL,
         &_vq_auxt_res0_256_128_4,

1.3       +367 -45   vorbis/lib/books/res0_256_128_5.vqh

Index: res0_256_128_5.vqh
===================================================================
RCS file: /usr/local/cvsroot/vorbis/lib/books/res0_256_128_5.vqh,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- res0_256_128_5.vqh	2000/11/17 11:47:21	1.2
+++ res0_256_128_5.vqh	2001/01/22 01:38:32	1.3
@@ -1,13 +1,12 @@
 /********************************************************************
  *                                                                  *
- * THIS FILE IS PART OF THE Ogg Vorbis SOFTWARE CODEC SOURCE CODE.  *
+ * THIS FILE IS PART OF THE OggVorbis 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 GNU LESSER/LIBRARY PUBLIC LICENSE, WHICH IS INCLUDED WITH    *
+ * THIS SOURCE. PLEASE READ THESE TERMS BEFORE DISTRIBUTING.        *
  *                                                                  *
- * THE OggSQUISH SOURCE CODE IS (C) COPYRIGHT 1994-1999             *
- * by 1999 Monty <monty at xiph.org> and The XIPHOPHORUS Company       *
- * http://www.xiph.org/                                             *
+ * THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2001             *
+ * by the XIPHOPHORUS Company, http://www.xiph.org/                 *
  *                                                                  *
  ********************************************************************
 
@@ -20,101 +19,424 @@
 #include "codebook.h"
 
 static long _vq_quantlist_res0_256_128_5[] = {
-	102,
-	103,
-	104,
-	105,
-	107,
-	110,
-	113,
-	116,
-	119,
-	122,
-	126,
-	130,
-	133,
-	137,
-	141,
-	145,
+	150,
         149,
+	151,
+	148,
+	152,
+	147,
         153,
+	146,
+	154,
+	145,
+	155,
+	144,
+	156,
+	143,
+	157,
+	142,
         158,
+	141,
+	159,
+	140,
+	160,
+	139,
+	161,
+	138,
+	162,
+	137,
         163,
+	136,
+	164,
+	135,
+	165,
+	134,
+	166,
+	133,
+	167,
+	132,
         168,
+	131,
+	169,
+	130,
+	170,
+	129,
+	171,
+	128,
+	172,
+	127,
         173,
+	126,
         174,
+	125,
+	175,
+	124,
+	176,
+	123,
+	177,
+	122,
+	178,
+	121,
+	179,
+	120,
         180,
+	119,
+	181,
+	118,
+	182,
+	117,
+	183,
+	116,
+	184,
+	115,
+	185,
+	114,
         186,
+	113,
+	187,
+	112,
+	188,
+	111,
+	189,
+	110,
+	190,
+	109,
+	191,
+	108,
         192,
+	107,
+	193,
+	106,
+	194,
+	105,
+	195,
+	104,
+	196,
+	103,
+	197,
+	102,
         198,
-	204,
         101,
+	199,
         100,
+	200,
         99,
+	201,
+	98,
+	202,
         97,
+	203,
+	96,
+	204,
+	95,
+	205,
         94,
+	206,
+	93,
+	207,
+	92,
+	208,
         91,
+	209,
+	90,
+	210,
+	89,
+	211,
         88,
+	212,
+	87,
+	213,
+	86,
+	214,
         85,
+	215,
+	84,
+	216,
+	83,
+	217,
         82,
+	218,
+	81,
+	219,
+	80,
+	220,
+	79,
+	221,
         78,
+	222,
+	77,
+	223,
+	76,
+	224,
+	75,
+	225,
         74,
+	226,
+	73,
+	227,
+	72,
+	228,
         71,
+	229,
+	70,
+	230,
+	69,
+	231,
+	68,
+	232,
         67,
+	233,
+	66,
+	234,
+	65,
+	235,
+	64,
+	236,
         63,
+	237,
+	62,
+	238,
+	61,
+	239,
+	60,
+	240,
         59,
+	241,
+	58,
+	242,
+	57,
+	243,
+	56,
+	244,
         55,
+	245,
+	54,
+	246,
+	53,
+	247,
+	52,
+	248,
         51,
+	249,
+	50,
+	250,
+	49,
+	251,
+	48,
+	252,
+	47,
+	253,
         46,
+	254,
+	45,
+	255,
+	44,
+	256,
+	43,
+	257,
+	42,
+	258,
         41,
+	259,
+	40,
+	260,
+	39,
+	261,
+	38,
+	262,
+	37,
+	263,
         36,
+	264,
+	35,
+	265,
+	34,
+	266,
+	33,
+	267,
+	32,
+	268,
         31,
+	269,
         30,
+	270,
+	29,
+	271,
+	28,
+	272,
+	27,
+	273,
+	26,
+	274,
+	25,
+	275,
         24,
+	276,
+	23,
+	277,
+	22,
+	278,
+	21,
+	279,
+	20,
+	280,
+	19,
+	281,
         18,
+	282,
+	17,
+	283,
+	16,
+	284,
+	15,
+	285,
+	14,
+	286,
+	13,
+	287,
         12,
+	288,
+	11,
+	289,
+	10,
+	290,
+	9,
+	291,
+	8,
+	292,
+	7,
+	293,
         6,
+	294,
+	5,
+	295,
+	4,
+	296,
+	3,
+	297,
+	2,
+	298,
+	1,
+	299,
         0,
+	300,
 };
 
 static long _vq_lengthlist_res0_256_128_5[] = {
-	 4, 4, 4, 4, 3, 4, 5, 6, 7, 7, 8, 9, 8, 8, 9, 9,
-	10,10,11,11,13,13,14,13,13,14,14,12, 4, 4, 4, 3,
-	 4, 5, 5, 7, 7, 8, 9, 7, 8, 9, 9,10,10,11,11,12,
-	13,13,13,14,14,14,12,
+	 3, 3, 3, 4, 4, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 7,
+	 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 8, 7, 8, 7,
+	 7, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 9, 9, 9,
+	 9, 9, 9, 9, 9,10, 9,10, 9,10,10,10,10,10,10,10,
+	11,11,11,11,11,11,11,12,11,12,12,12,12,12,12,12,
+	13, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9,10,
+	 9, 9,10,10,10,10,10,10,10,10,11,11,11,11,11,10,
+	11,12,11,12,11,13,11,13,12,13,12,13,12,13,12,14,
+	12,13,12,13,13,12,13,14,14,15,12,15,14,13,12,15,
+	14,13,13,14,14,15,14,14,14,14,14,14,14,14,13,15,
+	14,14,14,15,15,15,14,15,15,14,14,14,15,15,15,14,
+	15,15,14,15,15,14,15,15,15,14,15,15,14,15,15,15,
+	15,15,15,15,15,15,15,15,14,15,15,15,15,15,14,15,
+	15,15,14,15,15,15,15,15,15,15,15,15,15,15,15,15,
+	15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,
+	15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,
+	15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,
+	15,14,15,15,15,15,15,15,15,15,15,15,15,15,15,15,
+	15,15,15,15,15,15,15,15,15,15,15,15,15,
 };
 
 static float _vq_quantthresh_res0_256_128_5[] = {
-	-99, -93, -87, -81, -75, -71.5, -68.5, -63.5, 
-	-58.5, -53.5, -49, -45, -41, -37, -33, -29.5, 
-	-26, -22, -18.5, -15.5, -12.5, -9.5, -6.5, -4, 
-	-2.5, -1.5, -0.5, 0.5, 1.5, 2.5, 4, 6.5, 
-	9.5, 12.5, 15.5, 18.5, 22, 26, 29.5, 33, 
-	37, 41, 45, 49, 53.5, 58.5, 63.5, 68.5, 
-	71.5, 75, 81, 87, 93, 99, 
+	-149.5, -148.5, -147.5, -146.5, -145.5, -144.5, -143.5, -142.5, 
+	-141.5, -140.5, -139.5, -138.5, -137.5, -136.5, -135.5, -134.5, 
+	-133.5, -132.5, -131.5, -130.5, -129.5, -128.5, -127.5, -126.5, 
+	-125.5, -124.5, -123.5, -122.5, -121.5, -120.5, -119.5, -118.5, 
+	-117.5, -116.5, -115.5, -114.5, -113.5, -112.5, -111.5, -110.5, 
+	-109.5, -108.5, -107.5, -106.5, -105.5, -104.5, -103.5, -102.5, 
+	-101.5, -100.5, -99.5, -98.5, -97.5, -96.5, -95.5, -94.5, 
+	-93.5, -92.5, -91.5, -90.5, -89.5, -88.5, -87.5, -86.5, 
+	-85.5, -84.5, -83.5, -82.5, -81.5, -80.5, -79.5, -78.5, 
+	-77.5, -76.5, -75.5, -74.5, -73.5, -72.5, -71.5, -70.5, 
+	-69.5, -68.5, -67.5, -66.5, -65.5, -64.5, -63.5, -62.5, 
+	-61.5, -60.5, -59.5, -58.5, -57.5, -56.5, -55.5, -54.5, 
+	-53.5, -52.5, -51.5, -50.5, -49.5, -48.5, -47.5, -46.5, 
+	-45.5, -44.5, -43.5, -42.5, -41.5, -40.5, -39.5, -38.5, 
+	-37.5, -36.5, -35.5, -34.5, -33.5, -32.5, -31.5, -30.5, 
+	-29.5, -28.5, -27.5, -26.5, -25.5, -24.5, -23.5, -22.5, 
+	-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, 22.5, 23.5, 24.5, 25.5, 
+	26.5, 27.5, 28.5, 29.5, 30.5, 31.5, 32.5, 33.5, 
+	34.5, 35.5, 36.5, 37.5, 38.5, 39.5, 40.5, 41.5, 
+	42.5, 43.5, 44.5, 45.5, 46.5, 47.5, 48.5, 49.5, 
+	50.5, 51.5, 52.5, 53.5, 54.5, 55.5, 56.5, 57.5, 
+	58.5, 59.5, 60.5, 61.5, 62.5, 63.5, 64.5, 65.5, 
+	66.5, 67.5, 68.5, 69.5, 70.5, 71.5, 72.5, 73.5, 
+	74.5, 75.5, 76.5, 77.5, 78.5, 79.5, 80.5, 81.5, 
+	82.5, 83.5, 84.5, 85.5, 86.5, 87.5, 88.5, 89.5, 
+	90.5, 91.5, 92.5, 93.5, 94.5, 95.5, 96.5, 97.5, 
+	98.5, 99.5, 100.5, 101.5, 102.5, 103.5, 104.5, 105.5, 
+	106.5, 107.5, 108.5, 109.5, 110.5, 111.5, 112.5, 113.5, 
+	114.5, 115.5, 116.5, 117.5, 118.5, 119.5, 120.5, 121.5, 
+	122.5, 123.5, 124.5, 125.5, 126.5, 127.5, 128.5, 129.5, 
+	130.5, 131.5, 132.5, 133.5, 134.5, 135.5, 136.5, 137.5, 
+	138.5, 139.5, 140.5, 141.5, 142.5, 143.5, 144.5, 145.5, 
+	146.5, 147.5, 148.5, 149.5, 
 };
 
 static long _vq_quantmap_res0_256_128_5[] = {
-	   54,   53,   52,   51,   50,   49,   48,   47,
-	   46,   45,   44,   43,   42,   41,   40,   39,
-	   38,   37,   36,   35,   34,   33,   32,   31,
-	   30,   29,   28,    0,    1,    2,    3,    4,
-	    5,    6,    7,    8,    9,   10,   11,   12,
-	   13,   14,   15,   16,   17,   18,   19,   20,
-	   21,   22,   23,   24,   25,   26,   27,
+	  299,  297,  295,  293,  291,  289,  287,  285,
+	  283,  281,  279,  277,  275,  273,  271,  269,
+	  267,  265,  263,  261,  259,  257,  255,  253,
+	  251,  249,  247,  245,  243,  241,  239,  237,
+	  235,  233,  231,  229,  227,  225,  223,  221,
+	  219,  217,  215,  213,  211,  209,  207,  205,
+	  203,  201,  199,  197,  195,  193,  191,  189,
+	  187,  185,  183,  181,  179,  177,  175,  173,
+	  171,  169,  167,  165,  163,  161,  159,  157,
+	  155,  153,  151,  149,  147,  145,  143,  141,
+	  139,  137,  135,  133,  131,  129,  127,  125,
+	  123,  121,  119,  117,  115,  113,  111,  109,
+	  107,  105,  103,  101,   99,   97,   95,   93,
+	   91,   89,   87,   85,   83,   81,   79,   77,
+	   75,   73,   71,   69,   67,   65,   63,   61,
+	   59,   57,   55,   53,   51,   49,   47,   45,
+	   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,   46,   48,   50,
+	   52,   54,   56,   58,   60,   62,   64,   66,
+	   68,   70,   72,   74,   76,   78,   80,   82,
+	   84,   86,   88,   90,   92,   94,   96,   98,
+	  100,  102,  104,  106,  108,  110,  112,  114,
+	  116,  118,  120,  122,  124,  126,  128,  130,
+	  132,  134,  136,  138,  140,  142,  144,  146,
+	  148,  150,  152,  154,  156,  158,  160,  162,
+	  164,  166,  168,  170,  172,  174,  176,  178,
+	  180,  182,  184,  186,  188,  190,  192,  194,
+	  196,  198,  200,  202,  204,  206,  208,  210,
+	  212,  214,  216,  218,  220,  222,  224,  226,
+	  228,  230,  232,  234,  236,  238,  240,  242,
+	  244,  246,  248,  250,  252,  254,  256,  258,
+	  260,  262,  264,  266,  268,  270,  272,  274,
+	  276,  278,  280,  282,  284,  286,  288,  290,
+	  292,  294,  296,  298,  300,
 };
 
 static encode_aux_threshmatch _vq_auxt_res0_256_128_5 = {
         _vq_quantthresh_res0_256_128_5,
         _vq_quantmap_res0_256_128_5,
-	55,
-	55
+	301,
+	301
 };
 
 static static_codebook _vq_book_res0_256_128_5 = {
-	1, 55,
+	1, 301,
         _vq_lengthlist_res0_256_128_5,
-	1, -522616832, 1611661312, 8, 0,
+	1, -520962048, 1611661312, 9, 0,
         _vq_quantlist_res0_256_128_5,
         NULL,
         &_vq_auxt_res0_256_128_5,

1.3       +82 -4     vorbis/lib/books/res0_256_128aux.vqh

Index: res0_256_128aux.vqh
===================================================================
RCS file: /usr/local/cvsroot/vorbis/lib/books/res0_256_128aux.vqh,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- res0_256_128aux.vqh	2000/11/17 11:47:22	1.2
+++ res0_256_128aux.vqh	2001/01/22 01:38:32	1.3
@@ -20,13 +20,91 @@
 #include "codebook.h"
 
 static long _huff_lengthlist_res0_256_128aux[] = {
-	10,13,16,16,16,16,13,10,11,16,13,12,16, 9, 6, 7,
-	11,12,15, 9, 4, 2, 6,11,11, 9, 5, 2, 4, 8,10, 9,
-	 8, 2, 5, 9,
+	10,17,17,17,17,16,12,15,16,16,16,16,14,16,16,16,
+	16,16,13,16,16,16,16,16,14,16,16,16,16,16,16,16,
+	16,16,16,16,10,15,16,16,16,16,11,13,16,16,16,16,
+	15,15,15,16,16,16,15,16,16,16,16,16,15,16,16,16,
+	16,16,16,16,16,16,16,16,12,16,16,16,16,16,13,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,12,16,16,16,
+	16,16,12,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,
+	12,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,16,16,16,16,16,
+	16,16,16,16,16,16,16,16, 6,12,15,16,15,16, 9,12,
+	15,16,16,16,16,14,16,16,16,16,13,16,16,16,16,16,
+	13,16,16,16,16,16,16,16,16,16,16,16, 5,10,13,14,
+	16,16, 6, 6, 9,12,15,16,11, 9,10,13,16,16,13,13,
+	12,14,16,16,14,16,16,16,16,16,16,16,16,16,16,16,
+	 9,13,15,16,16,16, 8, 8, 9,13,15,16,11, 8, 8,11,
+	16,16,12,11,11,12,16,16,16,16,16,16,16,16,16,16,
+	16,16,16,16,11,14,16,16,16,16,11,11,13,15,16,16,
+	13,10,11,13,16,16,12,13,12,16,16,16,16,16,16,16,
+	16,16,16,16,16,16,16,16,12,16,16,16,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,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,
+	 6,12,15,16,16,16, 9,11,15,16,16,16,15,15,14,16,
+	16,16,15,16,15,16,16,16,14,16,16,16,16,16,16,16,
+	16,16,16,16, 4, 9,12,13,16,16, 5, 5, 8,10,13,16,
+	11, 7, 8,10,14,16,13,11,10,12,16,16,15,16,16,16,
+	16,16,16,16,16,16,16,16, 8,11,16,15,16,16, 6, 6,
+	 7,10,16,16,10, 6, 6, 8,16,16,13, 9, 8,10,16,16,
+	16,16,16,16,16,16,16,16,16,16,16,16,10,14,15,16,
+	16,16, 9, 9,10,12,16,16,11, 8, 8,11,16,16,12,11,
+	10,12,15,16,15,16,16,16,16,16,16,16,16,16,16,16,
+	13,16,16,16,16,16,16,15,16,16,16,16,16,15,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, 7,13,16,16,16,16,10,11,
+	16,15,16,16,15,14,16,16,16,16,16,15,15,14,16,16,
+	16,16,16,16,16,16,16,16,16,16,16,16, 6,10,13,14,
+	16,16, 7, 7,10,11,14,16,11, 9,10,13,16,16,13,12,
+	12,13,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
+	 8,12,16,15,16,16, 8, 7, 9,12,15,16,11, 8, 8,11,
+	16,16,14,11,10,12,16,16,16,16,16,16,16,16,16,16,
+	16,16,16,16,11,15,15,16,16,16,10, 9,11,13,16,16,
+	12,10,10,13,16,16,14,12,12,13,16,16,15,16,16,16,
+	16,16,16,16,16,16,16,16,14,15,16,16,16,16,16,14,
+	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,16,16,16,16,16,
+	10,13,16,16,16,16,12,13,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,16,12,14,16,16,16,16,12,11,15,13,16,16,
+	16,13,10,11,16,16,14,13,11,11,16,16,15,16,16,15,
+	16,16,16,16,16,16,16,16,13,16,16,15,15,16,13,10,
+	 8, 8,13,16,14, 7, 4, 5,11,16,12, 7, 5, 6,12,16,
+	15,12,12,13,14,16,16,16,16,16,16,16,14,15,16,13,
+	15,16,14,10, 7, 7,11,15,14, 6, 3, 4,10,16,12, 7,
+	 5, 5,11,16,15,11,11,11,16,16,16,16,16,16,16,16,
+	16,16,15,14,15,16,16,14,11,11,13,16,16,11, 8, 9,
+	12,16,15,11, 9,10,14,16,16,15,15,13,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,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,15,16,16,
+	16,16,16,16,16,15,16,16,16,16,13,14,16,16,15,15,
+	13,14,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
+	15,16,16,16,16,16,16,13,11,12,15,16,15,11, 8, 9,
+	15,16,15,11, 9,10,14,16,16,15,14,16,16,16,16,16,
+	16,16,16,16,16,16,16,16,16,16,16,13,11,10,15,16,
+	15,11, 7, 8,13,16,15,11, 8, 9,14,16,15,15,14,13,
+	16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
+	15,14,15,16,16,15,12,12,14,16,16,15,13,13,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,
 };
 
 static static_codebook _huff_book_res0_256_128aux = {
-	2, 36,
+	4, 1296,
         _huff_lengthlist_res0_256_128aux,
         0, 0, 0, 0, 0,
         NULL,

1.3       +13 -14    vorbis/lib/books/res0_96_1024_1.vqh

Index: res0_96_1024_1.vqh
===================================================================
RCS file: /usr/local/cvsroot/vorbis/lib/books/res0_96_1024_1.vqh,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- res0_96_1024_1.vqh	2000/11/17 11:47:22	1.2
+++ res0_96_1024_1.vqh	2001/01/22 01:38:32	1.3
@@ -1,13 +1,12 @@
 /********************************************************************
  *                                                                  *
- * THIS FILE IS PART OF THE Ogg Vorbis SOFTWARE CODEC SOURCE CODE.  *
+ * THIS FILE IS PART OF THE OggVorbis 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 GNU LESSER/LIBRARY PUBLIC LICENSE, WHICH IS INCLUDED WITH    *
+ * THIS SOURCE. PLEASE READ THESE TERMS BEFORE DISTRIBUTING.        *
  *                                                                  *
- * THE OggSQUISH SOURCE CODE IS (C) COPYRIGHT 1994-1999             *
- * by 1999 Monty <monty at xiph.org> and The XIPHOPHORUS Company       *
- * http://www.xiph.org/                                             *
+ * THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2001             *
+ * by the XIPHOPHORUS Company, http://www.xiph.org/                 *
  *                                                                  *
  ********************************************************************
 
@@ -21,17 +20,17 @@
 
 static long _vq_quantlist_res0_96_1024_1[] = {
         1,
-	2,
         0,
+	2,
 };
 
 static long _vq_lengthlist_res0_96_1024_1[] = {
-	 1, 4, 4, 4, 7, 7, 4, 7, 7, 5, 8, 8, 8,11,11, 8,
-	11,11, 5, 8, 8, 8,11,11, 8,11,11, 5, 8, 8, 8,11,
-	11, 8,11,11, 8,11,11,11,15,15,11,15,15, 8,11,11,
-	11,15,15,11,15,15, 5, 8, 8, 8,11,11, 8,11,11, 8,
-	11,11,11,15,15,11,15,15, 8,11,11,12,15,15,12,15,
-	15,
+	 1, 4, 4, 5, 8, 7, 4, 7, 7, 5, 8, 8, 8,11,11, 8,
+	10,11, 5, 8, 8, 8,11,10, 8,10,10, 5, 8, 8, 8,11,
+	11, 8,11,10, 8,11,11,11,14,14,11,14,14, 8,11,11,
+	11,14,14,11,14,14, 4, 8, 8, 8,11,11, 8,11,11, 8,
+	11,11,11,14,14,11,14,14, 8,11,11,11,14,14,10,14,
+	14,
 };
 
 static float _vq_quantthresh_res0_96_1024_1[] = {
@@ -39,7 +38,7 @@
 };
 
 static long _vq_quantmap_res0_96_1024_1[] = {
-	    2,    0,    1,
+	    1,    0,    2,
 };
 
 static encode_aux_threshmatch _vq_auxt_res0_96_1024_1 = {

1.2       +12 -13    vorbis/lib/books/res0_96_1024_2.vqh

Index: res0_96_1024_2.vqh
===================================================================
RCS file: /usr/local/cvsroot/vorbis/lib/books/res0_96_1024_2.vqh,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- res0_96_1024_2.vqh	2000/11/08 06:08:13	1.1
+++ res0_96_1024_2.vqh	2001/01/22 01:38:32	1.2
@@ -1,13 +1,12 @@
 /********************************************************************
  *                                                                  *
- * THIS FILE IS PART OF THE Ogg Vorbis SOFTWARE CODEC SOURCE CODE.  *
+ * THIS FILE IS PART OF THE OggVorbis 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 GNU LESSER/LIBRARY PUBLIC LICENSE, WHICH IS INCLUDED WITH    *
+ * THIS SOURCE. PLEASE READ THESE TERMS BEFORE DISTRIBUTING.        *
  *                                                                  *
- * THE OggSQUISH SOURCE CODE IS (C) COPYRIGHT 1994-1999             *
- * by 1999 Monty <monty at xiph.org> and The XIPHOPHORUS Company       *
- * http://www.xiph.org/                                             *
+ * THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2001             *
+ * by the XIPHOPHORUS Company, http://www.xiph.org/                 *
  *                                                                  *
  ********************************************************************
 
@@ -21,16 +20,16 @@
 
 static long _vq_quantlist_res0_96_1024_2[] = {
         1,
-	2,
         0,
+	2,
 };
 
 static long _vq_lengthlist_res0_96_1024_2[] = {
-	 3, 4, 5, 4, 6, 6, 5, 6, 6, 5, 6, 6, 6, 7, 7, 6,
-	 7, 8, 5, 6, 6, 6, 7, 7, 6, 8, 7, 5, 6, 6, 6, 8,
-	 8, 6, 8, 8, 6, 8, 8, 7, 9, 9, 8, 9, 9, 6, 8, 8,
-	 7, 9, 9, 8, 9, 9, 5, 6, 6, 6, 8, 8, 6, 8, 8, 6,
-	 8, 8, 8, 9, 9, 8, 9, 9, 6, 8, 8, 8, 9, 9, 8, 9,
+	 3, 5, 5, 5, 6, 6, 5, 6, 6, 5, 6, 6, 6, 7, 7, 6,
+	 7, 7, 5, 6, 6, 6, 7, 7, 6, 7, 7, 5, 6, 6, 6, 8,
+	 8, 6, 8, 7, 6, 8, 7, 7, 9, 9, 8, 9, 9, 6, 7, 8,
+	 7, 9, 9, 7, 9, 9, 5, 6, 6, 6, 7, 7, 6, 8, 7, 6,
+	 8, 7, 7, 9, 9, 7, 9, 9, 6, 7, 7, 7, 9, 9, 7, 9,
          9,
 };
 
@@ -39,7 +38,7 @@
 };
 
 static long _vq_quantmap_res0_96_1024_2[] = {
-	    2,    0,    1,
+	    1,    0,    2,
 };
 
 static encode_aux_threshmatch _vq_auxt_res0_96_1024_2 = {

1.3       +139 -50   vorbis/lib/books/res0_96_1024_3.vqh

Index: res0_96_1024_3.vqh
===================================================================
RCS file: /usr/local/cvsroot/vorbis/lib/books/res0_96_1024_3.vqh,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- res0_96_1024_3.vqh	2000/11/17 11:47:22	1.2
+++ res0_96_1024_3.vqh	2001/01/22 01:38:32	1.3
@@ -1,13 +1,12 @@
 /********************************************************************
  *                                                                  *
- * THIS FILE IS PART OF THE Ogg Vorbis SOFTWARE CODEC SOURCE CODE.  *
+ * THIS FILE IS PART OF THE OggVorbis 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 GNU LESSER/LIBRARY PUBLIC LICENSE, WHICH IS INCLUDED WITH    *
+ * THIS SOURCE. PLEASE READ THESE TERMS BEFORE DISTRIBUTING.        *
  *                                                                  *
- * THE OggSQUISH SOURCE CODE IS (C) COPYRIGHT 1994-1999             *
- * by 1999 Monty <monty at xiph.org> and The XIPHOPHORUS Company       *
- * http://www.xiph.org/                                             *
+ * THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2001             *
+ * by the XIPHOPHORUS Company, http://www.xiph.org/                 *
  *                                                                  *
  ********************************************************************
 
@@ -21,53 +20,53 @@
 
 static long _vq_quantlist_res0_96_1024_3[] = {
         3,
-	4,
-	6,
         2,
+	4,
         0,
+	6,
 };
 
 static long _vq_lengthlist_res0_96_1024_3[] = {
-	 2, 5, 7, 5, 7, 5, 7, 9, 7, 9, 7, 9,13, 9,13, 5,
-	 7, 9, 7, 9, 7, 9,13, 9,13, 5, 7, 9, 7, 9, 7, 8,
-	11, 8,11, 9,11,15,11,15, 7, 8,11, 8,11,10,11,15,
-	11,15, 7, 9,11, 9,11, 9,11,15,11,15,13,15,17,15,
-	18, 9,11,15,11,15,13,15,17,16,18, 5, 7, 9, 7, 9,
-	 7, 8,11, 8,11,10,11,15,11,15, 7, 8,11, 8,11,10,
-	12,15,11,15, 7, 9,12, 9,11,10,11,15,11,15,13,15,
-	18,15,18,10,11,15,11,15,13,15,18,15,18, 5, 7, 9,
-	 7, 9, 7, 8,11, 8,11, 9,11,15,11,16, 7, 8,11, 8,
-	11, 9,11,15,11,15, 7, 8,11, 9,11, 8,10,13,10,13,
-	11,13,16,13,17, 9,10,13,10,13,11,13,17,13,18,10,
-	12,15,12,15,11,13,17,13,18,16,16,18,17,19,12,13,
-	18,13,17,16,17,19,18,20, 7, 8,11, 9,11, 9,10,13,
-	10,13,12,13,17,13,17, 8,10,13,10,13,12,13,17,13,
-	17,10,12,15,12,15,11,13,17,13,17,15,17,20,17,18,
-	12,13,16,13,17,16,18,21,17,21, 7, 9,12, 9,12, 9,
-	12,16,12,16,12,15,19,16,18, 9,12,16,12,15,12,16,
-	20,15,20,10,12,15,12,16,12,13,17,14,18,15,17,19,
-	18,21,12,13,18,13,17,15,18,19,17,19,14,16,18,16,
-	18,15,16,18,17,20,18,20,19,21,21,16,18,20,18,20,
-	20,21,21,21,20,10,12,16,12,15,11,14,17,13,18,16,
-	18,20,18,19,12,13,18,13,18,15,18,19,17,19,14,16,
-	19,16,20,15,18,19,17,21,18,20,21,19,21,15,18,21,
-	19,21,19,20,19,20,21, 5, 7, 9, 7, 9, 7, 8,11, 8,
-	11, 9,11,15,11,15, 7, 8,11, 9,11, 9,11,16,12,15,
-	 7, 9,11, 9,11, 8,10,13,10,13,12,13,17,13,16, 9,
-	10,13,10,13,11,13,16,14,17,10,12,15,12,15,12,14,
-	17,13,17,16,18,21,17,19,11,13,16,13,17,15,17,18,
-	17,19, 7, 9,11, 9,12, 8,10,13,10,13,12,14,17,13,
-	17, 9,10,13,10,13,12,13,17,13,17,10,12,16,12,15,
-	12,13,17,13,18,15,18,19,18,20,11,13,17,13,17,15,
-	17,20,16,17, 7,10,12,10,12, 9,12,15,12,16,12,15,
-	18,15,18, 9,12,16,12,15,12,16,18,16,20,10,12,16,
-	12,16,12,13,17,13,17,15,19,21,17,21,12,13,17,14,
-	17,16,17,18,18,20,14,16,19,16,20,16,18,20,18,19,
-	18,18,20,19,20,16,17,20,18,19,18,18,19,19,21,10,
-	12,15,12,16,12,14,17,14,18,16,18,20,18,21,12,14,
-	18,13,17,15,18,20,17,20,14,16,19,16,19,16,18,19,
-	18,20,20,21,20,19,21,15,17,19,18,19,18,19,21,17,
-	20,
+	 2, 4, 4, 6, 6, 5, 7, 7,10,10, 5, 7, 7,10,10, 7,
+	10,10,15,15, 7,10,10,15,15, 4, 7, 7, 9, 9, 7,10,
+	10,12,12, 7,10,10,12,12,10,13,12,19,18,10,13,13,
+	17,19, 4, 7, 7, 9, 9, 7,10,10,12,12, 7,10, 9,12,
+	12,10,13,12,19,17,10,13,12,18,16, 7,10,10,13,13,
+	10,13,13,18,17,10,13,13,17,16,16,18,17, 0,21,15,
+	20,19, 0, 0, 7,10, 9,13,13,10,13,13,16,18,10,13,
+	13,17,18,16,19,18, 0, 0,15,18,17,20, 0, 5, 7, 7,
+	 9, 9, 7,10,10,13,13, 7,10,10,13,13,10,13,13,17,
+	18,10,13,13,18,18, 7,10,10,13,13,10,12,12,15,15,
+	10,12,12,15,15,13,15,15,20, 0,13,15,15,19,20, 7,
+	10,10,13,13,10,12,12,15,15,10,12,12,15,15,13,16,
+	15, 0,21,13,15,15, 0,21,10,13,13,17,17,13,15,16,
+	19,21,13,15,16,21,21,17,19,21, 0, 0,18,20,20, 0,
+	 0,10,13,13,17,18,13,16,15,21,19,13,16,15,21,20,
+	18, 0,19, 0,21,20,21,20, 0,21, 5, 7, 7, 9, 9, 7,
+	10,10,13,12, 7,10,10,13,13,10,13,13,18,17,10,13,
+	13,18,18, 7,10,10,13,12,10,12,12,16,16,10,12,12,
+	15,15,13,16,15,21,20,13,15,15,19,21, 7,10,10,12,
+	12,10,12,12,15,15,10,12,12,15,15,13,15,15,20,20,
+	13,16,15,20,18,10,13,13,17,17,13,16,15, 0,20,13,
+	15,16,19, 0,18,19,21, 0, 0,18,18, 0, 0, 0,10,13,
+	13,18,18,13,15,15,21,20,13,15,15,21,21,19,21,21,
+	 0, 0,18, 0,19, 0, 0, 7,10,10,13,13,10,13,13,18,
+	17,10,13,13,19,18,13,18,18, 0, 0,13,18,18, 0,21,
+	10,13,13,18,17,13,15,15,21,20,13,16,15,21,20,17,
+	21, 0, 0, 0,17, 0,20, 0, 0,10,13,13,17,17,13,16,
+	15,21,21,13,16,15,20,20,18,21, 0, 0, 0,18,21,21,
+	 0, 0,15,18,20, 0, 0,18,19,19,21, 0,19, 0,21, 0,
+	 0, 0, 0, 0, 0, 0,21, 0, 0, 0, 0,15,20,18, 0, 0,
+	18,20,21,21, 0,18,20,21, 0, 0, 0, 0, 0, 0, 0, 0,
+	 0, 0, 0, 0, 7,10,10,13,13,10,13,13,17,17,10,13,
+	13,18,18,13,17,18, 0, 0,13,18,17, 0, 0,10,13,13,
+	17,17,13,15,16, 0, 0,13,15,16,20, 0,18,21,20, 0,
+	 0,19,19,21, 0, 0,10,13,13,18,18,13,15,15,21, 0,
+	13,16,16,20, 0,18,20,18, 0, 0,18, 0,21, 0, 0,15,
+	19,19,21,21,20, 0,21, 0, 0,20,19,21, 0, 0, 0, 0,
+	 0, 0, 0,21, 0, 0, 0, 0,15,21,18, 0, 0,20,21,19,
+	 0, 0,17,20,19, 0, 0, 0, 0, 0, 0, 0,20, 0, 0, 0,
+	 0,
 };
 
 static float _vq_quantthresh_res0_96_1024_3[] = {
@@ -75,7 +74,7 @@
 };
 
 static long _vq_quantmap_res0_96_1024_3[] = {
-	    4,    3,    0,    1,    2,
+	    3,    1,    0,    2,    4,
 };
 
 static encode_aux_threshmatch _vq_auxt_res0_96_1024_3 = {
@@ -85,6 +84,96 @@
         5
 };
 
+static long _vq_pigeonmap_res0_96_1024_3[] = {
+	    1,     0,     0,     0,     0,     0, 
+};
+
+static long _vq_fitlist_res0_96_1024_3[] = {
+	    1,     5,     6,     8,    16,    25,    26,    28, 
+	   30,    31,    33,    40,    41,    43,    76,    80, 
+	   81,    83,    91,   125,   126,   128,   130,   131, 
+	  133,   140,   141,   143,   150,   151,   153,   155, 
+	  156,   158,   165,   166,   168,   200,   201,   203, 
+	  205,   206,   208,   215,   216,   376,   380,   381, 
+	  383,   391,   400,   401,   403,   405,   406,   408, 
+	  415,   416,   451,   455,   456,   458,     0,     7, 
+	   15,    27,    32,    42,    75,    82,    90,   127, 
+	  132,   142,   152,   157,   167,   202,   207,   217, 
+	  375,   382,   390,   402,   407,   450,   457,     2, 
+	   17,    77,    92,   377,   392,   452,     9,    29, 
+	   34,    44,    84,   129,   134,   144,   154,   159, 
+	  204,   209,   384,   404,   409,     4,    19,    79, 
+	   94,   379,     3,    11,    35,    36,    38,    78, 
+	   86,   135,   136,   138,   160,   161,   163,   210, 
+	  211,   213,   378,   386,   410,   411,   413,    10, 
+	   37,    85,   137,   162,   212,   385,   412,   460, 
+	   12,    87,   387,   462,    39,   139,   164,   214, 
+	  414,    14,    89,   389,    13,    88,   388,    21, 
+	   45,    46,    48,    96,   145,   146,   148,   170, 
+	  171,   173,   220,   221,   396,   420,    20,    47, 
+	   95,   147,   172,   222,   395,   422,   470,    22, 
+	   97,   397,    49,   149,   174,    24,   399,    23, 
+	   18,    51,    55,    56,    58,    66,   175,   176, 
+	  178,   180,   181,   183,   190,   191,   426,   430, 
+	  431,   433,   441,    50,    57,    65,   177,   182, 
+	  192,   425,   432,   440,    52,    67,   427,    59, 
+	  179,   184,   194,   434,    54,    69,   429,    53, 
+	   61,   185,   186,   188,   428,   436,    60,   187, 
+	  435,    62,   437,   189,    64,   439,    63,   438, 
+	   71,   195,   196,   446,    70,   197,   445,    72, 
+	  447,   199,    74,    73,    68,   101,   105,   106, 
+	  108,   116,   225,   226,   228,   230,   231,   233, 
+	  240,   476,   480,   481,   483,   100,   107,   115, 
+	  227,   232,   242,   475,   482,   102,   117,   477, 
+	  109,   229,   234,   244,   104,   103,   111,   235, 
+	  236,   238,   486,   110,   237,   485,   112,   487, 
+	  239,   114,   113,   121,   245,   246,   120,   247, 
+	  122,   249,   123,   251,   255,   256,   258,   266, 
+	  275,   276,   278,   280,   281,   283,   290,   291, 
+	  293,   326,   330,   331,   341,   250,   257,   265, 
+	  277,   282,   292,   325,   332,   340,   252,   267, 
+	  327,   342,   259,   279,   284,   294,   334,   254, 
+	  269,   329,   253,   261,   285,   286,   288,   328, 
+	  336,   260,   287,   335,   262,   337,   289,   264, 
+	  263,   338,   271,   295,   296,   298,   346,   270, 
+	  297,   345,   272,   299,   274,   273,   268,   301, 
+	  305,   306,   308,   316,   300,   307,   315,   302, 
+	  317,   309,   304,   319,   303,   311,   310,   312, 
+	  314,   313,   321,   320,   322,   324,   323,   318, 
+	  351,   355,   356,   358,   366,   350,   357,   365, 
+	  352,   367,   359,   354,   353,   361,   360,   362, 
+	  364,   363,   370,   372,   572,   612,   501,   505, 
+	  506,   508,   516,   525,   526,   528,   530,   531, 
+	  540,   541,   576,   580,   500,   507,   515,   527, 
+	  532,   542,   575,   582,   502,   517,   577,   509, 
+	  529,   504,   579,   503,   511,   535,   536,   538, 
+	  578,   586,   510,   537,   585,   512,   587,   514, 
+	  513,   521,   545,   546,   520,   547,   595,   522, 
+	  551,   555,   556,   558,   566,   550,   557,   565, 
+	  552,   567,   554,   553,   561,   560,   562,   563, 
+	  570,   601,   605,   606,   600,   607,   602,   611, 
+	  610,   620, 
+};
+
+static long _vq_fitmap_res0_96_1024_3[] = {
+	    0,     0,     0,     0,     0,     0,     0,     0, 
+	    0,     0,     0,     0,     0,     0,     0,     0, 
+};
+
+static long _vq_fitlength_res0_96_1024_3[] = {
+	  506,   506,   506,   506,   506,   506,   506,   506, 
+	  506,   506,   506,   506,   506,   506,   506,   506, 
+};
+
+static encode_aux_pigeonhole _vq_auxp_res0_96_1024_3 = {
+	-3, 1, 6, 2,
+	_vq_pigeonmap_res0_96_1024_3,
+	506,
+	_vq_fitlist_res0_96_1024_3,
+	_vq_fitmap_res0_96_1024_3,
+	_vq_fitlength_res0_96_1024_3
+};
+
 static static_codebook _vq_book_res0_96_1024_3 = {
         4, 625,
         _vq_lengthlist_res0_96_1024_3,
@@ -92,7 +181,7 @@
         _vq_quantlist_res0_96_1024_3,
         NULL,
         &_vq_auxt_res0_96_1024_3,
-	NULL,
+	&_vq_auxp_res0_96_1024_3,
         0
 };
 

1.3       +48 -49    vorbis/lib/books/res0_96_1024_4.vqh

Index: res0_96_1024_4.vqh
===================================================================
RCS file: /usr/local/cvsroot/vorbis/lib/books/res0_96_1024_4.vqh,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- res0_96_1024_4.vqh	2000/11/17 11:47:22	1.2
+++ res0_96_1024_4.vqh	2001/01/22 01:38:32	1.3
@@ -1,13 +1,12 @@
 /********************************************************************
  *                                                                  *
- * THIS FILE IS PART OF THE Ogg Vorbis SOFTWARE CODEC SOURCE CODE.  *
+ * THIS FILE IS PART OF THE OggVorbis 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 GNU LESSER/LIBRARY PUBLIC LICENSE, WHICH IS INCLUDED WITH    *
+ * THIS SOURCE. PLEASE READ THESE TERMS BEFORE DISTRIBUTING.        *
  *                                                                  *
- * THE OggSQUISH SOURCE CODE IS (C) COPYRIGHT 1994-1999             *
- * by 1999 Monty <monty at xiph.org> and The XIPHOPHORUS Company       *
- * http://www.xiph.org/                                             *
+ * THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2001             *
+ * by the XIPHOPHORUS Company, http://www.xiph.org/                 *
  *                                                                  *
  ********************************************************************
 
@@ -21,53 +20,53 @@
 
 static long _vq_quantlist_res0_96_1024_4[] = {
         3,
-	4,
-	6,
         2,
+	4,
         0,
+	6,
 };
 
 static long _vq_lengthlist_res0_96_1024_4[] = {
-	 5, 6, 8, 6, 8, 6, 6, 9, 6, 9, 8, 9,11, 9,11, 6,
-	 6, 9, 6, 9, 8, 9,11, 9,11, 6, 7, 9, 6, 9, 6, 7,
-	10, 7, 9, 9,10,12,10,12, 7, 7,10, 7,10, 9,10,12,
-	10,12, 8, 9,11, 9,11, 9,10,12,10,12,11,12,14,13,
-	15, 9,10,12,10,12,11,12,15,12,15, 6, 7, 9, 7, 9,
-	 7, 7,10, 7,10, 9,10,12,10,12, 7, 7,10, 7,10, 9,
-	10,12,10,12, 8, 9,11, 9,11, 9,10,12,10,12,11,12,
-	15,12,14, 9,10,12,10,12,11,12,14,12,15, 6, 7, 9,
-	 7, 9, 7, 7,10, 7,10, 9,10,12,10,12, 7, 7,10, 7,
-	10, 9,10,12,10,12, 7, 7,10, 7,10, 7, 8,10, 8,11,
-	10,10,13,11,13, 7, 8,10, 8,11,10,11,13,11,13, 9,
-	10,13,10,13,10,10,13,11,13,12,13,15,13,15,10,11,
-	13,11,13,13,14,16,13,15, 7, 7,10, 7,10, 7, 8,10,
-	 8,10,10,11,13,11,13, 7, 8,10, 8,11,10,11,13,11,
-	13, 9,10,12,10,12,10,11,13,11,13,12,13,17,13,15,
-	10,11,14,11,14,12,13,16,13,15, 8, 9,11, 9,11, 9,
-	10,12,10,13,12,13,15,13,15, 9,10,12,10,12,11,13,
-	15,13,15, 9,10,12,10,12,10,11,13,11,13,13,14,15,
-	14,16,10,11,14,11,13,13,14,16,13,16,12,13,15,13,
-	15,13,13,16,14,16,15,15,16,16,18,13,14,16,14,16,
-	15,16,18,16,18, 9,10,13,10,12,10,11,13,11,14,13,
-	14,16,13,16,10,11,14,11,14,13,14,16,14,16,12,13,
-	15,13,15,13,14,16,13,16,15,15,16,15,16,13,14,15,
-	14,16,15,16,16,17,17, 6, 7, 9, 7, 9, 7, 7,10, 7,
-	10, 9,10,12,10,12, 7, 7,10, 7,10, 9,10,12,10,12,
-	 7, 7,10, 7,10, 7, 8,10, 8,11,10,11,13,11,13, 7,
-	 8,10, 8,11,10,11,13,11,13, 9,10,12,10,13,10,11,
-	14,11,13,12,13,15,14,15,10,11,14,11,13,12,13,15,
-	13,16, 7, 7,10, 7,10, 7, 8,10, 8,10,10,11,13,11,
-	13, 7, 8,10, 8,10,10,11,13,11,13, 9,10,13,10,13,
-	10,11,13,11,14,13,14,15,14,15,10,11,13,11,13,13,
-	14,15,13,15, 8, 9,11, 9,11, 9,10,12,10,12,12,13,
-	15,13,15, 9,10,13,10,12,12,13,15,13,15, 9,10,12,
-	10,12,10,11,14,11,13,13,14,16,13,16,10,11,13,11,
-	14,13,14,16,14,16,12,13,15,13,15,13,14,17,14,16,
-	15,17,17,16,17,13,13,15,13,16,15,15,17,16,17, 9,
-	10,13,10,13,10,11,14,11,14,13,13,15,13,15,10,11,
-	14,11,13,13,14,16,13,16,12,13,15,13,15,13,14,15,
-	14,16,15,16,17,16,18,13,14,16,14,17,15,16,17,15,
-	16,
+	 5, 6, 5, 8, 8, 6, 6, 6, 9, 9, 5, 6, 6, 9, 9, 8,
+	 9, 9,11,11, 8, 9, 9,11,11, 6, 7, 6, 9, 9, 6, 7,
+	 7,10,10, 6, 7, 7,10,10, 9,10,10,12,12, 9,10,10,
+	12,12, 6, 6, 6, 9, 9, 6, 7, 7,10,10, 6, 7, 7,10,
+	10, 9,10,10,12,12, 9,10,10,12,12, 8, 9, 9,12,12,
+	 9,10,10,13,12, 9,10,10,13,13,12,13,13,15,14,12,
+	13,13,15,15, 8, 9, 9,12,12, 9,10,10,13,13, 9,10,
+	10,13,13,12,13,13,15,15,12,13,13,15,15, 6, 7, 7,
+	 9, 9, 7, 8, 8,10,10, 7, 7, 7,10,10, 9,10,10,13,
+	13, 9,10,10,12,12, 7, 8, 8,10,10, 7, 8, 8,11,11,
+	 7, 8, 8,11,11,10,11,11,13,13,10,11,11,13,13, 7,
+	 8, 8,10,10, 7, 8, 8,11,11, 7, 8, 8,11,11,10,11,
+	11,13,13,10,11,11,13,13, 9,11,10,14,13,10,11,11,
+	13,14,10,11,11,14,14,13,13,14,15,16,13,13,14,15,
+	15, 9,10,11,13,13,10,11,11,14,13,10,11,11,13,14,
+	13,13,13,16,15,13,13,14,15,15, 6, 7, 7, 9, 9, 7,
+	 7, 7,10,10, 7, 7, 7,10,10, 9,10,10,12,13, 9,10,
+	10,13,13, 7, 8, 8,10,10, 7, 8, 8,11,11, 7, 8, 8,
+	11,11,10,11,11,13,13,10,11,11,13,13, 7, 8, 8,10,
+	10, 7, 8, 8,11,11, 7, 8, 8,11,11,10,11,11,13,13,
+	10,11,11,13,13, 9,11,10,13,13,10,11,11,14,13,10,
+	11,11,13,13,13,13,13,15,15,13,13,13,15,15, 9,10,
+	10,13,13,10,11,11,13,14,10,11,11,13,13,13,14,13,
+	16,15,13,14,13,15,14, 8,10,10,12,12,10,11,11,13,
+	13, 9,10,10,13,13,13,14,14,16,16,13,13,14,15,15,
+	 9,11,11,13,13,11,11,11,14,14,10,12,11,14,14,14,
+	14,14,15,16,13,14,14,16,16, 9,11,11,13,13,11,11,
+	11,14,14,10,11,11,14,14,14,14,14,15,16,13,14,14,
+	15,16,13,14,13,15,15,13,14,14,16,16,14,14,14,16,
+	16,16,15,16,16,18,15,16,16,18,17,13,13,14,16,16,
+	13,14,14,15,15,13,14,14,15,16,16,16,16,16,16,16,
+	16,15,17,17, 8, 9, 9,12,12, 9,11,11,13,13,10,11,
+	11,13,13,13,13,13,15,15,13,13,13,15,15, 9,11,11,
+	13,13,10,11,11,14,14,10,11,11,14,14,14,14,14,15,
+	16,14,14,14,15,16, 9,11,10,13,13,10,11,12,13,13,
+	10,11,11,14,14,13,14,14,16,16,13,14,14,16,16,13,
+	14,13,16,15,13,14,14,16,16,13,14,14,16,15,16,16,
+	16,17,17,15,16,16,17,17,13,14,14,16,15,13,14,14,
+	16,16,14,13,13,15,16,16,16,15,17,17,16,16,15,17,
+	17,
 };
 
 static float _vq_quantthresh_res0_96_1024_4[] = {
@@ -75,7 +74,7 @@
 };
 
 static long _vq_quantmap_res0_96_1024_4[] = {
-	    4,    3,    0,    1,    2,
+	    3,    1,    0,    2,    4,
 };
 
 static encode_aux_threshmatch _vq_auxt_res0_96_1024_4 = {

1.3       +17 -18    vorbis/lib/books/res0_96_1024_5.vqh

Index: res0_96_1024_5.vqh
===================================================================
RCS file: /usr/local/cvsroot/vorbis/lib/books/res0_96_1024_5.vqh,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- res0_96_1024_5.vqh	2000/11/17 11:47:22	1.2
+++ res0_96_1024_5.vqh	2001/01/22 01:38:32	1.3
@@ -1,13 +1,12 @@
 /********************************************************************
  *                                                                  *
- * THIS FILE IS PART OF THE Ogg Vorbis SOFTWARE CODEC SOURCE CODE.  *
+ * THIS FILE IS PART OF THE OggVorbis 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 GNU LESSER/LIBRARY PUBLIC LICENSE, WHICH IS INCLUDED WITH    *
+ * THIS SOURCE. PLEASE READ THESE TERMS BEFORE DISTRIBUTING.        *
  *                                                                  *
- * THE OggSQUISH SOURCE CODE IS (C) COPYRIGHT 1994-1999             *
- * by 1999 Monty <monty at xiph.org> and The XIPHOPHORUS Company       *
- * http://www.xiph.org/                                             *
+ * THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2001             *
+ * by the XIPHOPHORUS Company, http://www.xiph.org/                 *
  *                                                                  *
  ********************************************************************
 
@@ -21,23 +20,23 @@
 
 static long _vq_quantlist_res0_96_1024_5[] = {
         8,
-	9,
-	11,
-	13,
-	16,
         7,
+	9,
         5,
+	11,
         3,
+	13,
         0,
+	16,
 };
 
 static long _vq_lengthlist_res0_96_1024_5[] = {
-	 2, 3, 5, 6, 8, 4, 5, 6, 8, 4, 5, 7, 7, 9, 5, 7,
-	 7, 9, 6, 7, 8, 9,10, 7, 8, 9,11, 7, 8, 9,10,12,
-	 8, 9,10,12, 9,10,11,12,13,10,11,12,13, 4, 5, 7,
-	 8, 9, 5, 7, 7, 9, 6, 7, 8, 9,10, 7, 8, 9,10, 7,
-	 8, 9,10,12, 8, 9,10,12, 9,10,11,12,13,10,11,12,
-	13,
+	 1, 4, 4, 6, 6, 6, 6, 7, 7, 4, 6, 6, 9, 9, 9, 9,
+	11,11, 4, 6, 6, 9, 9, 9, 9,11,11, 6, 9, 9,12,12,
+	12,12,13,13, 6, 9, 9,12,12,11,11,13,13, 6, 9, 9,
+	12,12,13,13,15,15, 6, 9, 9,12,12,13,13,15,15, 8,
+	12,12,14,14,16,16,17,16, 8,12,12,14,14,15,16,16,
+	17,
 };
 
 static float _vq_quantthresh_res0_96_1024_5[] = {
@@ -45,8 +44,8 @@
 };
 
 static long _vq_quantmap_res0_96_1024_5[] = {
-	    8,    7,    6,    5,    0,    1,    2,    3,
-	    4,
+	    7,    5,    3,    1,    0,    2,    4,    6,
+	    8,
 };
 
 static encode_aux_threshmatch _vq_auxt_res0_96_1024_5 = {

1.3       +24 -35    vorbis/lib/books/res0_96_1024_6.vqh

Index: res0_96_1024_6.vqh
===================================================================
RCS file: /usr/local/cvsroot/vorbis/lib/books/res0_96_1024_6.vqh,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- res0_96_1024_6.vqh	2000/11/17 11:47:22	1.2
+++ res0_96_1024_6.vqh	2001/01/22 01:38:32	1.3
@@ -1,13 +1,12 @@
 /********************************************************************
  *                                                                  *
- * THIS FILE IS PART OF THE Ogg Vorbis SOFTWARE CODEC SOURCE CODE.  *
+ * THIS FILE IS PART OF THE OggVorbis 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 GNU LESSER/LIBRARY PUBLIC LICENSE, WHICH IS INCLUDED WITH    *
+ * THIS SOURCE. PLEASE READ THESE TERMS BEFORE DISTRIBUTING.        *
  *                                                                  *
- * THE OggSQUISH SOURCE CODE IS (C) COPYRIGHT 1994-1999             *
- * by 1999 Monty <monty at xiph.org> and The XIPHOPHORUS Company       *
- * http://www.xiph.org/                                             *
+ * THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2001             *
+ * by the XIPHOPHORUS Company, http://www.xiph.org/                 *
  *                                                                  *
  ********************************************************************
 
@@ -20,56 +19,46 @@
 #include "codebook.h"
 
 static long _vq_quantlist_res0_96_1024_6[] = {
-	14,
-	15,
-	17,
-	19,
-	22,
-	25,
-	28,
-	13,
-	11,
+	8,
+	7,
         9,
-	6,
+	5,
+	11,
         3,
+	13,
         0,
+	16,
 };
 
 static long _vq_lengthlist_res0_96_1024_6[] = {
-	 3, 4, 5, 6, 8, 7,10, 4, 5, 6, 8, 7, 9, 4, 5, 6,
-	 7, 8, 9,11, 5, 6, 7, 8, 8,11, 6, 6, 7, 8, 9,10,
-	12, 6, 7, 8, 9,10,12, 7, 8, 8, 9,10,11,13, 8, 8,
-	 9,10,11,13, 8, 9,10,10,12,12,15, 9,10,10,12,12,
-	15, 8, 9,10,11,12,14,16, 9,10,10,11,13,16,10,11,
-	12,13,15,16,19,11,12,13,14,17,19, 4, 5, 6, 7, 8,
-	 9,11, 5, 6, 7, 8, 8,11, 6, 7, 7, 8, 9,10,12, 7,
-	 7, 8, 9,10,12, 7, 8, 8, 9,10,11,14, 8, 8, 9,10,
-	11,13, 8, 9, 9,10,12,12,15, 9, 9,10,11,12,14, 8,
-	 9,10,10,12,14,17, 9,10,10,11,14,16,10,11,12,13,
-	14,16,18,11,12,13,14,16,17,
+	 3, 4, 4, 5, 5, 6, 6, 7, 7, 4, 5, 4, 6, 6, 7, 7,
+	 8, 8, 4, 4, 4, 6, 6, 7, 7, 8, 8, 6, 6, 6, 8, 8,
+	 9, 9,10,10, 6, 6, 6, 8, 8, 9, 9,10,10, 7, 8, 8,
+	 9, 9,10,10,11,11, 7, 8, 8, 9, 9,10,10,11,11, 8,
+	 9, 9,10,11,12,11,12,12, 8, 9, 9,10,10,12,11,12,
+	12,
 };
 
 static float _vq_quantthresh_res0_96_1024_6[] = {
-	-12.5, -9.5, -6.5, -4, -2, -0.5, 0.5, 2, 
-	4, 6.5, 9.5, 12.5, 
+	-6.5, -4, -2, -0.5, 0.5, 2, 4, 6.5, 
 };
 
 static long _vq_quantmap_res0_96_1024_6[] = {
-	   12,   11,   10,    9,    8,    7,    0,    1,
-	    2,    3,    4,    5,    6,
+	    7,    5,    3,    1,    0,    2,    4,    6,
+	    8,
 };
 
 static encode_aux_threshmatch _vq_auxt_res0_96_1024_6 = {
         _vq_quantthresh_res0_96_1024_6,
         _vq_quantmap_res0_96_1024_6,
-	13,
-	13
+	9,
+	9
 };
 
 static static_codebook _vq_book_res0_96_1024_6 = {
-	2, 169,
+	2, 81,
         _vq_lengthlist_res0_96_1024_6,
-	1, -528744448, 1611661312, 5, 0,
+	1, -529530880, 1611661312, 5, 0,
         _vq_quantlist_res0_96_1024_6,
         NULL,
         &_vq_auxt_res0_96_1024_6,

1.3       +39 -77    vorbis/lib/books/res0_96_1024_7.vqh

Index: res0_96_1024_7.vqh
===================================================================
RCS file: /usr/local/cvsroot/vorbis/lib/books/res0_96_1024_7.vqh,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- res0_96_1024_7.vqh	2000/11/17 11:47:22	1.2
+++ res0_96_1024_7.vqh	2001/01/22 01:38:32	1.3
@@ -1,13 +1,12 @@
 /********************************************************************
  *                                                                  *
- * THIS FILE IS PART OF THE Ogg Vorbis SOFTWARE CODEC SOURCE CODE.  *
+ * THIS FILE IS PART OF THE OggVorbis 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 GNU LESSER/LIBRARY PUBLIC LICENSE, WHICH IS INCLUDED WITH    *
+ * THIS SOURCE. PLEASE READ THESE TERMS BEFORE DISTRIBUTING.        *
  *                                                                  *
- * THE OggSQUISH SOURCE CODE IS (C) COPYRIGHT 1994-1999             *
- * by 1999 Monty <monty at xiph.org> and The XIPHOPHORUS Company       *
- * http://www.xiph.org/                                             *
+ * THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2001             *
+ * by the XIPHOPHORUS Company, http://www.xiph.org/                 *
  *                                                                  *
  ********************************************************************
 
@@ -20,99 +19,62 @@
 #include "codebook.h"
 
 static long _vq_quantlist_res0_96_1024_7[] = {
-	102,
-	103,
-	105,
-	107,
-	110,
-	113,
-	116,
-	119,
-	122,
-	126,
-	130,
-	133,
-	137,
-	141,
-	145,
-	149,
-	153,
-	158,
-	163,
-	168,
-	173,
-	174,
-	180,
-	186,
-	192,
-	198,
-	204,
-	101,
-	99,
-	97,
-	94,
-	91,
-	88,
-	85,
-	82,
-	78,
-	74,
-	71,
-	67,
-	63,
-	59,
-	55,
-	51,
-	46,
-	41,
-	36,
-	31,
-	30,
-	24,
+	17,
+	16,
         18,
+	14,
+	20,
         12,
+	22,
+	9,
+	25,
         6,
+	28,
+	3,
+	31,
         0,
+	34,
 };
 
 static long _vq_lengthlist_res0_96_1024_7[] = {
-	 1, 3, 4, 5, 7, 9,11, 6, 8,10,12,15,15,15,16,16,
-	16,16,16,16,16,16,16,16,16,16,16, 3, 4, 5, 7, 9,
-	11, 6, 8,10,13,14,15,16,15,16,16,16,16,16,16,16,
-	16,16,16,16,16,
+	 3, 4, 4, 5, 5, 6, 6, 7, 7, 7, 7, 8, 8, 9, 9, 5,
+	 5, 5, 6, 6, 7, 7, 7, 7, 8, 8, 9, 9,10,10, 4, 5,
+	 5, 6, 6, 7, 7, 8, 7, 8, 8, 9, 9,10,10, 6, 7, 7,
+	 8, 8, 8, 8, 9, 8, 9, 9,10,10,11,11, 6, 7, 7, 8,
+	 8, 8, 8, 9, 8, 9, 9,10,10,11,11, 7, 8, 8, 9, 9,
+	 9, 9, 9, 9,10,10,11,11,11,12, 7, 8, 8, 9, 9, 9,
+	 9,10, 9,10,10,11,11,11,11, 8, 9, 9,10,10,10,10,
+	11,10,11,11,12,12,12,12, 8, 9, 9,10,10,10,10,10,
+	10,11,11,12,11,12,12, 8, 9, 9,10,10,11,11,11,11,
+	12,12,13,13,14,13, 8, 9, 9,10,10,11,11,11,11,12,
+	12,13,13,13,14,10,11,11,12,12,12,12,13,13,13,13,
+	14,14,15,15,10,11,11,12,12,12,12,13,13,13,13,14,
+	14,14,15,12,13,13,13,13,14,14,14,14,15,15,16,15,
+	16,16,12,13,13,14,13,14,14,14,14,15,15,16,15,16,
+	16,
 };
 
 static float _vq_quantthresh_res0_96_1024_7[] = {
-	-99, -93, -87, -81, -75, -71.5, -68.5, -63.5, 
-	-58.5, -53.5, -49, -45, -41, -37, -33, -29.5, 
-	-26, -22, -18.5, -15.5, -12.5, -9.5, -6.5, -4, 
-	-2, -0.5, 0.5, 2, 4, 6.5, 9.5, 12.5, 
-	15.5, 18.5, 22, 26, 29.5, 33, 37, 41, 
-	45, 49, 53.5, 58.5, 63.5, 68.5, 71.5, 75, 
-	81, 87, 93, 99, 
+	-15.5, -12.5, -9.5, -6.5, -4, -2, -0.5, 0.5, 
+	2, 4, 6.5, 9.5, 12.5, 15.5, 
 };
 
 static long _vq_quantmap_res0_96_1024_7[] = {
-	   52,   51,   50,   49,   48,   47,   46,   45,
-	   44,   43,   42,   41,   40,   39,   38,   37,
-	   36,   35,   34,   33,   32,   31,   30,   29,
-	   28,   27,    0,    1,    2,    3,    4,    5,
-	    6,    7,    8,    9,   10,   11,   12,   13,
-	   14,   15,   16,   17,   18,   19,   20,   21,
-	   22,   23,   24,   25,   26,
+	   13,   11,    9,    7,    5,    3,    1,    0,
+	    2,    4,    6,    8,   10,   12,   14,
 };
 
 static encode_aux_threshmatch _vq_auxt_res0_96_1024_7 = {
         _vq_quantthresh_res0_96_1024_7,
         _vq_quantmap_res0_96_1024_7,
-	53,
-	53
+	15,
+	15
 };
 
 static static_codebook _vq_book_res0_96_1024_7 = {
-	1, 53,
+	2, 225,
         _vq_lengthlist_res0_96_1024_7,
-	1, -522616832, 1611661312, 8, 0,
+	1, -527368192, 1611661312, 6, 0,
         _vq_quantlist_res0_96_1024_7,
         NULL,
         &_vq_auxt_res0_96_1024_7,

1.3       +64 -5     vorbis/lib/books/res0_96_1024aux.vqh

Index: res0_96_1024aux.vqh
===================================================================
RCS file: /usr/local/cvsroot/vorbis/lib/books/res0_96_1024aux.vqh,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- res0_96_1024aux.vqh	2000/11/17 11:47:22	1.2
+++ res0_96_1024aux.vqh	2001/01/22 01:38:32	1.3
@@ -20,14 +20,73 @@
 #include "codebook.h"
 
 static long _huff_lengthlist_res0_96_1024aux[] = {
-	 2, 6,10,10,14,11,14,18, 4, 3, 4, 6, 9, 8,12,18,
-	 9, 4, 4, 6, 7, 9,14,18, 8, 5, 5, 5, 7, 6,11,16,
-	13, 9, 6, 6, 6, 7,12,19, 8, 7, 7, 5, 6, 5, 9,14,
-	11,10, 9, 8, 8, 6,10,15,14,13,14,11,12,11,14,19,
+	 4, 8,13,11,15,12,15,16,20,20, 7, 7,10,11,12,13,
+	17,15,19,19,14,11,11,13,14,17,19,18,19,19,10,11,
+	13,12,14,13,18,18,19,19,15,12,14,14,15,18,19,19,
+	19,19,11,12,16,13,18,13,19,17,19,19,16,18,18,18,
+	18,19,19,19,19,19,15,16,19,17,19,17,19,19,19,19,
+	19,19,19,19,19,19,19,19,19,19,19,19,19,19,19,19,
+	19,19,19,19, 6, 7,11,11,13,13,17,17,19,19, 6, 3,
+	 5, 6, 8, 9,13,14,19,19,11, 5, 5, 8, 8,12,15,18,
+	19,19,10, 6, 8, 7, 9,10,15,14,18,19,12, 8, 8,10,
+	10,13,16,19,19,19,10, 9,11, 9,13,10,17,15,19,19,
+	16,13,15,15,17,17,18,19,19,19,14,14,17,15,17,15,
+	18,17,19,19,19,19,19,19,19,18,19,19,19,19,19,19,
+	19,19,19,19,19,19,19,19,11,11,12,14,14,15,19,17,
+	19,19, 9, 5, 5, 8, 8,11,16,17,19,19,11, 5, 4, 8,
+	 7,12,15,17,19,19,13, 7, 7, 9,10,12,16,18,19,19,
+	14, 8, 7,10, 9,13,16,17,19,19,12,10,11,11,13,13,
+	17,17,19,19,18,14,14,15,16,17,17,19,19,19,13,15,
+	16,15,18,16,19,18,19,19,19,19,19,19,19,18,19,19,
+	19,19,19,19,19,19,19,19,19,19,19,19, 9,10,13,12,
+	14,13,19,17,19,19, 9, 6, 7, 7, 9, 9,15,14,18,19,
+	13, 7, 7, 9,10,12,17,18,19,19,11, 7, 8, 7,10, 9,
+	16,14,19,19,14, 9, 9,10,12,13,17,18,19,19,11, 9,
+	11, 9,13,10,16,14,19,19,17,14,15,14,16,15,19,18,
+	19,19,13,13,15,13,17,13,19,16,19,19,19,19,19,18,
+	18,17,19,18,19,19,19,19,19,19,19,19,19,19,19,19,
+	14,12,13,14,15,16,19,19,19,19,11, 7, 7, 9,10,11,
+	15,16,19,19,13, 7, 6, 9, 9,12,17,18,19,19,14, 8,
+	 9, 9,11,11,16,16,19,19,15, 9, 9,10,11,13,17,18,
+	19,19,13,10,11,10,13,12,18,17,19,19,18,14,16,16,
+	16,17,18,18,19,19,15,14,16,14,17,15,19,17,19,19,
+	19,19,19,19,19,19,19,19,19,19,19,19,19,19,19,19,
+	19,19,19,19, 9,11,15,12,16,13,18,16,19,19,11, 8,
+	 9, 8,11, 9,15,14,18,19,16, 9,10,10,12,13,18,17,
+	19,19,12, 8,10, 8,11, 9,16,14,19,19,16,10,11,11,
+	14,13,19,17,19,19,12, 9,11, 8,13, 9,17,13,19,19,
+	18,14,16,15,17,14,19,17,19,19,14,12,15,12,16,11,
+	17,14,19,19,19,18,19,18,19,16,19,19,19,19,19,19,
+	19,19,19,19,19,19,19,19,12,13,15,15,17,19,19,18,
+	19,19,15,10,10,10,12,11,16,15,19,19,17,11,11,12,
+	13,13,17,15,19,19,16,10,11,10,13,11,16,14,19,19,
+	18,11,12,12,10,12,13,12,19,19,15,11,13,10,14,11,
+	15,13,19,19,18,14,15,15,13,13,13,13,17,19,16,13,
+	17,13,15,12,14,12,17,19,18,19,19,19,18,19,17,16,
+	18,19,19,19,19,19,19,19,19,19,19,19,10,13,16,14,
+	17,15,18,17,19,19,13,10,12,11,13,11,15,15,19,19,
+	19,13,12,13,13,14,15,15,19,19,12, 9,13,10,13,11,
+	14,14,19,19,16,11,11,12, 8,11, 9,11,18,19,10,10,
+	13, 9,13, 9,11,10,15,19,16,12,12,11, 8, 9, 7, 9,
+	15,19,11,11,14,10,10, 9, 8, 8,13,19,15,17,19,16,
+	17,14,13,13,18,19,19,19,19,19,19,19,19,19,19,19,
+	12,15,18,17,17,18,19,18,19,19,14,12,13,14,13,15,
+	14,18,19,19,18,14,14,16,13,17,14,18,19,19,13,12,
+	14,14,13,14,13,16,19,19,18,15,12,14, 8,12, 9,12,
+	18,19,11,12,15,12,13,11,12,12,17,19,16,14,11,13,
+	 7,10, 6, 8,14,19,13,14,13,12, 9,10, 6, 7,13,19,
+	15,17,19,18,14,14,12,12,17,19,19,19,19,19,19,19,
+	19,19,19,19,15,16,18,19,19,19,18,19,19,19,17,16,
+	15,16,14,16,15,18,19,19,19,18,16,19,15,18,15,17,
+	19,19,19,17,15,16,15,15,14,16,19,19,19,17,15,18,
+	11,15,11,14,19,19,18,18,17,17,15,14,13,15,19,19,
+	19,18,14,16, 9,13, 8,10,15,19,19,19,14,16,11,13,
+	 9, 9,14,19,19,19,19,18,16,16,14,14,19,19,19,19,
+	19,19,19,19,19,19,19,19,
 };
 
 static static_codebook _huff_book_res0_96_1024aux = {
-	2, 64,
+	3, 1000,
         _huff_lengthlist_res0_96_1024aux,
         0, 0, 0, 0, 0,
         NULL,

1.3       +13 -14    vorbis/lib/books/res0_96_128_1.vqh

Index: res0_96_128_1.vqh
===================================================================
RCS file: /usr/local/cvsroot/vorbis/lib/books/res0_96_128_1.vqh,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- res0_96_128_1.vqh	2000/11/17 11:47:22	1.2
+++ res0_96_128_1.vqh	2001/01/22 01:38:32	1.3
@@ -1,13 +1,12 @@
 /********************************************************************
  *                                                                  *
- * THIS FILE IS PART OF THE Ogg Vorbis SOFTWARE CODEC SOURCE CODE.  *
+ * THIS FILE IS PART OF THE OggVorbis 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 GNU LESSER/LIBRARY PUBLIC LICENSE, WHICH IS INCLUDED WITH    *
+ * THIS SOURCE. PLEASE READ THESE TERMS BEFORE DISTRIBUTING.        *
  *                                                                  *
- * THE OggSQUISH SOURCE CODE IS (C) COPYRIGHT 1994-1999             *
- * by 1999 Monty <monty at xiph.org> and The XIPHOPHORUS Company       *
- * http://www.xiph.org/                                             *
+ * THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2001             *
+ * by the XIPHOPHORUS Company, http://www.xiph.org/                 *
  *                                                                  *
  ********************************************************************
 
@@ -21,17 +20,17 @@
 
 static long _vq_quantlist_res0_96_128_1[] = {
         1,
-	2,
         0,
+	2,
 };
 
 static long _vq_lengthlist_res0_96_128_1[] = {
-	 1, 4, 4, 4, 7, 7, 5, 7, 7, 5, 8, 8, 7,10,10, 7,
-	10,10, 5, 7, 8, 7,10,10, 8,10,10, 5, 8, 8, 8,11,
-	10, 8,10,11, 8,10,10,10,12,14,10,13,13, 8,10,10,
-	10,13,13,10,13,13, 5, 8, 8, 8,10,10, 8,10,11, 8,
-	10,10,10,13,13,10,13,14, 8,10,10,11,13,13,10,13,
-	13,
+	 3, 4, 4, 4, 6, 6, 4, 6, 6, 4, 6, 6, 6, 9, 9, 6,
+	 9, 9, 4, 6, 6, 6, 9, 8, 6, 9, 9, 5, 7, 6, 7, 9,
+	 9, 6, 9, 9, 7, 9, 9, 9,12,12, 9,12,11, 6, 9, 9,
+	 9,11,11, 9,11,11, 4, 6, 6, 7, 9, 9, 7, 9, 9, 6,
+	 9, 9, 9,12,12, 9,11,12, 6, 9, 9, 9,12,11, 9,11,
+	12,
 };
 
 static float _vq_quantthresh_res0_96_128_1[] = {
@@ -39,7 +38,7 @@
 };
 
 static long _vq_quantmap_res0_96_128_1[] = {
-	    2,    0,    1,
+	    1,    0,    2,
 };
 
 static encode_aux_threshmatch _vq_auxt_res0_96_128_1 = {

1.3       +18 -55    vorbis/lib/books/res0_96_128_2.vqh

Index: res0_96_128_2.vqh
===================================================================
RCS file: /usr/local/cvsroot/vorbis/lib/books/res0_96_128_2.vqh,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- res0_96_128_2.vqh	2000/11/17 11:47:22	1.2
+++ res0_96_128_2.vqh	2001/01/22 01:38:32	1.3
@@ -1,13 +1,12 @@
 /********************************************************************
  *                                                                  *
- * THIS FILE IS PART OF THE Ogg Vorbis SOFTWARE CODEC SOURCE CODE.  *
+ * THIS FILE IS PART OF THE OggVorbis 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 GNU LESSER/LIBRARY PUBLIC LICENSE, WHICH IS INCLUDED WITH    *
+ * THIS SOURCE. PLEASE READ THESE TERMS BEFORE DISTRIBUTING.        *
  *                                                                  *
- * THE OggSQUISH SOURCE CODE IS (C) COPYRIGHT 1994-1999             *
- * by 1999 Monty <monty at xiph.org> and The XIPHOPHORUS Company       *
- * http://www.xiph.org/                                             *
+ * THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2001             *
+ * by the XIPHOPHORUS Company, http://www.xiph.org/                 *
  *                                                                  *
  ********************************************************************
 
@@ -20,75 +19,39 @@
 #include "codebook.h"
 
 static long _vq_quantlist_res0_96_128_2[] = {
-	2,
-	3,
-	4,
         1,
         0,
+	2,
 };
 
 static long _vq_lengthlist_res0_96_128_2[] = {
-	 2, 4, 6, 4, 6, 5, 7, 9, 7, 9, 7,10,13, 9,14, 5,
-	 7, 9, 7, 9, 7,10,12,10,13, 5, 7,10, 7,10, 7,10,
-	12,10,11,10,13,15,12,15, 7, 9,12,10,12,10,12,15,
-	12,15, 7,10,13,10,14,10,12,15,12,14,14,15,14,15,
-	15,10,12,14,14,15,14,15,15,15,15, 5, 7,10, 7,10,
-	 7,10,12,10,12,10,13,15,12,14, 7,10,12,10,11,10,
-	12,14,11,14, 7,10,14,10,15,10,12,15,14,15,14,15,
-	15,14,15,10,13,15,12,15,14,15,15,15,15, 4, 7,10,
-	 7, 9, 7,10,13,10,11,10,13,14,13,15, 7,10,12,10,
-	12,10,14,15,12,14, 7, 9,13,10,11,10,12,14,11,15,
-	12,15,15,14,15, 9,11,14,13,14,12,13,14,15,15, 9,
-	12,15,12,15,11,14,15,14,15,15,15,15,15,15,13,14,
-	15,13,15,15,15,15,15,15, 7,10,12,10,12, 9,12,14,
-	13,14,13,14,15,14,15, 9,11,13,13,15,13,15,14,15,
-	15,10,12,15,12,15,14,14,14,15,14,15,15,15,15,15,
-	13,13,15,14,15,14,15,15,15,15, 7, 9,14,10,14,10,
-	12,15,13,15,14,15,15,15,15,10,12,15,12,15,15,14,
-	15,15,15, 9,12,15,12,15,12,15,15,15,15,15,15,15,
-	15,14,11,15,15,14,15,15,15,15,15,15,12,14,15,14,
-	15,13,15,15,15,15,15,15,15,15,15,15,14,15,15,15,
-	15,15,15,15,15,10,12,14,12,14,13,15,13,13,15,15,
-	15,15,15,15,13,15,15,15,15,15,15,15,15,15,13,15,
-	15,15,15,14,15,15,15,15,15,15,15,15,15,14,15,15,
-	15,15,15,15,15,15,15, 5, 7,11, 7,10, 7,10,13,10,
-	12,11,13,15,13,13, 7,10,12,10,12,10,13,15,13,15,
-	 7, 9,13, 9,12, 9,12,13,12,13,13,14,15,15,15, 9,
-	11,14,12,15,12,13,15,14,15,10,12,15,12,15,13,13,
-	15,14,15,14,15,15,15,15,12,15,15,14,15,14,13,15,
-	15,15, 7,10,13,10,13,10,12,13,12,13,13,15,15,14,
-	14,10,12,14,12,14,13,13,15,14,15,10,12,15,13,15,
-	12,15,14,14,15,15,15,15,15,15,12,15,15,13,14,15,
-	15,15,15,15, 7,10,15, 9,14,10,12,15,12,13,14,15,
-	15,14,15,10,12,13,13,14,15,14,15,15,15, 9,12,15,
-	12,15,11,14,15,15,15,15,15,15,15,15,12,13,15,13,
-	15,15,15,15,15,15,14,13,15,13,15,14,15,15,14,15,
-	15,15,15,15,15,13,14,15,15,15,15,15,15,15,15, 9,
-	12,15,12,15,14,14,15,14,15,15,15,15,15,15,12,15,
-	15,13,15,15,14,15,15,15,14,15,15,15,15,15,15,15,
-	15,15,15,15,15,15,15,14,15,15,15,15,15,15,15,15,
-	15,
+	 5, 5, 5, 5, 6, 6, 5, 6, 6, 5, 6, 6, 6, 6, 7, 6,
+	 6, 7, 5, 6, 6, 6, 7, 6, 6, 7, 6, 6, 6, 6, 6, 7,
+	 7, 6, 6, 7, 6, 7, 7, 7, 7, 8, 7, 8, 8, 6, 7, 7,
+	 7, 8, 7, 7, 8, 8, 6, 6, 6, 6, 7, 7, 6, 7, 7, 6,
+	 7, 7, 7, 8, 8, 6, 7, 8, 6, 7, 7, 7, 8, 8, 7, 8,
+	 7,
 };
 
 static float _vq_quantthresh_res0_96_128_2[] = {
-	-1.5, -0.5, 0.5, 1.5, 
+	-0.5, 0.5, 
 };
 
 static long _vq_quantmap_res0_96_128_2[] = {
-	    4,    3,    0,    1,    2,
+	    1,    0,    2,
 };
 
 static encode_aux_threshmatch _vq_auxt_res0_96_128_2 = {
         _vq_quantthresh_res0_96_128_2,
         _vq_quantmap_res0_96_128_2,
-	5,
-	5
+	3,
+	3
 };
 
 static static_codebook _vq_book_res0_96_128_2 = {
-	4, 625,
+	4, 81,
         _vq_lengthlist_res0_96_128_2,
-	1, -533725184, 1611661312, 3, 0,
+	1, -535822336, 1611661312, 2, 0,
         _vq_quantlist_res0_96_128_2,
         NULL,
         &_vq_auxt_res0_96_128_2,

1.3       +21 -22    vorbis/lib/books/res0_96_128_3.vqh

Index: res0_96_128_3.vqh
===================================================================
RCS file: /usr/local/cvsroot/vorbis/lib/books/res0_96_128_3.vqh,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- res0_96_128_3.vqh	2000/11/17 11:47:22	1.2
+++ res0_96_128_3.vqh	2001/01/22 01:38:32	1.3
@@ -1,13 +1,12 @@
 /********************************************************************
  *                                                                  *
- * THIS FILE IS PART OF THE Ogg Vorbis SOFTWARE CODEC SOURCE CODE.  *
+ * THIS FILE IS PART OF THE OggVorbis 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 GNU LESSER/LIBRARY PUBLIC LICENSE, WHICH IS INCLUDED WITH    *
+ * THIS SOURCE. PLEASE READ THESE TERMS BEFORE DISTRIBUTING.        *
  *                                                                  *
- * THE OggSQUISH SOURCE CODE IS (C) COPYRIGHT 1994-1999             *
- * by 1999 Monty <monty at xiph.org> and The XIPHOPHORUS Company       *
- * http://www.xiph.org/                                             *
+ * THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2001             *
+ * by the XIPHOPHORUS Company, http://www.xiph.org/                 *
  *                                                                  *
  ********************************************************************
 
@@ -20,33 +19,33 @@
 #include "codebook.h"
 
 static long _vq_quantlist_res0_96_128_3[] = {
-	5,
-	6,
-	7,
         8,
-	10,
-	4,
+	7,
+	9,
+	5,
+	11,
         3,
-	2,
+	13,
         0,
+	16,
 };
 
 static long _vq_lengthlist_res0_96_128_3[] = {
-	 2, 3, 5, 6, 6, 3, 6, 6, 6, 4, 5, 7, 7, 7, 5, 7,
-	 7, 7, 7, 8,10,11,10, 9,10,11,10, 9,10,13,13,13,
-	11,12,12,13,10,13,14,15,14,13,15,15,16, 4, 5, 7,
-	 8, 7, 5, 7, 7, 7, 7, 8,10,10,10, 8,10,11,10, 9,
-	10,12,13,12,11,13,13,13,11,13,15,15,14,13,14,14,
-	16,
+	 3, 4, 3, 5, 5, 7, 7, 7, 7, 4, 4, 4, 6, 6, 7, 7,
+	 7, 7, 4, 4, 4, 6, 6, 7, 7, 7, 7, 6, 7, 7, 9, 9,
+	 9,10, 9,10, 6, 7, 7, 9, 9,10, 9, 9,10,10,10,10,
+	11,11,12,12,12,12,10,10,10,12,12,12,12,12,12,11,
+	12,12,14,13,14,14,15,14,12,12,12,14,14,15,14,14,
+	14,
 };
 
 static float _vq_quantthresh_res0_96_128_3[] = {
-	-4, -2.5, -1.5, -0.5, 0.5, 1.5, 2.5, 4, 
+	-6.5, -4, -2, -0.5, 0.5, 2, 4, 6.5, 
 };
 
 static long _vq_quantmap_res0_96_128_3[] = {
-	    8,    7,    6,    5,    0,    1,    2,    3,
-	    4,
+	    7,    5,    3,    1,    0,    2,    4,    6,
+	    8,
 };
 
 static encode_aux_threshmatch _vq_auxt_res0_96_128_3 = {
@@ -59,7 +58,7 @@
 static static_codebook _vq_book_res0_96_128_3 = {
         2, 81,
         _vq_lengthlist_res0_96_128_3,
-	1, -531365888, 1611661312, 4, 0,
+	1, -529530880, 1611661312, 5, 0,
         _vq_quantlist_res0_96_128_3,
         NULL,
         &_vq_auxt_res0_96_128_3,

1.3       +54 -35    vorbis/lib/books/res0_96_128_4.vqh

Index: res0_96_128_4.vqh
===================================================================
RCS file: /usr/local/cvsroot/vorbis/lib/books/res0_96_128_4.vqh,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- res0_96_128_4.vqh	2000/11/17 11:47:22	1.2
+++ res0_96_128_4.vqh	2001/01/22 01:38:32	1.3
@@ -1,13 +1,12 @@
 /********************************************************************
  *                                                                  *
- * THIS FILE IS PART OF THE Ogg Vorbis SOFTWARE CODEC SOURCE CODE.  *
+ * THIS FILE IS PART OF THE OggVorbis 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 GNU LESSER/LIBRARY PUBLIC LICENSE, WHICH IS INCLUDED WITH    *
+ * THIS SOURCE. PLEASE READ THESE TERMS BEFORE DISTRIBUTING.        *
  *                                                                  *
- * THE OggSQUISH SOURCE CODE IS (C) COPYRIGHT 1994-1999             *
- * by 1999 Monty <monty at xiph.org> and The XIPHOPHORUS Company       *
- * http://www.xiph.org/                                             *
+ * THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2001             *
+ * by the XIPHOPHORUS Company, http://www.xiph.org/                 *
  *                                                                  *
  ********************************************************************
 
@@ -20,56 +19,76 @@
 #include "codebook.h"
 
 static long _vq_quantlist_res0_96_128_4[] = {
-	11,
-	12,
-	13,
-	14,
-	16,
+	24,
+	23,
+	25,
+	21,
+	27,
         19,
-	22,
+	29,
+	16,
+	32,
+	13,
+	35,
         10,
-	9,
-	8,
-	6,
-	3,
+	38,
+	7,
+	41,
+	4,
+	44,
         0,
+	48,
 };
 
 static long _vq_lengthlist_res0_96_128_4[] = {
-	 2, 4, 5, 6, 6, 6, 8, 3, 5, 6, 6, 6, 7, 4, 5, 7,
-	 8, 8, 8, 9, 5, 7, 7, 8, 7, 9, 8, 8,10,11,11,11,
-	12, 8,10,11,11,11,13,10,11,13,14,14,14,15,11,12,
-	14,14,14,15,13,14,15,16,18,16,17,14,15,18,16,16,
-	18,13,17,17,16,18,18,18,16,17,18,18,18,18,14,18,
-	18,18,18,18,18,18,18,18,18,18,18, 4, 5, 7, 7, 8,
-	 8, 9, 5, 7, 7, 8, 7, 9, 8, 9,10,11,11,11,12, 8,
-	10,11,11,11,13,10,11,12,13,13,14,16,11,13,13,13,
-	14,15,13,14,16,16,17,16,18,14,15,17,17,15,18,13,
-	17,17,17,18,18,18,16,17,17,18,18,18,15,18,18,18,
-	18,18,18,18,17,18,18,18,17,
+	 4, 4, 4, 6, 6, 6, 6, 7, 7, 6, 7, 7, 8, 9, 9,10,
+	10,11,11, 4, 4, 4, 6, 6, 7, 7, 7, 7, 6, 7, 7, 7,
+	 9, 9,10,10,11,11, 4, 4, 4, 6, 6, 7, 7, 7, 7, 6,
+	 7, 7, 8, 8, 9,10,10,11,11, 7, 7, 7, 9, 9, 9, 9,
+	10,10, 9, 9,10,10,11,12,13,12,15,14, 7, 7, 7, 9,
+	 9,10,10,10,10, 9, 9,10,10,12,12,12,12,13,13,10,
+	10,10,11,11,12,13,11,12,12,12,13,12,13,14,15,14,
+	14,14,10,10,10,11,11,11,11,12,12,12,11,13,12,13,
+	13,15,14,17,17,12,11,12,12,13,13,12,15,13,15,13,
+	14,14,15,15,15,16,16,16,11,12,11,13,13,13,13,14,
+	15,13,13,14,15,15,15,16,15,16,16,12,12,12,14,14,
+	15,14,14,13,14,14,15,16,16,15,16,16,16,16,12,12,
+	12,14,14,14,15,15,13,14,14,15,15,15,16,16,16,15,
+	16,13,13,14,14,15,15,16,16,15,15,16,16,16,16,16,
+	16,16,16,16,13,13,14,14,14,15,15,15,15,16,16,16,
+	16,16,16,16,16,16,16,14,14,15,16,16,16,16,16,15,
+	16,16,16,16,16,16,16,16,16,16,15,15,15,15,16,16,
+	15,15,15,16,16,16,16,16,16,16,16,16,16,15,16,16,
+	16,16,16,15,16,15,16,16,16,16,16,16,16,16,16,16,
+	14,16,16,15,16,16,15,16,15,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,15,15,15,16,16,16,16,16,16,16,
+	16,16,16,16,16,16,16,16,16,
 };
 
 static float _vq_quantthresh_res0_96_128_4[] = {
-	-9.5, -6.5, -4, -2.5, -1.5, -0.5, 0.5, 1.5, 
-	2.5, 4, 6.5, 9.5, 
+	-22, -18.5, -15.5, -12.5, -9.5, -6.5, -4, -2, 
+	-0.5, 0.5, 2, 4, 6.5, 9.5, 12.5, 15.5, 
+	18.5, 22, 
 };
 
 static long _vq_quantmap_res0_96_128_4[] = {
-	   12,   11,   10,    9,    8,    7,    0,    1,
-	    2,    3,    4,    5,    6,
+	   17,   15,   13,   11,    9,    7,    5,    3,
+	    1,    0,    2,    4,    6,    8,   10,   12,
+	   14,   16,   18,
 };
 
 static encode_aux_threshmatch _vq_auxt_res0_96_128_4 = {
         _vq_quantthresh_res0_96_128_4,
         _vq_quantmap_res0_96_128_4,
-	13,
-	13
+	19,
+	19
 };
 
 static static_codebook _vq_book_res0_96_128_4 = {
-	2, 169,
+	2, 361,
         _vq_lengthlist_res0_96_128_4,
-	1, -529137664, 1611661312, 5, 0,
+	1, -526909440, 1611661312, 6, 0,
         _vq_quantlist_res0_96_128_4,
         NULL,
         &_vq_auxt_res0_96_128_4,

1.2       +52 -76    vorbis/lib/books/res0_96_128_5.vqh

Index: res0_96_128_5.vqh
===================================================================
RCS file: /usr/local/cvsroot/vorbis/lib/books/res0_96_128_5.vqh,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- res0_96_128_5.vqh	2000/11/17 11:47:22	1.1
+++ res0_96_128_5.vqh	2001/01/22 01:38:32	1.2
@@ -1,13 +1,12 @@
 /********************************************************************
  *                                                                  *
- * THIS FILE IS PART OF THE Ogg Vorbis SOFTWARE CODEC SOURCE CODE.  *
+ * THIS FILE IS PART OF THE OggVorbis 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 GNU LESSER/LIBRARY PUBLIC LICENSE, WHICH IS INCLUDED WITH    *
+ * THIS SOURCE. PLEASE READ THESE TERMS BEFORE DISTRIBUTING.        *
  *                                                                  *
- * THE OggSQUISH SOURCE CODE IS (C) COPYRIGHT 1994-1999             *
- * by 1999 Monty <monty at xiph.org> and The XIPHOPHORUS Company       *
- * http://www.xiph.org/                                             *
+ * THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2001             *
+ * by the XIPHOPHORUS Company, http://www.xiph.org/                 *
  *                                                                  *
  ********************************************************************
 
@@ -20,101 +19,78 @@
 #include "codebook.h"
 
 static long _vq_quantlist_res0_96_128_5[] = {
-	102,
-	103,
-	104,
-	105,
-	107,
-	110,
-	113,
-	116,
-	119,
-	122,
-	126,
-	130,
-	133,
-	137,
-	141,
-	145,
-	149,
-	153,
-	158,
-	163,
-	168,
-	173,
-	174,
-	180,
-	186,
-	192,
-	198,
-	204,
-	101,
-	100,
-	99,
-	97,
-	94,
-	91,
-	88,
-	85,
-	82,
+	61,
+	60,
+	62,
+	58,
+	64,
+	56,
+	66,
+	53,
+	69,
+	50,
+	72,
+	47,
+	75,
+	44,
         78,
-	74,
-	71,
-	67,
-	63,
-	59,
-	55,
-	51,
-	46,
         41,
-	36,
-	31,
+	81,
+	37,
+	85,
+	33,
+	89,
         30,
-	24,
+	92,
+	26,
+	96,
+	22,
+	100,
         18,
-	12,
-	6,
+	104,
+	14,
+	108,
+	10,
+	112,
+	5,
+	117,
         0,
+	122,
 };
 
 static long _vq_lengthlist_res0_96_128_5[] = {
-	 1, 3, 4, 6, 6, 8,10, 6, 9,12,14,15,15,15,15,15,
-	15,15,15,15,15,15,15,15,15,15,15,15, 3, 4, 5, 6,
-	 8,10, 6, 9,12,13,15,15,15,15,15,15,15,15,15,14,
-	14,14,14,14,14,14,14,
+	 2, 2, 2, 4, 4, 5, 6, 8, 7,10, 9,10,11,11,11,12,
+	12,12,12, 6, 6, 8, 7, 8, 8, 9, 9,11,10,12,12,12,
+	11,11,10,12,10,
 };
 
 static float _vq_quantthresh_res0_96_128_5[] = {
-	-99, -93, -87, -81, -75, -71.5, -68.5, -63.5, 
         -58.5, -53.5, -49, -45, -41, -37, -33, -29.5, 
         -26, -22, -18.5, -15.5, -12.5, -9.5, -6.5, -4, 
-	-2.5, -1.5, -0.5, 0.5, 1.5, 2.5, 4, 6.5, 
-	9.5, 12.5, 15.5, 18.5, 22, 26, 29.5, 33, 
-	37, 41, 45, 49, 53.5, 58.5, 63.5, 68.5, 
-	71.5, 75, 81, 87, 93, 99, 
+	-2, -0.5, 0.5, 2, 4, 6.5, 9.5, 12.5, 
+	15.5, 18.5, 22, 26, 29.5, 33, 37, 41, 
+	45, 49, 53.5, 58.5, 
 };
 
 static long _vq_quantmap_res0_96_128_5[] = {
-	   54,   53,   52,   51,   50,   49,   48,   47,
-	   46,   45,   44,   43,   42,   41,   40,   39,
-	   38,   37,   36,   35,   34,   33,   32,   31,
-	   30,   29,   28,    0,    1,    2,    3,    4,
-	    5,    6,    7,    8,    9,   10,   11,   12,
-	   13,   14,   15,   16,   17,   18,   19,   20,
-	   21,   22,   23,   24,   25,   26,   27,
+	   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,
 };
 
 static encode_aux_threshmatch _vq_auxt_res0_96_128_5 = {
         _vq_quantthresh_res0_96_128_5,
         _vq_quantmap_res0_96_128_5,
-	55,
-	55
+	37,
+	37
 };
 
 static static_codebook _vq_book_res0_96_128_5 = {
-	1, 55,
+	1, 37,
         _vq_lengthlist_res0_96_128_5,
-	1, -522616832, 1611661312, 8, 0,
+	1, -524386304, 1611661312, 7, 0,
         _vq_quantlist_res0_96_128_5,
         NULL,
         &_vq_auxt_res0_96_128_5,

1.3       +82 -4     vorbis/lib/books/res0_96_128aux.vqh

Index: res0_96_128aux.vqh
===================================================================
RCS file: /usr/local/cvsroot/vorbis/lib/books/res0_96_128aux.vqh,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- res0_96_128aux.vqh	2000/11/17 11:47:22	1.2
+++ res0_96_128aux.vqh	2001/01/22 01:38:32	1.3
@@ -20,13 +20,91 @@
 #include "codebook.h"
 
 static long _huff_lengthlist_res0_96_128aux[] = {
-	 4, 9,12,12,16,16, 2, 3, 8,10,16,15, 6, 7,10,11,
-	14,16, 7, 3, 6, 7,12,13, 5, 2, 4, 7,13,15, 9, 6,
-	 8,12,15,15,
+	15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,
+	15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,
+	15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,
+	15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,
+	15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,
+	15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,
+	15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,
+	15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,
+	15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,
+	15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,
+	15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,
+	15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,
+	15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,
+	15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,
+	15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,
+	15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,
+	15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,
+	15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,
+	15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,
+	15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,
+	15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,
+	15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,
+	15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,
+	15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,
+	15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,
+	15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,
+	15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,
+	15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,
+	15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,
+	15,15,15,15,15,14,15,15,15,15,15,13,15,15,15,15,
+	15,13,13,15,15,15,15,15,15,15,15,15,15,15,15,15,
+	15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,13,
+	13,15,15,15,15,13,12,15,15,15,15,15,15,15,15,15,
+	15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,
+	15,15,15,15,15,15,15,15,15,14,15,15,15,15,15,15,
+	15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,
+	15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,
+	15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,
+	15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,
+	15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,
+	15,15,15,15,15,15,15,15,13,12,15,15,15,15,13,12,
+	14,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,
+	15,15,15,15,15,15,15,15,15,15,15,15,14,12,15,12,
+	15,15,11, 4, 5, 6,13,15,12, 5, 5, 8,14,15,10, 6,
+	 8, 9,14,15,15,14,15,14,15,15,15,15,15,15,15,15,
+	15,13,12,12,15,15,11, 4, 5, 7,15,15,11, 4, 5, 8,
+	15,15,13, 7, 8,10,15,15,15,14,15,15,15,15,15,15,
+	15,15,15,15,15,13,13,10,15,15,13, 6, 6, 7,12,15,
+	12, 6, 8, 9,15,15,12, 8, 9, 9,15,15,15,15,15,15,
+	15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,13,
+	15,13,15,15,15,14,14,15,15,15,15,14,15,15,15,15,
+	15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,
+	15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,
+	15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,
+	12,14,15,15,15,15,15,13,14,15,15,15,15,15,15,15,
+	15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,
+	15,15,15,15,15,14,12,11,15,15,11, 4, 5, 6,15,15,
+	12, 5, 6, 8,15,15, 9, 6, 8, 8,15,15,14,14,15,15,
+	15,15,15,15,15,15,15,15,15,15,11,12,15,15,12, 4,
+	 5, 7,15,15,11, 5, 5, 8,15,15,12, 7, 8, 9,15,15,
+	15,15,15,15,15,15,15,15,15,15,15,15,15,12,12,10,
+	15,15,12, 5, 6, 7,14,15,14, 6, 7, 9,15,15,13, 7,
+	 9,10,15,15,15,15,15,15,15,15,15,15,15,15,15,15,
+	15,15,15,15,15,15,15,13,15,13,15,15,15,15,14,14,
+	15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,
+	15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,
+	15,15,15,15,15,15,15,15,15,15,15,15,15,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,14,14,14,
+	14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,
+	14,14,14,10,10,12,14,14,14,11,11,13,14,14,14,12,
+	12,12,14,14,14,14,14,14,14,14,14,14,14,14,14,14,
+	14,14,14,14,14,14,14,10,11,13,14,14,14,11,11,13,
+	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,11,12,12,14,14,
+	14,13,13,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,
+	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,14,14,14,
 };
 
 static static_codebook _huff_book_res0_96_128aux = {
-	2, 36,
+	4, 1296,
         _huff_lengthlist_res0_96_128aux,
         0, 0, 0, 0, 0,
         NULL,

1.2       +2979 -0   vorbis/lib/books/lsp12_1.vqh

1.2       +1575 -0   vorbis/lib/books/lsp30_1.vqh

1.2       +123 -0    vorbis/lib/books/lsp9_0.vqh

1.2       +881 -0    vorbis/lib/books/lsp9_1.vqh

1.2       +80 -0     vorbis/lib/books/res0_192_1024_6.vqh

1.2       +236 -0    vorbis/lib/books/res0_192_1024_7.vqh

1.2       +565 -0    vorbis/lib/books/res0_192_1024_8.vqh

1.2       +790 -0    vorbis/lib/books/res0_192_1024_9.vqh

1.2       +565 -0    vorbis/lib/books/res0_256_1024_6.vqh

1.2       +790 -0    vorbis/lib/books/res0_256_1024_7.vqh

1.2       +124 -0    vorbis/lib/books/res0_96_1024_8.vqh

1.2       +131 -0    vorbis/lib/books/res0_96_1024_9.vqh

1.8       +185 -69   vorbis/lib/modes/mode_A.h

Index: mode_A.h
===================================================================
RCS file: /usr/local/cvsroot/vorbis/lib/modes/mode_A.h,v
retrieving revision 1.7
retrieving revision 1.8
diff -u -r1.7 -r1.8
--- mode_A.h	2000/12/21 21:04:47	1.7
+++ mode_A.h	2001/01/22 01:38:50	1.8
@@ -12,7 +12,7 @@
  ********************************************************************
 
  function: predefined encoding modes
- last mod: $Id: mode_A.h,v 1.7 2000/12/21 21:04:47 xiphmont Exp $
+ last mod: $Id: mode_A.h,v 1.8 2001/01/22 01:38:50 xiphmont Exp $
 
  ********************************************************************/
 
@@ -25,6 +25,8 @@
 
 #include "books/lsp12_0.vqh"
 #include "books/lsp30_0.vqh"
+#include "books/lsp12_1.vqh"
+#include "books/lsp30_1.vqh"
 
 #include "books/res0_128_128aux.vqh"
 #include "books/res0_128_1024aux.vqh"
@@ -45,114 +47,222 @@
 #include "books/res0_128_1024_8.vqh"
 #include "books/res0_128_1024_9.vqh"
 
+
+static vorbis_info_psy _psy_set_A0={
+  1,/*athp*/
+  1,/*decayp*/
+
+  -100.,
+  -140.,
+
+  8,
+
+  /*     0  1  2   3   4   5   6   7   8   9  10  11  12  13  14  15   16   */
+  /* x: 63 88 125 175 250 350 500 700 1k 1.4k 2k 2.8k 4k 5.6k 8k 11.5k 16k Hz */
+  /* y: 0 10 20 30 40 50 60 70 80 90 100 dB */
+
+   1,/* tonemaskp */
+  /*  0   10   20   30   40   50   60   70   80   90   100 */
+  {
+   {-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.}, /*63*/
+   {-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.}, /*88*/
+   {-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.}, /*125*/
+   {-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.}, /*175*/
+   {-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.}, /*250*/
+   {-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.}, /*350*/
+   {-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.}, /*500*/
+   {-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.}, /*700*/
+
+   {-30.,-35.,-35.,-40.,-40.,-50.,-60.,-70.,-80.,-90.,-100.}, /*1000*/
+   {-30.,-35.,-35.,-40.,-40.,-50.,-60.,-70.,-80.,-90.,-100.}, /*1400*/
+   {-40.,-40.,-40.,-40.,-40.,-50.,-60.,-70.,-80.,-90.,-100.}, /*2000*/
+   {-40.,-40.,-40.,-40.,-40.,-50.,-60.,-70.,-80.,-90.,-100.}, /*2800*/
+   {-30.,-35.,-35.,-40.,-40.,-50.,-60.,-70.,-80.,-90.,-100.}, /*4000*/
+   {-30.,-35.,-35.,-40.,-40.,-50.,-60.,-70.,-80.,-90.,-100.}, /*5600*/
+   {-30.,-35.,-35.,-40.,-40.,-50.,-60.,-70.,-80.,-90.,-100.}, /*8000*/
+   {-30.,-35.,-35.,-40.,-40.,-50.,-60.,-70.,-80.,-90.,-100.}, /*11500*/
+   {-30.,-35.,-35.,-40.,-40.,-50.,-60.,-70.,-80.,-90.,-100.}, /*16000*/
+  },
+
+  1,/* peakattp */
+  {{-14.f,-16.f,-18.f,-19.f,-20.f,-21.f,-22.f,-22.f,-22.f,-22.f,-22.f},/*63*/
+   {-14.f,-16.f,-18.f,-19.f,-20.f,-21.f,-22.f,-22.f,-22.f,-22.f,-22.f},/*88*/
+   {-14.f,-16.f,-18.f,-19.f,-20.f,-21.f,-22.f,-22.f,-22.f,-22.f,-22.f},/*125*/
+   {-10.f,-10.f,-10.f,-10.f,-16.f,-16.f,-18.f,-20.f,-22.f,-22.f,-22.f},/*175*/
+   {-10.f,-10.f,-10.f,-10.f,-16.f,-16.f,-18.f,-20.f,-22.f,-22.f,-22.f},/*250*/
+   {-10.f,-10.f,-10.f,-10.f,-16.f,-16.f,-18.f,-20.f,-22.f,-22.f,-22.f},/*350*/
+   {-10.f,-10.f,-10.f,-10.f,-16.f,-16.f,-18.f,-20.f,-22.f,-22.f,-22.f},/*500*/
+   {-10.f,-10.f,-10.f,-10.f,-14.f,-14.f,-14.f,-20.f,-22.f,-22.f,-22.f},/*700*/
+   {-10.f,-10.f,-10.f,-10.f,-14.f,-14.f,-14.f,-20.f,-22.f,-22.f,-22.f},/*1000*/
+   {-10.f,-10.f,-10.f,-10.f,-14.f,-14.f,-16.f,-20.f,-22.f,-22.f,-22.f},/*1400*/
+   {-10.f,-10.f,-10.f,-10.f,-14.f,-14.f,-16.f,-20.f,-22.f,-22.f,-22.f},/*2000*/
+   {-10.f,-10.f,-10.f,-10.f,-14.f,-14.f,-16.f,-20.f,-22.f,-22.f,-22.f},/*2400*/
+   {-10.f,-10.f,-10.f,-10.f,-14.f,-14.f,-16.f,-20.f,-22.f,-22.f,-22.f},/*4000*/
+   {-10.f,-10.f,-10.f,-10.f,-10.f,-11.f,-12.f,-13.f,-22.f,-22.f,-22.f},/*5600*/
+   {-10.f,-10.f,-10.f,-10.f,-10.f,-11.f,-12.f,-13.f,-22.f,-22.f,-22.f},/*8000*/
+   {-10.f,-10.f,-10.f,-10.f,-10.f,-10.f,-10.f,-11.f,-22.f,-22.f,-22.f},/*11500*/
+   {-10.f,-10.f,-10.f,-10.f,-10.f,-10.f,-10.f,-10.f,-20.f,-21.f,-22.f},/*16000*/
+  },
+
+  1,/*noisemaskp */
+  -10.f,  /* suppress any noise curve over maxspec+n */
+  .5f,   /* low window */
+  .5f,   /* high window */
+  5,
+  5,
+  {.000f, 0.f,/*63*/
+   .000f, 0.f,/*88*/
+   .000f, 0.f,/*125*/
+   .000f, 0.f,/*175*/
+   .000f, 0.f,/*250*/
+   .000f, 0.f,/*350*/
+   .000f, 0.f,/*500*/
+   .300f, 0.f,/*700*/
+   .500f, 0.f,/*1000*/
+   .500f, 0.f,/*1400*/
+   .500f, 0.f,/*2000*/
+   .500f, 0.f,/*2800*/
+   .600f, 0.f,/*4000*/
+   .700f, 0.f,/*5600*/
+   .850f, 0.f,/*8000*/
+   .900f, 0.f,/*11500*/
+   .900f, 0.f,/*16000*/
+  },
+ 
+  95.f,  /* even decade + 5 is important; saves an rint() later in a
+            tight loop) */
+  -22.,
+
+  -0., -.004   /* attack/decay control */
+};
+
 static vorbis_info_psy _psy_set_A={
   1,/*athp*/
   1,/*decayp*/
-  1,/*smoothp*/
-  0,.1f,
 
   -100.f,
   -140.f,
 
+  8,
+
   /*     0  1  2   3   4   5   6   7   8   9  10  11  12  13  14  15   16   */
   /* x: 63 88 125 175 250 350 500 700 1k 1.4k 2k 2.8k 4k 5.6k 8k 11.5k 16k Hz */
   /* y: 0 10 20 30 40 50 60 70 80 90 100 dB */
-
-  1,/* tonemaskp */
+   1,/* tonemaskp */
   /*  0   10   20   30   40   50   60   70   80   90   100 */
-  {{-30.f,-35.f,-35.f,-40.f,-40.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f}, /*63*/
-   {-30.f,-35.f,-35.f,-40.f,-40.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f}, /*88*/
-   {-30.f,-35.f,-35.f,-40.f,-40.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f}, /*125*/
+  {
+   {-999.f,-999.f,-999.f,-999.f,-999.f,-999.f,-999.f,-999.f,-999.f,-999.f,-999.f}, /*63*/
+   {-999.f,-999.f,-999.f,-999.f,-999.f,-999.f,-999.f,-999.f,-999.f,-999.f,-999.f}, /*88*/
+   {-999.f,-999.f,-999.f,-999.f,-999.f,-999.f,-999.f,-999.f,-999.f,-999.f,-999.f}, /*125*/
+   //   {-99.,-99.,-99.,-99.,-99.,-99.,-99.,-99.,-99.,-99.,-100.}, /*175*/
+   //   {-99.,-99.,-99.,-99.,-99.,-99.,-99.,-99.,-99.,-99.,-100.}, /*250*/
+   //   {-99.,-99.,-99.,-99.,-99.,-99.,-99.,-99.,-99.,-99.,-100.}, /*350*/
+   //   {-99.,-99.,-99.,-99.,-99.,-99.,-99.,-99.,-99.,-99.,-100.}, /*500*/
+   //   {-99.,-99.,-99.,-99.,-99.,-99.,-99.,-99.,-99.,-99.,-100.}, /*700*/
+
+   //   {-30.,-35.,-35.,-40.,-40.,-50.,-60.,-70.,-80.,-90.,-100.}, /*63*/
+   //   {-30.,-35.,-35.,-40.,-40.,-50.,-60.,-70.,-80.,-90.,-100.}, /*88*/
+   //   {-30.,-35.,-35.,-40.,-40.,-50.,-60.,-70.,-80.,-90.,-100.}, /*125*/
    {-30.f,-35.f,-35.f,-40.f,-40.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f}, /*175*/
    {-30.f,-35.f,-35.f,-40.f,-40.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f}, /*250*/
    {-30.f,-35.f,-35.f,-40.f,-40.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f}, /*350*/
    {-30.f,-35.f,-35.f,-40.f,-40.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f}, /*500*/
    {-30.f,-35.f,-35.f,-40.f,-40.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f}, /*700*/
+
    {-30.f,-35.f,-35.f,-40.f,-40.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f}, /*1000*/
    {-30.f,-35.f,-35.f,-40.f,-40.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f}, /*1400*/
    {-40.f,-40.f,-40.f,-40.f,-40.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f}, /*2000*/
    {-40.f,-40.f,-40.f,-40.f,-40.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f}, /*2800*/
    {-30.f,-35.f,-35.f,-40.f,-40.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f}, /*4000*/
-   {-30.f,-30.f,-35.f,-37.f,-40.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f}, /*5600*/
-   {-20.f,-25.f,-30.f,-35.f,-35.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f}, /*8000*/
-   {-20.f,-25.f,-30.f,-33.f,-35.f,-45.f,-55.f,-65.f,-75.f,-90.f,-100.f}, /*11500*/
-   {-20.f,-24.f,-26.f,-32.f,-35.f,-45.f,-55.f,-65.f,-75.f,-90.f,-100.f}, /*16000*/
+   {-30.f,-35.f,-35.f,-40.f,-40.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f}, /*5600*/
+
+   {-20.f,-25.f,-30.f,-35.f,-40.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f}, /*8000*/
+   {-20.f,-25.f,-30.f,-35.f,-35.f,-45.f,-50.f,-60.f,-70.f,-80.f,-90.f}, /*11500*/
+   {-20.f,-24.f,-26.f,-32.f,-35.f,-45.f,-50.f,-60.f,-70.f,-80.f,-90.f}, /*16000*/
+
   },
 
   1,/* peakattp */
-  {{-14.f,-16.f,-18.f,-19.f,-20.f,-21.f,-22.f,-22.f,-28.f,-28.f,-28.f}, /*63*/
-   {-14.f,-16.f,-18.f,-19.f,-20.f,-21.f,-22.f,-22.f,-28.f,-28.f,-28.f}, /*88*/
-   {-14.f,-16.f,-18.f,-19.f,-20.f,-21.f,-22.f,-22.f,-28.f,-28.f,-28.f}, /*125*/
-   { -7.f, -8.f, -9.f,-10.f,-10.f,-11.f,-12.f,-18.f,-28.f,-28.f,-28.f}, /*175*/
-   { -7.f, -8.f, -9.f,-10.f,-10.f,-11.f,-12.f,-18.f,-28.f,-28.f,-28.f}, /*250*/
-   { -7.f, -8.f, -9.f,-10.f,-10.f,-11.f,-12.f,-18.f,-28.f,-28.f,-28.f}, /*350*/
-   { -7.f, -8.f, -9.f,-10.f,-10.f,-11.f,-12.f,-28.f,-28.f,-28.f,-28.f}, /*500*/
-   { -7.f, -8.f, -9.f,-10.f,-10.f,-11.f,-12.f,-13.f,-15.f,-18.f,-20.f}, /*700*/
-   { -7.f, -8.f, -9.f,-10.f,-10.f,-11.f,-12.f,-13.f,-15.f,-18.f,-20.f}, /*1000*/
-   { -7.f, -8.f, -9.f,-10.f,-10.f,-11.f,-12.f,-13.f,-15.f,-18.f,-20.f}, /*1400*/
-   { -7.f, -8.f, -9.f,-10.f,-10.f,-11.f,-12.f,-13.f,-15.f,-18.f,-20.f}, /*2000*/
-   { -7.f, -8.f, -9.f,-10.f,-10.f,-11.f,-12.f,-13.f,-15.f,-18.f,-20.f}, /*2400*/
-   { -7.f, -8.f, -9.f,-10.f,-10.f,-11.f,-12.f,-13.f,-15.f,-18.f,-20.f}, /*4000*/
-   { -7.f, -8.f, -9.f,-10.f,-10.f,-11.f,-12.f,-13.f,-15.f,-18.f,-20.f}, /*5600*/
-   { -7.f, -8.f, -9.f,-10.f,-10.f,-11.f,-12.f,-13.f,-15.f,-16.f,-17.f}, /*8000*/
-   { -6.f, -7.f, -9.f, -9.f, -9.f, -9.f,-10.f,-11.f,-12.f,-13.f,-14.f}, /*11500*/
-   { -6.f, -6.f, -9.f, -9.f, -9.f, -9.f, -9.f, -9.f,-10.f,-11.f,-12.f}, /*16000*/
+  {{-14.f,-16.f,-18.f,-19.f,-20.f,-21.f,-22.f,-22.f,-24.f,-24.f,-24.f},/*63*/
+   {-14.f,-16.f,-18.f,-19.f,-20.f,-21.f,-22.f,-22.f,-24.f,-24.f,-24.f},/*88*/
+   {-14.f,-16.f,-18.f,-19.f,-20.f,-21.f,-22.f,-22.f,-24.f,-24.f,-24.f},/*125*/
+   {-10.f,-10.f,-10.f,-10.f,-16.f,-16.f,-18.f,-20.f,-24.f,-24.f,-24.f},/*175*/
+   {-10.f,-10.f,-10.f,-10.f,-16.f,-16.f,-18.f,-20.f,-24.f,-24.f,-24.f},/*250*/
+   {-10.f,-10.f,-10.f,-10.f,-16.f,-16.f,-18.f,-20.f,-22.f,-24.f,-24.f},/*350*/
+   {-10.f,-10.f,-10.f,-10.f,-16.f,-16.f,-18.f,-20.f,-22.f,-24.f,-24.f},/*500*/
+   {-10.f,-10.f,-10.f,-10.f,-14.f,-14.f,-16.f,-20.f,-22.f,-24.f,-24.f},/*700*/
+   {-10.f,-10.f,-10.f,-10.f,-14.f,-14.f,-16.f,-20.f,-22.f,-24.f,-24.f},/*1000*/
+   {-10.f,-10.f,-10.f,-10.f,-14.f,-14.f,-16.f,-20.f,-22.f,-24.f,-24.f},/*1400*/
+   {-10.f,-10.f,-10.f,-10.f,-14.f,-14.f,-16.f,-20.f,-22.f,-24.f,-24.f},/*2000*/
+   {-10.f,-10.f,-10.f,-12.f,-16.f,-16.f,-16.f,-20.f,-22.f,-24.f,-24.f},/*2400*/
+   {-10.f,-10.f,-10.f,-12.f,-16.f,-16.f,-16.f,-20.f,-22.f,-24.f,-24.f},/*4000*/
+   {-10.f,-10.f,-10.f,-12.f,-12.f,-14.f,-16.f,-18.f,-22.f,-24.f,-24.f},/*5600*/
+   {-10.f,-10.f,-10.f,-10.f,-10.f,-14.f,-16.f,-18.f,-22.f,-24.f,-24.f},/*8000*/
+   {-10.f,-10.f,-10.f,-10.f,-10.f,-14.f,-16.f,-18.f,-22.f,-24.f,-24.f},/*11500*/
+   {-10.f,-10.f,-10.f,-10.f,-10.f,-12.f,-16.f,-18.f,-22.f,-24.f,-24.f},/*16000*/
   },
 
   1,/*noisemaskp */
-  /*  0   10   20   30   40   50   60    70    80    90   100 */
-  {{-99.f,-99.f,-99.f,-99.f,-99.f,-99.f,-99.f,-199.f,-199.f,-199.f,-199.f}, /*63*/
-   {-99.f,-99.f,-99.f,-99.f,-99.f,-99.f,-99.f,-199.f,-199.f,-199.f,-199.f}, /*88*/
-   {-99.f,-99.f,-99.f,-99.f,-99.f,-99.f,-99.f,-199.f,-199.f,-199.f,-199.f}, /*125*/
-   {-99.f,-99.f,-99.f,-99.f,-99.f,-99.f,-99.f,-199.f,-199.f,-199.f,-199.f}, /*175*/
-   {-99.f,-99.f,-99.f,-99.f,-99.f,-99.f,-99.f,-199.f,-199.f,-199.f,-199.f}, /*250*/
-   {-99.f,-99.f,-99.f,-99.f,-99.f,-99.f,-99.f,-199.f,-199.f,-199.f,-199.f}, /*350*/
-   {-99.f,-99.f,-99.f,-99.f,-99.f,-99.f,-99.f,-199.f,-199.f,-199.f,-199.f}, /*500*/
-   {  6.f,  6.f,  6.f,  2.f,  2.f,  2.f,  2.f,   2.f,   2.f,   1.f,   0.f}, /*700*/
-
-   {  6.f,  6.f,  6.f,  5.f,  5.f,  5.f,  5.f,   5.f,   5.f,   4.f,   3.f}, /*1000*/
-   {  6.f,  6.f,  6.f,  5.f,  5.f,  5.f,  5.f,   5.f,   5.f,   4.f,   3.f}, /*1400*/
-   {  6.f,  6.f,  6.f,  5.f,  5.f,  5.f,  5.f,   5.f,   5.f,   4.f,   3.f}, /*2000*/
-   {  6.f,  6.f,  6.f,  5.f,  5.f,  5.f,  5.f,   5.f,   5.f,   4.f,   3.f}, /*2800*/
-   {  6.f,  6.f,  6.f,  5.f,  5.f,  5.f,  5.f,   5.f,   5.f,   4.f,   3.f}, /*4000*/
-   { 10.f, 10.f, 10.f, 10.f, 10.f, 10.f,  8.f,   8.f,   6.f,   6.f,   6.f}, /*5600*/
-   { 10.f, 10.f, 10.f, 10.f, 10.f, 10.f,  8.f,   8.f,   8.f,   8.f,   8.f}, /*8000*/
-   { 10.f, 10.f, 10.f, 10.f, 10.f, 10.f, 10.f,  10.f,  10.f,  10.f,  10.f}, /*11500*/
-   { 10.f, 10.f, 10.f, 10.f, 10.f, 10.f, 10.f,  10.f,  10.f,  10.f,  10.f}, /*16000*/
+  -0.f,  /* suppress any noise curve over maxspec+n */
+  .5f,   /* low window */
+  .5f,   /* high window */
+  25,
+  25,
+  {.000f, 0.f, /*63*/
+   .000f, 0.f, /*88*/
+   .000f, 0.f, /*125*/
+   .000f, 0.f, /*175*/
+   .000f, 0.f, /*250*/
+   .000f, 0.f, /*350*/
+   .000f, 0.f, /*500*/
+   .200f, 0.f, /*700*/
+   .300f, 0.f, /*1000*/
+   .400f, 0.f, /*1400*/
+   .400f, 0.f, /*2000*/
+   .400f, 0.f, /*2800*/
+   .700f, 0.f, /*4000*/
+   .850f, 0.f, /*5600*/
+   .900f, 0.f, /*8000*/
+   .900f, 0.f, /*11500*/
+   .900f, 0.f, /*16000*/
   },
  
-  100.f,
+  95.f,  /* even decade + 5 is important; saves an rint() later in a
+            tight loop) */
+  -28.,
 
-  -0.f, -.004f   /* attack/decay control */
-};
+  -0.f, -.004f,   /* attack/decay control */
 
+};
 
 /* with GNUisms, this could be short and readable. Oh well */
 static vorbis_info_time0 _time_set0A={0};
-static vorbis_info_floor0 _floor_set0A={12, 44100,  64, 12,150, 1, {0} };
-static vorbis_info_floor0 _floor_set1A={30, 44100, 256, 12,150, 1, {1} };
-static vorbis_info_residue0 _residue_set0A={0,128, 32,6,2,
+static vorbis_info_floor0 _floor_set0A={12, 44100,  64, 10,130, 2, {0,1},
+                                        0.199f, .285f};
+static vorbis_info_floor0 _floor_set1A={30, 44100, 256, 12,150, 2, {2,3}, 
+                                        .082f, .126f};
+static vorbis_info_residue0 _residue_set0A={0,96,16,6,4,
                                             {0,1,1,1,1,1},
-					    {4,5,6,7,8},
+					    {6,7,8,9,10},
                                             
                                             {0,99999,9999,9999,9999},
-					    {99.f,1.5f,2.5f,6.5f,12.5f},
-					    {5,5,5,5,5},
+					    {999.f,1.5f,3.5f,15.5f,26.5f},
+					    {4,4,4,4,4},
                                             {99,99,99,99,99}};
 
-static vorbis_info_residue0 _residue_set1A={0,1024, 32,10,3,
+static vorbis_info_residue0 _residue_set1A={0, 960, 32,10,5,
                                             {0,1,1,1,1,1,1,1,1,1},
-					    {9,10,11,12,13,14,15,16,17},
+					    {11,12,13,14,15,16,17,18,19},
                                            
-					    {0,8,9999,17,9999,
-					     28,9999,9999,9999},
-					    {99.f,1.5f,1.5f,2.5f,2.5f,
-					     4.f,4.f,6.5f,12.5f},
+					    {0,8,9999,16,9999,
+					     24,9999,9999,9999},
+					    {999.f,1.5f,1.5f,2.5f,2.5f,
+					     6.5f,6.5f,12.5f,22.5f},
                                             {5,5,5,5,5,5,5,5,5},
                                             {99,99,99,99,99,99,99,99,99}};
 
 static vorbis_info_mapping0 _mapping_set0A={1, {0,0}, {0}, {0}, {0}, {0}};
-static vorbis_info_mapping0 _mapping_set1A={1, {0,0}, {0}, {1}, {1}, {0}};
+static vorbis_info_mapping0 _mapping_set1A={1, {0,0}, {0}, {1}, {1}, {1}};
 static vorbis_info_mode _mode_set0A={0,0,0,0};
 static vorbis_info_mode _mode_set1A={1,0,0,1};
 
@@ -162,7 +272,7 @@
   /* smallblock, largeblock */
   {256, 2048}, 
   /* modes,maps,times,floors,residues,books,psys */
-  2,          2,    1,     2,       2,   18,   1,
+  2,          2,    1,     2,       2,   20,   2,
   /* modes */
   {&_mode_set0A,&_mode_set1A},
   /* maps */
@@ -174,8 +284,10 @@
   /* residue */
   {0,0},{&_residue_set0A,&_residue_set1A},
   /* books */
-  {&_vq_book_lsp12_0,      /* 0 */
-   &_vq_book_lsp30_0,      /* 1 */
+  {&_vq_book_lsp12_0,       /* 0 */
+   &_vq_book_lsp12_1,       /* 1 */
+   &_vq_book_lsp30_0,      /* 2 */
+   &_vq_book_lsp30_1,      /* 3 */
 
    &_huff_book_res0_128_128aux,
    &_huff_book_res0_128_1024aux,
@@ -198,9 +310,13 @@
 
   },
   /* psy */
-  {&_psy_set_A},
+  {&_psy_set_A0,&_psy_set_A},
   /* thresh sample period, preecho clamp trigger threshhold, range, minenergy */
-  256, 32.f, 6.f, -96.f
+  256, 30.f, -30.f, -96.f,
+
+  -10., 
+
+  0,
 };
 
 #define PREDEF_INFO_MAX 0

1.4       +199 -80   vorbis/lib/modes/mode_AA.h

Index: mode_AA.h
===================================================================
RCS file: /usr/local/cvsroot/vorbis/lib/modes/mode_AA.h,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -r1.3 -r1.4
--- mode_AA.h	2000/12/21 21:04:47	1.3
+++ mode_AA.h	2001/01/22 01:38:50	1.4
@@ -12,7 +12,7 @@
  ********************************************************************
 
  function: predefined encoding modes
- last mod: $Id: mode_AA.h,v 1.3 2000/12/21 21:04:47 xiphmont Exp $
+ last mod: $Id: mode_AA.h,v 1.4 2001/01/22 01:38:50 xiphmont Exp $
 
  ********************************************************************/
 
@@ -23,10 +23,13 @@
 #include "vorbis/codec.h"
 #include "backends.h"
 
-#include "books/lsp12_0.vqh"
+#include "books/lsp9_0.vqh"
 #include "books/lsp30_0.vqh"
+#include "books/lsp9_1.vqh"
+#include "books/lsp30_1.vqh"
 
 #include "books/res0_96_128aux.vqh"
+#include "books/res0_96_1024aux.vqh"
 
 #include "books/res0_96_128_1.vqh"
 #include "books/res0_96_128_2.vqh"
@@ -34,8 +37,6 @@
 #include "books/res0_96_128_4.vqh"
 #include "books/res0_96_128_5.vqh"
 
-#include "books/res0_96_1024aux.vqh"
-
 #include "books/res0_96_1024_1.vqh"
 #include "books/res0_96_1024_2.vqh"
 #include "books/res0_96_1024_3.vqh"
@@ -43,115 +44,225 @@
 #include "books/res0_96_1024_5.vqh"
 #include "books/res0_96_1024_6.vqh"
 #include "books/res0_96_1024_7.vqh"
+#include "books/res0_96_1024_8.vqh"
+#include "books/res0_96_1024_9.vqh"
+
+
+static vorbis_info_psy _psy_set_AA0={
+  1,/*athp*/
+  1,/*decayp*/
+
+  -100.,
+  -140.,
+
+  8,
+
+  /*     0  1  2   3   4   5   6   7   8   9  10  11  12  13  14  15   16   */
+  /* x: 63 88 125 175 250 350 500 700 1k 1.4k 2k 2.8k 4k 5.6k 8k 11.5k 16k Hz */
+  /* y: 0 10 20 30 40 50 60 70 80 90 100 dB */
+
+   1,/* tonemaskp */
+  /*  0   10   20   30   40   50   60   70   80   90   100 */
+  {
+   {-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.}, /*63*/
+   {-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.}, /*88*/
+   {-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.}, /*125*/
+   {-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.}, /*175*/
+   {-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.}, /*250*/
+   {-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.}, /*350*/
+   {-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.}, /*500*/
+   {-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.}, /*700*/
+
+   {-30.,-35.,-35.,-40.,-40.,-50.,-60.,-70.,-80.,-90.,-100.}, /*1000*/
+   {-30.,-35.,-35.,-40.,-40.,-50.,-60.,-70.,-80.,-90.,-100.}, /*1400*/
+   {-40.,-40.,-40.,-40.,-40.,-50.,-60.,-70.,-80.,-90.,-100.}, /*2000*/
+   {-40.,-40.,-40.,-40.,-40.,-50.,-60.,-70.,-80.,-90.,-100.}, /*2800*/
+   {-30.,-35.,-35.,-40.,-40.,-50.,-60.,-70.,-80.,-90.,-100.}, /*4000*/
+   {-30.,-35.,-35.,-40.,-40.,-50.,-60.,-70.,-80.,-90.,-100.}, /*5600*/
+   {-30.,-35.,-35.,-40.,-40.,-50.,-60.,-70.,-80.,-90.,-100.}, /*8000*/
+   {-30.,-35.,-35.,-40.,-40.,-50.,-60.,-70.,-80.,-90.,-100.}, /*11500*/
+   {-30.,-35.,-35.,-40.,-40.,-50.,-60.,-70.,-80.,-90.,-100.}, /*16000*/
+  },
+
+  1,/* peakattp */
+  {{-14.f,-16.f,-18.f,-19.f,-20.f,-21.f,-22.f,-22.f,-22.f,-22.f,-22.f},/*63*/
+   {-14.f,-16.f,-18.f,-19.f,-20.f,-21.f,-22.f,-22.f,-22.f,-22.f,-22.f},/*88*/
+   {-14.f,-16.f,-18.f,-19.f,-20.f,-21.f,-22.f,-22.f,-22.f,-22.f,-22.f},/*125*/
+   {-10.f,-10.f,-10.f,-10.f,-16.f,-16.f,-18.f,-20.f,-22.f,-22.f,-22.f},/*175*/
+   {-10.f,-10.f,-10.f,-10.f,-16.f,-16.f,-18.f,-20.f,-22.f,-22.f,-22.f},/*250*/
+   {-10.f,-10.f,-10.f,-10.f,-16.f,-16.f,-18.f,-20.f,-22.f,-22.f,-22.f},/*350*/
+   {-10.f,-10.f,-10.f,-10.f,-16.f,-16.f,-18.f,-20.f,-22.f,-22.f,-22.f},/*500*/
+   {-10.f,-10.f,-10.f,-10.f,-14.f,-14.f,-14.f,-20.f,-22.f,-22.f,-22.f},/*700*/
+   {-10.f,-10.f,-10.f,-10.f,-14.f,-14.f,-14.f,-20.f,-22.f,-22.f,-22.f},/*1000*/
+   {-10.f,-10.f,-10.f,-10.f,-14.f,-14.f,-16.f,-20.f,-22.f,-22.f,-22.f},/*1400*/
+   {-10.f,-10.f,-10.f,-10.f,-14.f,-14.f,-16.f,-20.f,-22.f,-22.f,-22.f},/*2000*/
+   {-10.f,-10.f,-10.f,-10.f,-14.f,-14.f,-16.f,-20.f,-22.f,-22.f,-22.f},/*2400*/
+   {-10.f,-10.f,-10.f,-10.f,-14.f,-14.f,-16.f,-20.f,-22.f,-22.f,-22.f},/*4000*/
+   {-10.f,-10.f,-10.f,-10.f,-10.f,-11.f,-12.f,-13.f,-22.f,-22.f,-22.f},/*5600*/
+   {-10.f,-10.f,-10.f,-10.f,-10.f,-11.f,-12.f,-13.f,-22.f,-22.f,-22.f},/*8000*/
+   {-10.f,-10.f,-10.f,-10.f,-10.f,-10.f,-10.f,-11.f,-22.f,-22.f,-22.f},/*11500*/
+   {-10.f,-10.f,-10.f,-10.f,-10.f,-10.f,-10.f,-10.f,-20.f,-21.f,-22.f},/*16000*/
+  },
+
+  1,/*noisemaskp */
+  -0.f,  /* suppress any noise curve over maxspec+n */
+  .5f,   /* low window */
+  .5f,   /* high window */
+  5,
+  5,
+  {.000f, 0.f,/*63*/
+   .000f, 0.f,/*88*/
+   .000f, 0.f,/*125*/
+   .000f, 0.f,/*175*/
+   .000f, 0.f,/*250*/
+   .000f, 0.f,/*350*/
+   .000f, 0.f,/*500*/
+   .300f, 0.f,/*700*/
+   .500f, 0.f,/*1000*/
+   .500f, 0.f,/*1400*/
+   .500f, 0.f,/*2000*/
+   .500f, 0.f,/*2800*/
+   .600f, 0.f,/*4000*/
+   .700f, 0.f,/*5600*/
+   .850f, 0.f,/*8000*/
+   .900f, 2.f,/*11500*/
+   .900f, 3.f,/*16000*/
+  },
+ 
+  95.f,  /* even decade + 5 is important; saves an rint() later in a
+            tight loop) */
+  -22.,
 
+  -0., -.004   /* attack/decay control */
+};
+
 static vorbis_info_psy _psy_set_AA={
   1,/*athp*/
   1,/*decayp*/
-  1,/*smoothp*/
-  0,.1f,
 
   -100.f,
   -140.f,
 
+  8,
+
   /*     0  1  2   3   4   5   6   7   8   9  10  11  12  13  14  15   16   */
   /* x: 63 88 125 175 250 350 500 700 1k 1.4k 2k 2.8k 4k 5.6k 8k 11.5k 16k Hz */
   /* y: 0 10 20 30 40 50 60 70 80 90 100 dB */
-
-  1,/* tonemaskp */
+   1,/* tonemaskp */
   /*  0   10   20   30   40   50   60   70   80   90   100 */
-  {{-30.f,-35.f,-35.f,-40.f,-40.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f}, /*63*/
-   {-30.f,-35.f,-35.f,-40.f,-40.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f}, /*88*/
-   {-30.f,-35.f,-35.f,-40.f,-40.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f}, /*125*/
+  {
+   {-999.f,-999.f,-999.f,-999.f,-999.f,-999.f,-999.f,-999.f,-999.f,-999.f,-999.f}, /*63*/
+   {-999.f,-999.f,-999.f,-999.f,-999.f,-999.f,-999.f,-999.f,-999.f,-999.f,-999.f}, /*88*/
+   {-999.f,-999.f,-999.f,-999.f,-999.f,-999.f,-999.f,-999.f,-999.f,-999.f,-999.f}, /*125*/
+   //   {-99.,-99.,-99.,-99.,-99.,-99.,-99.,-99.,-99.,-99.,-100.}, /*175*/
+   //   {-99.,-99.,-99.,-99.,-99.,-99.,-99.,-99.,-99.,-99.,-100.}, /*250*/
+   //   {-99.,-99.,-99.,-99.,-99.,-99.,-99.,-99.,-99.,-99.,-100.}, /*350*/
+   //   {-99.,-99.,-99.,-99.,-99.,-99.,-99.,-99.,-99.,-99.,-100.}, /*500*/
+   //   {-99.,-99.,-99.,-99.,-99.,-99.,-99.,-99.,-99.,-99.,-100.}, /*700*/
+
+   //   {-30.,-35.,-35.,-40.,-40.,-50.,-60.,-70.,-80.,-90.,-100.}, /*63*/
+   //   {-30.,-35.,-35.,-40.,-40.,-50.,-60.,-70.,-80.,-90.,-100.}, /*88*/
+   //   {-30.,-35.,-35.,-40.,-40.,-50.,-60.,-70.,-80.,-90.,-100.}, /*125*/
    {-30.f,-35.f,-35.f,-40.f,-40.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f}, /*175*/
    {-30.f,-35.f,-35.f,-40.f,-40.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f}, /*250*/
    {-30.f,-35.f,-35.f,-40.f,-40.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f}, /*350*/
    {-30.f,-35.f,-35.f,-40.f,-40.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f}, /*500*/
    {-30.f,-35.f,-35.f,-40.f,-40.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f}, /*700*/
+
    {-30.f,-35.f,-35.f,-40.f,-40.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f}, /*1000*/
    {-30.f,-35.f,-35.f,-40.f,-40.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f}, /*1400*/
    {-40.f,-40.f,-40.f,-40.f,-40.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f}, /*2000*/
    {-40.f,-40.f,-40.f,-40.f,-40.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f}, /*2800*/
    {-30.f,-35.f,-35.f,-40.f,-40.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f}, /*4000*/
-   {-30.f,-30.f,-35.f,-37.f,-40.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f}, /*5600*/
-   {-20.f,-25.f,-30.f,-35.f,-35.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f}, /*8000*/
-   {-20.f,-25.f,-30.f,-33.f,-35.f,-45.f,-55.f,-65.f,-75.f,-90.f,-100.f}, /*11500*/
-   {-20.f,-24.f,-26.f,-32.f,-35.f,-45.f,-55.f,-65.f,-75.f,-90.f,-100.f}, /*16000*/
+   {-30.f,-35.f,-35.f,-40.f,-40.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f}, /*5600*/
+
+   {-20.f,-25.f,-30.f,-35.f,-40.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f}, /*8000*/
+   {-20.f,-25.f,-30.f,-35.f,-35.f,-45.f,-50.f,-60.f,-70.f,-80.f,-90.f}, /*11500*/
+   {-20.f,-24.f,-26.f,-32.f,-35.f,-45.f,-50.f,-60.f,-70.f,-80.f,-90.f}, /*16000*/
+
   },
 
   1,/* peakattp */
-  {{-14.f,-16.f,-18.f,-19.f,-20.f,-21.f,-22.f,-22.f,-22.f,-22.f,-22.f}, /*63*/
-   {-14.f,-16.f,-18.f,-19.f,-20.f,-21.f,-22.f,-22.f,-22.f,-22.f,-22.f}, /*88*/
-   {-14.f,-16.f,-18.f,-19.f,-20.f,-21.f,-22.f,-22.f,-22.f,-22.f,-22.f}, /*125*/
-   { -7.f, -8.f, -9.f,-10.f,-10.f,-11.f,-12.f,-13.f,-15.f,-18.f,-20.f}, /*175*/
-   { -7.f, -8.f, -9.f,-10.f,-10.f,-11.f,-12.f,-13.f,-15.f,-18.f,-20.f}, /*250*/
-   { -7.f, -8.f, -9.f,-10.f,-10.f,-11.f,-12.f,-13.f,-15.f,-18.f,-20.f}, /*350*/
-   { -7.f, -8.f, -9.f,-10.f,-10.f,-11.f,-12.f,-13.f,-15.f,-18.f,-20.f}, /*500*/
-   { -7.f, -8.f, -9.f,-10.f,-10.f,-11.f,-12.f,-13.f,-15.f,-18.f,-20.f}, /*700*/
-   { -7.f, -8.f, -9.f,-10.f,-10.f,-11.f,-12.f,-13.f,-15.f,-18.f,-20.f}, /*1000*/
-   { -7.f, -8.f, -9.f,-10.f,-10.f,-11.f,-12.f,-13.f,-15.f,-18.f,-20.f}, /*1400*/
-   { -7.f, -8.f, -9.f,-10.f,-10.f,-11.f,-12.f,-13.f,-15.f,-18.f,-20.f}, /*2000*/
-   { -7.f, -8.f, -9.f,-10.f,-10.f,-11.f,-12.f,-13.f,-15.f,-18.f,-20.f}, /*2800*/
-   { -7.f, -8.f, -9.f,-10.f,-10.f,-11.f,-12.f,-13.f,-15.f,-18.f,-20.f}, /*4000*/
-   { -7.f, -8.f, -9.f,-10.f,-10.f,-11.f,-12.f,-13.f,-15.f,-18.f,-20.f}, /*5600*/
-   { -7.f, -8.f, -9.f,-10.f,-10.f,-11.f,-12.f,-13.f,-15.f,-16.f,-17.f}, /*8000*/
-   { -6.f, -7.f, -9.f, -9.f, -9.f, -9.f,-10.f,-11.f,-12.f,-13.f,-14.f}, /*11500*/
-   { -6.f, -6.f, -9.f, -9.f, -9.f, -9.f, -9.f, -9.f,-10.f,-11.f,-12.f}, /*16000*/
+  {{-14.f,-16.f,-18.f,-19.f,-20.f,-21.f,-22.f,-22.f,-22.f,-22.f,-22.f},/*63*/
+   {-14.f,-16.f,-18.f,-19.f,-20.f,-21.f,-22.f,-22.f,-22.f,-22.f,-22.f},/*88*/
+   {-14.f,-16.f,-18.f,-19.f,-20.f,-21.f,-22.f,-22.f,-22.f,-22.f,-22.f},/*125*/
+   {-10.f,-10.f,-10.f,-10.f,-16.f,-16.f,-18.f,-20.f,-22.f,-22.f,-22.f},/*175*/
+   {-10.f,-10.f,-10.f,-10.f,-16.f,-16.f,-18.f,-20.f,-22.f,-22.f,-22.f},/*250*/
+   {-10.f,-10.f,-10.f,-10.f,-16.f,-16.f,-18.f,-20.f,-22.f,-22.f,-22.f},/*350*/
+   {-10.f,-10.f,-10.f,-10.f,-16.f,-16.f,-18.f,-20.f,-22.f,-22.f,-22.f},/*500*/
+   {-10.f,-10.f,-10.f,-10.f,-14.f,-14.f,-16.f,-20.f,-22.f,-22.f,-22.f},/*700*/
+   {-10.f,-10.f,-10.f,-10.f,-14.f,-14.f,-16.f,-20.f,-22.f,-22.f,-22.f},/*1000*/
+   {-10.f,-10.f,-10.f,-10.f,-14.f,-14.f,-16.f,-20.f,-22.f,-22.f,-22.f},/*1400*/
+   {-10.f,-10.f,-10.f,-10.f,-14.f,-14.f,-16.f,-20.f,-22.f,-22.f,-22.f},/*2000*/
+   {-10.f,-10.f,-10.f,-12.f,-16.f,-16.f,-16.f,-20.f,-22.f,-22.f,-22.f},/*2400*/
+   {-10.f,-10.f,-10.f,-12.f,-16.f,-16.f,-16.f,-20.f,-22.f,-22.f,-22.f},/*4000*/
+   {-10.f,-10.f,-10.f,-12.f,-12.f,-14.f,-16.f,-18.f,-22.f,-22.f,-22.f},/*5600*/
+   {-10.f,-10.f,-10.f,-10.f,-10.f,-14.f,-16.f,-18.f,-22.f,-22.f,-22.f},/*8000*/
+   {-10.f,-10.f,-10.f,-10.f,-10.f,-14.f,-16.f,-18.f,-22.f,-22.f,-22.f},/*11500*/
+   {-10.f,-10.f,-10.f,-10.f,-10.f,-12.f,-16.f,-18.f,-22.f,-22.f,-22.f},/*16000*/
   },
 
   1,/*noisemaskp */
-  /*  0   10   20   30   40   50   60    70    80    90   100 */
-  {{-99.f,-99.f,-99.f,-99.f,-99.f,-99.f,-99.f,-199.f,-199.f,-199.f,-199.f}, /*63*/
-   {-99.f,-99.f,-99.f,-99.f,-99.f,-99.f,-99.f,-199.f,-199.f,-199.f,-199.f}, /*88*/
-   {-99.f,-99.f,-99.f,-99.f,-99.f,-99.f,-99.f,-199.f,-199.f,-199.f,-199.f}, /*125*/
-   {-99.f,-99.f,-99.f,-99.f,-99.f,-99.f,-99.f,-199.f,-199.f,-199.f,-199.f}, /*175*/
-   {-99.f,-99.f,-99.f,-99.f,-99.f,-99.f,-99.f,-199.f,-199.f,-199.f,-199.f}, /*250*/
-   {-99.f,-99.f,-99.f,-99.f,-99.f,-99.f,-99.f,-199.f,-199.f,-199.f,-199.f}, /*350*/
-   {-99.f,-99.f,-99.f,-99.f,-99.f,-99.f,-99.f,-199.f,-199.f,-199.f,-199.f}, /*500*/
-   {  6.f,  6.f,  6.f,  2.f,  2.f,  2.f,  2.f,   2.f,   2.f,   1.f,   0.f}, /*700*/
-
-   {  6.f,  6.f,  6.f,  5.f,  5.f,  5.f,  5.f,   5.f,   5.f,   4.f,   3.f}, /*1000*/
-   {  6.f,  6.f,  6.f,  5.f,  5.f,  5.f,  5.f,   5.f,   5.f,   4.f,   3.f}, /*1400*/
-   {  6.f,  6.f,  6.f,  5.f,  5.f,  5.f,  5.f,   5.f,   5.f,   4.f,   3.f}, /*2000*/
-   {  6.f,  6.f,  6.f,  5.f,  5.f,  5.f,  5.f,   5.f,   5.f,   4.f,   3.f}, /*2800*/
-   {  6.f,  6.f,  6.f,  5.f,  5.f,  5.f,  5.f,   5.f,   5.f,   4.f,   3.f}, /*4000*/
-   { 10.f, 10.f, 10.f, 10.f, 10.f, 10.f,  8.f,   8.f,   6.f,   6.f,   6.f}, /*5600*/
-   { 10.f, 10.f, 10.f, 10.f, 10.f, 10.f,  8.f,   8.f,   8.f,   8.f,   8.f}, /*8000*/
-   { 10.f, 10.f, 10.f, 10.f, 10.f, 10.f, 10.f,  10.f,  10.f,  10.f,  10.f}, /*11500*/
-   { 10.f, 10.f, 10.f, 10.f, 10.f, 10.f, 10.f,  10.f,  10.f,  10.f,  10.f}, /*16000*/
+  -0.f,  /* suppress any noise curve over maxspec+n */
+  .7f,   /* low window */
+  .7f,   /* high window */
+  25,
+  25,
+  {.000f, 0.f, /*63*/
+   .000f, 0.f, /*88*/
+   .000f, 0.f, /*125*/
+   .000f, 0.f, /*175*/
+   .000f, 0.f, /*250*/
+   .000f, 0.f, /*350*/
+   .000f, 0.f, /*500*/
+   .200f, 0.f, /*700*/
+   .300f, 0.f, /*1000*/
+   .400f, 0.f, /*1400*/
+   .400f, 0.f, /*2000*/
+   .400f, 0.f, /*2800*/
+   .700f, 0.f, /*4000*/
+   .850f, 0.f, /*5600*/
+   .900f, 0.f, /*8000*/
+   .900f, 0.f, /*11500*/
+   .900f, 1.f, /*16000*/
   },
  
-   95.f,
+  95.f,  /* even decade + 5 is important; saves an rint() later in a
+            tight loop) */
+  -22.,
 
-  -0.f, -.004f   /* attack/decay control */
-};
+  -0.f, -.004f,   /* attack/decay control */
 
+};
 
 /* with GNUisms, this could be short and readable. Oh well */
 static vorbis_info_time0 _time_set0AA={0};
-static vorbis_info_floor0 _floor_set0AA={12, 44100,  64, 12,150, 1, {0} };
-static vorbis_info_floor0 _floor_set1AA={30, 44100, 256, 12,150, 1, {1} };
-static vorbis_info_residue0 _residue_set0AA={0,128, 32,6,2,
-					     {0,1,1,1,1,1},
-					     {4,5,6,7,8},
-					     
-					     {0,99999,9999,9999,9999},
-					     {99.f,1.5f,2.5f,6.5f,12.5f},
-					     {5,5,5,5,5},
-					     {99,99,99,99,99}};
-
-
-static vorbis_info_residue0 _residue_set1AA={0,1024, 32,8,3,
-					    {0,1,1,1,1,1,1,1},
-					    {9,10,11,12,13,14,15},
+static vorbis_info_floor0 _floor_set0AA={9, 44100,  64, 10,130, 2, {0,1},
+                                        0.246f, .387f};
+static vorbis_info_floor0 _floor_set1AA={30, 44100, 256, 12,150, 2, {2,3}, 
+                                        .082f, .126f};
+static vorbis_info_residue0 _residue_set0AA={0,64,16,6,4,
+					    {0,1,1,1,1,1},
+					    {6,7,8,9,10},
+					    
+					    {0,7,9999,9999,9999},
+					    {999.f,2.f,2.f,9.5f,26.f},
+					    {4,4,4,4,4},
+					    {99,99,99,99,99}};
+
+static vorbis_info_residue0 _residue_set1AA={0, 768, 32,10,5,
+					    {0,1,1,1,1,1,1,1,1,1},
+					    {11,12,13,14,15,16,17,18,19},
                                            
-					    {0,9,9999,21,9999,
-					     9999,9999,9999},
-					    {99.f,2.f,2.f,4.f,4.f,9.5f,15.5f},
-					    {5,5,5,5,5,5,5},
-					    {99,99,99,99,99,99,99}};
+					    {0,10,9999,16,9999,
+					     26,9999,9999,9999},
+					    {999.f,2.f,2.f,4.f,4.f,
+					     9.5f,9.5f,18.f,37.f},
+					    {5,5,5,5,5,5,5,5,5},
+					    {99,99,99,99,99,99,99,99,99}};
 
 static vorbis_info_mapping0 _mapping_set0AA={1, {0,0}, {0}, {0}, {0}, {0}};
-static vorbis_info_mapping0 _mapping_set1AA={1, {0,0}, {0}, {1}, {1}, {0}};
+static vorbis_info_mapping0 _mapping_set1AA={1, {0,0}, {0}, {1}, {1}, {1}};
 static vorbis_info_mode _mode_set0AA={0,0,0,0};
 static vorbis_info_mode _mode_set1AA={1,0,0,1};
 
@@ -161,7 +272,7 @@
   /* smallblock, largeblock */
   {256, 2048}, 
   /* modes,maps,times,floors,residues,books,psys */
-  2,          2,    1,     2,       2,   16,   1,
+  2,          2,    1,     2,       2,   20,   2,
   /* modes */
   {&_mode_set0AA,&_mode_set1AA},
   /* maps */
@@ -173,8 +284,10 @@
   /* residue */
   {0,0},{&_residue_set0AA,&_residue_set1AA},
   /* books */
-  {&_vq_book_lsp12_0,      /* 0 */
-   &_vq_book_lsp30_0,      /* 1 */
+  {&_vq_book_lsp9_0,       /* 0 */
+   &_vq_book_lsp9_1,       /* 1 */
+   &_vq_book_lsp30_0,      /* 2 */
+   &_vq_book_lsp30_1,      /* 3 */
 
    &_huff_book_res0_96_128aux,
    &_huff_book_res0_96_1024aux,
@@ -192,12 +305,18 @@
    &_vq_book_res0_96_1024_5,
    &_vq_book_res0_96_1024_6,
    &_vq_book_res0_96_1024_7,
+   &_vq_book_res0_96_1024_8,
+   &_vq_book_res0_96_1024_9,
 
   },
   /* psy */
-  {&_psy_set_AA},
+  {&_psy_set_AA0,&_psy_set_AA},
   /* thresh sample period, preecho clamp trigger threshhold, range, minenergy */
-  256, 32.f, 6.f, -96.f
+  256, 30.f, -30.f, -96.f,
+
+  -10., 
+
+  0,
 };
 
 #define PREDEF_INFO_MAX 0

1.7       +193 -76   vorbis/lib/modes/mode_B.h

Index: mode_B.h
===================================================================
RCS file: /usr/local/cvsroot/vorbis/lib/modes/mode_B.h,v
retrieving revision 1.6
retrieving revision 1.7
diff -u -r1.6 -r1.7
--- mode_B.h	2000/12/21 21:04:47	1.6
+++ mode_B.h	2001/01/22 01:38:50	1.7
@@ -12,7 +12,7 @@
  ********************************************************************
 
  function: predefined encoding modes
- last mod: $Id: mode_B.h,v 1.6 2000/12/21 21:04:47 xiphmont Exp $
+ last mod: $Id: mode_B.h,v 1.7 2001/01/22 01:38:50 xiphmont Exp $
 
  ********************************************************************/
 
@@ -25,6 +25,8 @@
 
 #include "books/lsp12_0.vqh"
 #include "books/lsp30_0.vqh"
+#include "books/lsp12_1.vqh"
+#include "books/lsp30_1.vqh"
 
 #include "books/res0_160_128aux.vqh"
 #include "books/res0_160_1024aux.vqh"
@@ -45,113 +47,222 @@
 #include "books/res0_160_1024_8.vqh"
 #include "books/res0_160_1024_9.vqh"
 
+
+static vorbis_info_psy _psy_set_B0={
+  1,/*athp*/
+  1,/*decayp*/
+
+  -100.,
+  -140.,
+
+  8,
+
+  /*     0  1  2   3   4   5   6   7   8   9  10  11  12  13  14  15   16   */
+  /* x: 63 88 125 175 250 350 500 700 1k 1.4k 2k 2.8k 4k 5.6k 8k 11.5k 16k Hz */
+  /* y: 0 10 20 30 40 50 60 70 80 90 100 dB */
+
+   1,/* tonemaskp */
+  /*  0   10   20   30   40   50   60   70   80   90   100 */
+  {
+   {-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.}, /*63*/
+   {-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.}, /*88*/
+   {-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.}, /*125*/
+   {-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.}, /*175*/
+   {-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.}, /*250*/
+   {-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.}, /*350*/
+   {-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.}, /*500*/
+   {-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.}, /*700*/
+
+   {-30.,-35.,-35.,-40.,-40.,-50.,-60.,-70.,-80.,-90.,-100.}, /*1000*/
+   {-30.,-35.,-35.,-40.,-40.,-50.,-60.,-70.,-80.,-90.,-100.}, /*1400*/
+   {-40.,-40.,-40.,-40.,-40.,-50.,-60.,-70.,-80.,-90.,-100.}, /*2000*/
+   {-40.,-40.,-40.,-40.,-40.,-50.,-60.,-70.,-80.,-90.,-100.}, /*2800*/
+   {-30.,-35.,-35.,-40.,-40.,-50.,-60.,-70.,-80.,-90.,-100.}, /*4000*/
+   {-30.,-35.,-35.,-40.,-40.,-50.,-60.,-70.,-80.,-90.,-100.}, /*5600*/
+   {-30.,-35.,-35.,-40.,-40.,-50.,-60.,-70.,-80.,-90.,-100.}, /*8000*/
+   {-30.,-35.,-35.,-40.,-40.,-50.,-60.,-70.,-80.,-90.,-100.}, /*11500*/
+   {-30.,-35.,-35.,-40.,-40.,-50.,-60.,-70.,-80.,-90.,-100.}, /*16000*/
+  },
+
+  1,/* peakattp */
+  {{-14.f,-16.f,-18.f,-19.f,-20.f,-21.f,-28.f,-28.f,-28.f,-28.f,-28.f},/*63*/
+   {-14.f,-16.f,-18.f,-19.f,-20.f,-21.f,-28.f,-28.f,-28.f,-28.f,-28.f},/*88*/
+   {-14.f,-16.f,-18.f,-19.f,-20.f,-21.f,-28.f,-28.f,-28.f,-28.f,-28.f},/*125*/
+   {-14.f,-14.f,-14.f,-14.f,-16.f,-16.f,-20.f,-24.f,-28.f,-28.f,-28.f},/*175*/
+   {-14.f,-14.f,-14.f,-14.f,-16.f,-16.f,-20.f,-24.f,-28.f,-28.f,-28.f},/*250*/
+   {-14.f,-14.f,-14.f,-14.f,-16.f,-16.f,-20.f,-24.f,-28.f,-28.f,-28.f},/*350*/
+   {-14.f,-14.f,-14.f,-14.f,-16.f,-16.f,-20.f,-24.f,-28.f,-28.f,-28.f},/*500*/
+   {-14.f,-14.f,-14.f,-14.f,-14.f,-14.f,-18.f,-24.f,-28.f,-28.f,-28.f},/*700*/
+   {-14.f,-14.f,-14.f,-14.f,-14.f,-14.f,-14.f,-24.f,-28.f,-28.f,-28.f},/*1000*/
+   {-14.f,-14.f,-14.f,-14.f,-14.f,-16.f,-18.f,-24.f,-28.f,-28.f,-28.f},/*1400*/
+   {-14.f,-14.f,-14.f,-14.f,-14.f,-16.f,-18.f,-24.f,-28.f,-28.f,-28.f},/*2000*/
+   {-14.f,-14.f,-14.f,-14.f,-14.f,-16.f,-18.f,-24.f,-28.f,-28.f,-28.f},/*2400*/
+   {-14.f,-14.f,-14.f,-14.f,-14.f,-16.f,-18.f,-24.f,-28.f,-28.f,-28.f},/*4000*/
+   {-14.f,-14.f,-14.f,-14.f,-14.f,-14.f,-12.f,-20.f,-28.f,-28.f,-28.f},/*5600*/
+   {-14.f,-14.f,-14.f,-14.f,-14.f,-14.f,-14.f,-20.f,-28.f,-28.f,-28.f},/*8000*/
+   {-14.f,-14.f,-14.f,-14.f,-14.f,-14.f,-14.f,-20.f,-28.f,-28.f,-28.f},/*11500*/
+   {-14.f,-14.f,-14.f,-14.f,-14.f,-14.f,-14.f,-14.f,-20.f,-24.f,-28.f},/*16000*/
+  },
+
+  1,/*noisemaskp */
+  -10.f,  /* suppress any noise curve over maxspec+n */
+  .5f,   /* low window */
+  .5f,   /* high window */
+  5,
+  5,
+  {.000f, 0.f,/*63*/
+   .000f, 0.f,/*88*/
+   .000f, 0.f,/*125*/
+   .000f, 0.f,/*175*/
+   .000f, 0.f,/*250*/
+   .000f, 0.f,/*350*/
+   .000f, 0.f,/*500*/
+   .300f, 0.f,/*700*/
+   .500f, 0.f,/*1000*/
+   .500f, 0.f,/*1400*/
+   .500f, 0.f,/*2000*/
+   .500f, 0.f,/*2800*/
+   .600f, 0.f,/*4000*/
+   .700f, 0.f,/*5600*/
+   .850f, 0.f,/*8000*/
+   .900f, 0.f,/*11500*/
+   .900f, 0.f,/*16000*/
+  },
+ 
+  105.f,  /* even decade + 5 is important; saves an rint() later in a
+            tight loop) */
+  -28.,
+
+  -0., -.004   /* attack/decay control */
+};
+
 static vorbis_info_psy _psy_set_B={
   1,/*athp*/
   1,/*decayp*/
-  1,/*smoothp*/
-  0,.1f,
 
   -100.f,
   -140.f,
 
+  8,
+
   /*     0  1  2   3   4   5   6   7   8   9  10  11  12  13  14  15   16   */
   /* x: 63 88 125 175 250 350 500 700 1k 1.4k 2k 2.8k 4k 5.6k 8k 11.5k 16k Hz */
   /* y: 0 10 20 30 40 50 60 70 80 90 100 dB */
-
-  1,/* tonemaskp */
+   1,/* tonemaskp */
   /*  0   10   20   30   40   50   60   70   80   90   100 */
-  {{-30.f,-35.f,-35.f,-40.f,-40.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f}, /*63*/
-   {-30.f,-35.f,-35.f,-40.f,-40.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f}, /*88*/
-   {-30.f,-35.f,-35.f,-40.f,-40.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f}, /*125*/
-   {-30.f,-35.f,-35.f,-40.f,-40.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f}, /*175*/
-   {-30.f,-35.f,-35.f,-40.f,-40.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f}, /*250*/
-   {-30.f,-35.f,-35.f,-40.f,-40.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f}, /*350*/
-   {-30.f,-35.f,-35.f,-40.f,-40.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f}, /*500*/
-   {-30.f,-35.f,-35.f,-40.f,-40.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f}, /*700*/
-   {-30.f,-35.f,-35.f,-40.f,-40.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f}, /*1000*/
-   {-30.f,-35.f,-35.f,-40.f,-40.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f}, /*1400*/
+  {
+   {-999.f,-999.f,-999.f,-999.f,-999.f,-999.f,-999.f,-999.f,-999.f,-999.f,-999.f}, /*63*/
+   {-999.f,-999.f,-999.f,-999.f,-999.f,-999.f,-999.f,-999.f,-999.f,-999.f,-999.f}, /*88*/
+   {-999.f,-999.f,-999.f,-999.f,-999.f,-999.f,-999.f,-999.f,-999.f,-999.f,-999.f}, /*125*/
+   //   {-99.,-99.,-99.,-99.,-99.,-99.,-99.,-99.,-99.,-99.,-100.}, /*175*/
+   //   {-99.,-99.,-99.,-99.,-99.,-99.,-99.,-99.,-99.,-99.,-100.}, /*250*/
+   //   {-99.,-99.,-99.,-99.,-99.,-99.,-99.,-99.,-99.,-99.,-100.}, /*350*/
+   //   {-99.,-99.,-99.,-99.,-99.,-99.,-99.,-99.,-99.,-99.,-100.}, /*500*/
+   //   {-99.,-99.,-99.,-99.,-99.,-99.,-99.,-99.,-99.,-99.,-100.}, /*700*/
+
+   //   {-30.,-35.,-35.,-40.,-40.,-50.,-60.,-70.,-80.,-90.,-100.}, /*63*/
+   //   {-30.,-35.,-35.,-40.,-40.,-50.,-60.,-70.,-80.,-90.,-100.}, /*88*/
+   //   {-30.,-35.,-35.,-40.,-40.,-50.,-60.,-70.,-80.,-90.,-100.}, /*125*/
+   {-40.f,-40.f,-40.f,-40.f,-40.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f}, /*175*/
+   {-40.f,-40.f,-40.f,-40.f,-40.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f}, /*250*/
+   {-40.f,-40.f,-40.f,-40.f,-40.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f}, /*350*/
+   {-40.f,-40.f,-40.f,-40.f,-40.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f}, /*500*/
+   {-40.f,-40.f,-40.f,-40.f,-40.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f}, /*700*/
+
+   {-40.f,-40.f,-40.f,-40.f,-40.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f}, /*1000*/
+   {-40.f,-40.f,-40.f,-40.f,-40.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f}, /*1400*/
    {-40.f,-40.f,-40.f,-40.f,-40.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f}, /*2000*/
    {-40.f,-40.f,-40.f,-40.f,-40.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f}, /*2800*/
-   {-30.f,-35.f,-35.f,-40.f,-40.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f}, /*4000*/
-   {-30.f,-30.f,-35.f,-40.f,-40.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f}, /*5600*/
-   {-30.f,-30.f,-35.f,-35.f,-40.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f}, /*8000*/
-   {-30.f,-30.f,-35.f,-33.f,-35.f,-45.f,-55.f,-65.f,-75.f,-90.f,-100.f}, /*11500*/
-   {-30.f,-28.f,-30.f,-32.f,-35.f,-45.f,-55.f,-65.f,-75.f,-90.f,-100.f}, /*16000*/
+   {-40.f,-40.f,-40.f,-40.f,-40.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f}, /*4000*/
+   {-40.f,-40.f,-40.f,-40.f,-40.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f}, /*5600*/
+
+   {-30.f,-35.f,-40.f,-40.f,-40.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f}, /*8000*/
+   {-30.f,-35.f,-40.f,-40.f,-40.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f}, /*11500*/
+   {-30.f,-34.f,-36.f,-40.f,-40.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f}, /*16000*/
+
   },
 
   1,/* peakattp */
-  {{-14.f,-16.f,-18.f,-19.f,-20.f,-21.f,-22.f,-22.f,-28.f,-28.f,-28.f}, /*63*/
-   {-14.f,-16.f,-18.f,-19.f,-20.f,-21.f,-22.f,-22.f,-28.f,-28.f,-28.f}, /*88*/
-   {-14.f,-16.f,-18.f,-19.f,-20.f,-21.f,-22.f,-22.f,-28.f,-28.f,-28.f}, /*125*/
-   { -7.f, -8.f, -9.f,-10.f,-10.f,-11.f,-12.f,-13.f,-28.f,-28.f,-28.f}, /*175*/
-   { -7.f, -8.f, -9.f,-10.f,-10.f,-11.f,-12.f,-13.f,-28.f,-28.f,-28.f}, /*250*/
-   { -7.f, -8.f, -9.f,-10.f,-10.f,-11.f,-12.f,-13.f,-28.f,-28.f,-28.f}, /*350*/
-   { -7.f, -8.f, -9.f,-10.f,-10.f,-11.f,-12.f,-13.f,-28.f,-28.f,-28.f}, /*500*/
-   { -7.f, -8.f, -9.f,-10.f,-10.f,-11.f,-12.f,-13.f,-15.f,-18.f,-20.f}, /*700*/
-   { -7.f, -8.f, -9.f,-10.f,-10.f,-11.f,-12.f,-13.f,-15.f,-18.f,-20.f}, /*1000*/
-   { -7.f, -8.f, -9.f,-10.f,-10.f,-11.f,-12.f,-13.f,-15.f,-18.f,-20.f}, /*1400*/
-   { -7.f, -8.f, -9.f,-10.f,-10.f,-11.f,-12.f,-13.f,-15.f,-18.f,-20.f}, /*2000*/
-   { -7.f, -8.f, -9.f,-10.f,-10.f,-11.f,-12.f,-13.f,-15.f,-18.f,-20.f}, /*2800*/
-   { -7.f, -8.f, -9.f,-10.f,-10.f,-11.f,-12.f,-13.f,-15.f,-18.f,-20.f}, /*4000*/
-   { -7.f, -8.f, -9.f,-10.f,-10.f,-11.f,-12.f,-13.f,-15.f,-18.f,-20.f}, /*5600*/
-   { -7.f, -8.f, -9.f,-10.f,-10.f,-11.f,-12.f,-13.f,-15.f,-16.f,-17.f}, /*8000*/
-   { -6.f, -7.f, -9.f, -9.f, -9.f, -9.f,-10.f,-11.f,-12.f,-13.f,-14.f}, /*11500*/
-   { -6.f, -6.f, -9.f, -9.f, -9.f, -9.f, -9.f, -9.f,-10.f,-11.f,-12.f}, /*16000*/
+  {{-14.f,-16.f,-18.f,-19.f,-20.f,-21.f,-28.f,-28.f,-28.f,-28.f,-28.f},/*63*/
+   {-14.f,-16.f,-18.f,-19.f,-20.f,-21.f,-28.f,-28.f,-28.f,-28.f,-28.f},/*88*/
+   {-14.f,-16.f,-18.f,-19.f,-20.f,-21.f,-28.f,-28.f,-28.f,-28.f,-28.f},/*125*/
+   {-14.f,-14.f,-14.f,-14.f,-16.f,-16.f,-20.f,-24.f,-28.f,-28.f,-28.f},/*175*/
+   {-14.f,-14.f,-14.f,-14.f,-16.f,-16.f,-20.f,-24.f,-28.f,-28.f,-28.f},/*250*/
+   {-14.f,-14.f,-14.f,-14.f,-16.f,-16.f,-20.f,-24.f,-28.f,-28.f,-28.f},/*350*/
+   {-14.f,-14.f,-14.f,-14.f,-16.f,-16.f,-20.f,-24.f,-28.f,-28.f,-28.f},/*500*/
+   {-14.f,-14.f,-14.f,-14.f,-14.f,-14.f,-18.f,-24.f,-28.f,-28.f,-28.f},/*700*/
+   {-14.f,-14.f,-14.f,-14.f,-14.f,-14.f,-14.f,-24.f,-28.f,-28.f,-28.f},/*1000*/
+   {-14.f,-14.f,-14.f,-14.f,-14.f,-16.f,-18.f,-24.f,-28.f,-28.f,-28.f},/*1400*/
+   {-14.f,-14.f,-14.f,-14.f,-14.f,-16.f,-18.f,-24.f,-28.f,-28.f,-28.f},/*2000*/
+   {-14.f,-14.f,-14.f,-14.f,-14.f,-16.f,-18.f,-24.f,-28.f,-28.f,-28.f},/*2400*/
+   {-14.f,-14.f,-14.f,-14.f,-14.f,-16.f,-18.f,-24.f,-28.f,-28.f,-28.f},/*4000*/
+   {-14.f,-14.f,-14.f,-14.f,-14.f,-14.f,-12.f,-20.f,-28.f,-28.f,-28.f},/*5600*/
+   {-14.f,-14.f,-14.f,-14.f,-14.f,-14.f,-14.f,-20.f,-28.f,-28.f,-28.f},/*8000*/
+   {-14.f,-14.f,-14.f,-14.f,-14.f,-14.f,-14.f,-20.f,-28.f,-28.f,-28.f},/*11500*/
+   {-14.f,-14.f,-14.f,-14.f,-14.f,-14.f,-14.f,-14.f,-20.f,-24.f,-28.f},/*16000*/
   },
 
   1,/*noisemaskp */
-  /*  0   10   20   30   40   50   60    70    80    90   100 */
-  {{-99.f,-99.f,-99.f,-99.f,-99.f,-99.f,-99.f,-199.f,-199.f,-199.f,-199.f}, /*63*/
-   {-99.f,-99.f,-99.f,-99.f,-99.f,-99.f,-99.f,-199.f,-199.f,-199.f,-199.f}, /*88*/
-   {-99.f,-99.f,-99.f,-99.f,-99.f,-99.f,-99.f,-199.f,-199.f,-199.f,-199.f}, /*125*/
-   {-99.f,-99.f,-99.f,-99.f,-99.f,-99.f,-99.f,-199.f,-199.f,-199.f,-199.f}, /*175*/
-   {-99.f,-99.f,-99.f,-99.f,-99.f,-99.f,-99.f,-199.f,-199.f,-199.f,-199.f}, /*250*/
-   {-99.f,-99.f,-99.f,-99.f,-99.f,-99.f,-99.f,-199.f,-199.f,-199.f,-199.f}, /*350*/
-   {-99.f,-99.f,-99.f,-99.f,-99.f,-99.f,-99.f,-199.f,-199.f,-199.f,-199.f}, /*500*/
-   {-99.f,-99.f,-99.f,-99.f,-99.f,-99.f,-99.f,-199.f,-199.f,-199.f,-199.f}, /*700*/
-
-   {  4.f,  4.f,  4.f,  4.f,  4.f,  2.f,  1.f,   0.f,  -1.f,  -2.f,  -3.f}, /*1000*/
-   {  4.f,  4.f,  4.f,  4.f,  4.f,  2.f,  1.f,   0.f,   0.f,  -2.f,  -3.f}, /*1400*/
-   {  4.f,  4.f,  4.f,  4.f,  2.f,  2.f,  1.f,   0.f,   0.f,  -2.f,  -3.f}, /*2000*/
-   {  4.f,  4.f,  4.f,  4.f,  2.f,  2.f,  1.f,   0.f,   0.f,  -2.f,  -3.f}, /*2800*/
-   {  4.f,  4.f,  4.f,  4.f,  4.f,  4.f,  2.f,   0.f,   0.f,   0.f,   0.f}, /*4000*/
-   {  4.f,  4.f,  4.f,  4.f,  4.f,  4.f,  2.f,   2.f,   2.f,   2.f,   2.f}, /*5600*/
-   {  6.f,  6.f,  6.f,  6.f,  4.f,  4.f,  4.f,   4.f,   4.f,   2.f,   2.f}, /*8000*/
-   {  8.f,  8.f,  8.f,  8.f,  6.f,  6.f,  6.f,   6.f,   6.f,   4.f,   4.f}, /*11500*/
-   {  8.f,  8.f,  8.f,  8.f,  8.f,  8.f,  8.f,   6.f,   6.f,   6.f,   4.f}, /*16000*/
+  -10.f,  /* suppress any noise curve over maxspec+n */
+  .5f,   /* low window */
+  .5f,   /* high window */
+  25,
+  25,
+  {.000f, 0.f, /*63*/
+   .000f, 0.f, /*88*/
+   .000f, 0.f, /*125*/
+   .000f, 0.f, /*175*/
+   .000f, 0.f, /*250*/
+   .000f, 0.f, /*350*/
+   .000f, 0.f, /*500*/
+   .200f, -2.f, /*700*/
+   .300f, -2.f, /*1000*/
+   .400f, -2.f, /*1400*/
+   .400f, -2.f, /*2000*/
+   .400f, -2.f, /*2800*/
+   .700f, -2.f, /*4000*/
+   .850f, -3.f, /*5600*/
+   .900f, -3.f, /*8000*/
+   .900f, -3.f, /*11500*/
+   .900f, -3.f, /*16000*/
   },
  
-  110.f,
+  105.f,  /* even decade + 5 is important; saves an rint() later in a
+            tight loop) */
+  -32.,
 
-  -3.f, -.004f   /* attack/decay control */
+  -0.f, -.004f,   /* attack/decay control */
+
 };
 
 /* with GNUisms, this could be short and readable. Oh well */
 static vorbis_info_time0 _time_set0B={0};
-static vorbis_info_floor0 _floor_set0B={12, 44100,  64, 12,150, 1, {0} };
-static vorbis_info_floor0 _floor_set1B={30, 44100, 256, 12,150, 1, {1} };
-static vorbis_info_residue0 _residue_set0B={0,128, 32,6,2,
+static vorbis_info_floor0 _floor_set0B={12, 44100,  64, 10,130, 2, {0,1},
+                                        0.199f, .285f};
+static vorbis_info_floor0 _floor_set1B={30, 44100, 256, 12,150, 2, {2,3}, 
+                                        .082f, .126f};
+static vorbis_info_residue0 _residue_set0B={0,96,16,6,4,
                                             {0,1,1,1,1,1},
-					    {4,5,6,7,8},
+					    {6,7,8,9,10},
                                             
                                             {0,99999,9999,9999,9999},
-					    {99.f,1.5f,2.5f,6.5f,12.5f},
-					    {5,5,5,5,5},
+					    {999.f,1.5f,3.5f,15.5f,26.5f},
+					    {4,4,4,4,4},
                                             {99,99,99,99,99}};
 
-static vorbis_info_residue0 _residue_set1B={0,1024, 32,10,3,
+static vorbis_info_residue0 _residue_set1B={0,1024, 32,10,5,
                                             {0,1,1,1,1,1,1,1,1,1},
-					    {9,10,11,12,13,14,15,16,17},
+					    {11,12,13,14,15,16,17,18,19},
                                            
-					    {0,8,9999,17,9999,
-					     22,9999,9999,9999},
-					    {99.f,1.5f,1.5f,2.5f,2.5f,
-					     4.f,4.f,6.5f,12.5f},
+					    {0,8,9999,18,9999,
+					     24,9999,9999,9999},
+					    {999.f,1.5f,1.5f,2.5f,2.5f,
+					     6.5f,6.5f,14.5f,30.f},
                                             {5,5,5,5,5,5,5,5,5},
                                             {99,99,99,99,99,99,99,99,99}};
 
 static vorbis_info_mapping0 _mapping_set0B={1, {0,0}, {0}, {0}, {0}, {0}};
-static vorbis_info_mapping0 _mapping_set1B={1, {0,0}, {0}, {1}, {1}, {0}};
+static vorbis_info_mapping0 _mapping_set1B={1, {0,0}, {0}, {1}, {1}, {1}};
 static vorbis_info_mode _mode_set0B={0,0,0,0};
 static vorbis_info_mode _mode_set1B={1,0,0,1};
 
@@ -161,7 +272,7 @@
   /* smallblock, largeblock */
   {256, 2048}, 
   /* modes,maps,times,floors,residues,books,psys */
-  2,          2,    1,     2,       2,   18,   1,
+  2,          2,    1,     2,       2,   20,   2,
   /* modes */
   {&_mode_set0B,&_mode_set1B},
   /* maps */
@@ -173,8 +284,10 @@
   /* residue */
   {0,0},{&_residue_set0B,&_residue_set1B},
   /* books */
-  {&_vq_book_lsp12_0,      /* 0 */
-   &_vq_book_lsp30_0,      /* 1 */
+  {&_vq_book_lsp12_0,       /* 0 */
+   &_vq_book_lsp12_1,       /* 1 */
+   &_vq_book_lsp30_0,      /* 2 */
+   &_vq_book_lsp30_1,      /* 3 */
 
    &_huff_book_res0_160_128aux,
    &_huff_book_res0_160_1024aux,
@@ -197,9 +310,13 @@
 
   },
   /* psy */
-  {&_psy_set_B},
+  {&_psy_set_B0,&_psy_set_B},
   /* thresh sample period, preecho clamp trigger threshhold, range, minenergy */
-  256, 32.f, 6.f, -96.f
+  256, 30.f, -30.f, -96.f,
+
+  -10., 
+
+  0,
 };
 
 #define PREDEF_INFO_MAX 0

1.7       +186 -140  vorbis/lib/modes/mode_C.h

Index: mode_C.h
===================================================================
RCS file: /usr/local/cvsroot/vorbis/lib/modes/mode_C.h,v
retrieving revision 1.6
retrieving revision 1.7
diff -u -r1.6 -r1.7
--- mode_C.h	2000/12/21 21:04:47	1.6
+++ mode_C.h	2001/01/22 01:38:50	1.7
@@ -12,7 +12,7 @@
  ********************************************************************
 
  function: predefined encoding modes
- last mod: $Id: mode_C.h,v 1.6 2000/12/21 21:04:47 xiphmont Exp $
+ last mod: $Id: mode_C.h,v 1.7 2001/01/22 01:38:50 xiphmont Exp $
 
  ********************************************************************/
 
@@ -25,6 +25,8 @@
 
 #include "books/lsp12_0.vqh"
 #include "books/lsp30_0.vqh"
+#include "books/lsp12_1.vqh"
+#include "books/lsp30_1.vqh"
 
 #include "books/res0_192_128aux.vqh"
 #include "books/res0_192_1024aux.vqh"
@@ -40,192 +42,226 @@
 #include "books/res0_192_1024_3.vqh"
 #include "books/res0_192_1024_4.vqh"
 #include "books/res0_192_1024_5.vqh"
+#include "books/res0_192_1024_6.vqh"
+#include "books/res0_192_1024_7.vqh"
+#include "books/res0_192_1024_8.vqh"
+#include "books/res0_192_1024_9.vqh"
 
+
 static vorbis_info_psy _psy_set_C0={
   1,/*athp*/
   0,/*decayp*/
-  1,/*smoothp*/
-  0,.1f,
 
-  -100.f,
-  -140.f,
+  -100.,
+  -140.,
 
+  8,
+
   /*     0  1  2   3   4   5   6   7   8   9  10  11  12  13  14  15   16   */
   /* x: 63 88 125 175 250 350 500 700 1k 1.4k 2k 2.8k 4k 5.6k 8k 11.5k 16k Hz */
   /* y: 0 10 20 30 40 50 60 70 80 90 100 dB */
 
-  0,/* tonemaskp */
+   1,/* tonemaskp */
   /*  0   10   20   30   40   50   60   70   80   90   100 */
-  {{-30.f,-35.f,-35.f,-40.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f,-110.f}, /*63*/
-   {-30.f,-35.f,-35.f,-40.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f,-110.f}, /*88*/
-   {-30.f,-35.f,-35.f,-40.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f,-110.f}, /*125*/
-   {-30.f,-35.f,-35.f,-40.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f,-110.f}, /*175*/
-   {-30.f,-35.f,-35.f,-40.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f,-110.f}, /*250*/
-   {-30.f,-35.f,-35.f,-40.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f,-110.f}, /*350*/
-   {-30.f,-35.f,-35.f,-40.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f,-110.f}, /*500*/
-   {-30.f,-35.f,-35.f,-40.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f,-110.f}, /*700*/
-   {-30.f,-35.f,-35.f,-40.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f,-110.f}, /*1000*/
-   {-30.f,-35.f,-35.f,-40.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f,-110.f}, /*1400*/
-   {-40.f,-40.f,-40.f,-40.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f,-110.f}, /*2000*/
-   {-40.f,-40.f,-40.f,-40.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f,-110.f}, /*2800*/
-   {-30.f,-35.f,-35.f,-40.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f,-110.f}, /*4000*/
-   {-30.f,-30.f,-35.f,-40.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f,-110.f}, /*5600*/
-   {-30.f,-30.f,-35.f,-35.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f,-110.f}, /*8000*/
-   {-30.f,-30.f,-35.f,-33.f,-45.f,-55.f,-65.f,-75.f,-85.f,-100.f,-110.f}, /*11500*/
-   {-30.f,-28.f,-30.f,-32.f,-45.f,-55.f,-65.f,-75.f,-85.f,-100.f,-110.f}, /*16000*/
+  {
+   {-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.}, /*63*/
+   {-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.}, /*88*/
+   {-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.}, /*125*/
+   {-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.}, /*175*/
+   {-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.}, /*250*/
+   {-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.}, /*350*/
+   {-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.}, /*500*/
+   {-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.}, /*700*/
+
+   {-30.,-35.,-35.,-40.,-40.,-50.,-60.,-70.,-80.,-90.,-100.}, /*1000*/
+   {-30.,-35.,-35.,-40.,-40.,-50.,-60.,-70.,-80.,-90.,-100.}, /*1400*/
+   {-40.,-40.,-40.,-40.,-40.,-50.,-60.,-70.,-80.,-90.,-100.}, /*2000*/
+   {-40.,-40.,-40.,-40.,-40.,-50.,-60.,-70.,-80.,-90.,-100.}, /*2800*/
+   {-30.,-35.,-35.,-40.,-40.,-50.,-60.,-70.,-80.,-90.,-100.}, /*4000*/
+   {-30.,-35.,-35.,-40.,-40.,-50.,-60.,-70.,-80.,-90.,-100.}, /*5600*/
+   {-30.,-35.,-35.,-40.,-40.,-50.,-60.,-70.,-80.,-90.,-100.}, /*8000*/
+   {-30.,-35.,-35.,-40.,-40.,-50.,-60.,-70.,-80.,-90.,-100.}, /*11500*/
+   {-30.,-35.,-35.,-40.,-40.,-50.,-60.,-70.,-80.,-90.,-100.}, /*16000*/
   },
 
   1,/* peakattp */
-  {{-14.f,-16.f,-18.f,-19.f,-20.f,-21.f,-22.f,-22.f,-28.f,-28.f,-28.f}, /*63*/
-   {-14.f,-16.f,-18.f,-19.f,-20.f,-21.f,-22.f,-22.f,-28.f,-28.f,-28.f}, /*88*/
-   {-14.f,-16.f,-18.f,-19.f,-20.f,-21.f,-22.f,-22.f,-28.f,-28.f,-28.f}, /*125*/
-   { -7.f, -8.f, -9.f,-10.f,-10.f,-11.f,-12.f,-13.f,-28.f,-28.f,-28.f}, /*175*/
-   { -7.f, -8.f, -9.f,-10.f,-10.f,-11.f,-12.f,-13.f,-28.f,-28.f,-28.f}, /*250*/
-   { -7.f, -8.f, -9.f,-10.f,-10.f,-11.f,-12.f,-13.f,-28.f,-28.f,-28.f}, /*350*/
-   { -7.f, -8.f, -9.f,-10.f,-10.f,-11.f,-12.f,-13.f,-28.f,-28.f,-28.f}, /*500*/
-   { -7.f, -8.f, -9.f,-10.f,-10.f,-11.f,-12.f,-13.f,-15.f,-18.f,-20.f}, /*700*/
-   { -7.f, -8.f, -9.f,-10.f,-10.f,-11.f,-12.f,-13.f,-15.f,-18.f,-20.f}, /*1000*/
-   { -7.f, -8.f, -9.f,-10.f,-10.f,-11.f,-12.f,-13.f,-15.f,-18.f,-20.f}, /*1400*/
-   { -7.f, -8.f, -9.f,-10.f,-10.f,-11.f,-12.f,-13.f,-15.f,-18.f,-20.f}, /*2000*/
-   { -7.f, -8.f, -9.f,-10.f,-10.f,-11.f,-12.f,-13.f,-15.f,-18.f,-20.f}, /*2800*/
-   { -7.f, -8.f, -9.f,-10.f,-10.f,-11.f,-12.f,-13.f,-15.f,-18.f,-20.f}, /*4000*/
-   { -7.f, -8.f, -9.f,-10.f,-10.f,-11.f,-12.f,-13.f,-15.f,-18.f,-20.f}, /*5600*/
-   { -7.f, -8.f, -9.f,-10.f,-10.f,-11.f,-12.f,-13.f,-15.f,-16.f,-17.f}, /*8000*/
-   { -6.f, -7.f, -9.f, -9.f, -9.f, -9.f,-10.f,-11.f,-12.f,-13.f,-14.f}, /*11500*/
-   { -6.f, -6.f, -9.f, -9.f, -9.f, -9.f, -9.f, -9.f,-10.f,-11.f,-12.f}, /*16000*/
+  {{-14.f,-16.f,-18.f,-19.f,-20.f,-21.f,-28.f,-28.f,-28.f,-28.f,-28.f},/*63*/
+   {-14.f,-16.f,-18.f,-19.f,-20.f,-21.f,-28.f,-28.f,-28.f,-28.f,-28.f},/*88*/
+   {-14.f,-16.f,-18.f,-19.f,-20.f,-21.f,-28.f,-28.f,-28.f,-28.f,-28.f},/*125*/
+   {-14.f,-14.f,-14.f,-14.f,-16.f,-16.f,-20.f,-24.f,-28.f,-28.f,-28.f},/*175*/
+   {-14.f,-14.f,-14.f,-14.f,-16.f,-16.f,-20.f,-24.f,-28.f,-28.f,-28.f},/*250*/
+   {-14.f,-14.f,-14.f,-14.f,-16.f,-16.f,-20.f,-24.f,-28.f,-28.f,-28.f},/*350*/
+   {-14.f,-14.f,-14.f,-14.f,-16.f,-16.f,-20.f,-24.f,-28.f,-28.f,-28.f},/*500*/
+   {-14.f,-14.f,-14.f,-14.f,-14.f,-14.f,-18.f,-24.f,-28.f,-28.f,-28.f},/*700*/
+   {-14.f,-14.f,-14.f,-14.f,-14.f,-14.f,-14.f,-24.f,-28.f,-28.f,-28.f},/*1000*/
+   {-14.f,-14.f,-14.f,-14.f,-14.f,-16.f,-18.f,-24.f,-28.f,-28.f,-28.f},/*1400*/
+   {-14.f,-14.f,-14.f,-14.f,-14.f,-16.f,-18.f,-24.f,-28.f,-28.f,-28.f},/*2000*/
+   {-14.f,-14.f,-14.f,-14.f,-14.f,-16.f,-18.f,-24.f,-28.f,-28.f,-28.f},/*2400*/
+   {-14.f,-14.f,-14.f,-14.f,-14.f,-16.f,-18.f,-24.f,-28.f,-28.f,-28.f},/*4000*/
+   {-14.f,-14.f,-14.f,-14.f,-14.f,-14.f,-12.f,-20.f,-28.f,-28.f,-28.f},/*5600*/
+   {-14.f,-14.f,-14.f,-14.f,-14.f,-14.f,-14.f,-20.f,-28.f,-28.f,-28.f},/*8000*/
+   {-14.f,-14.f,-14.f,-14.f,-14.f,-14.f,-14.f,-20.f,-28.f,-28.f,-28.f},/*11500*/
+   {-14.f,-14.f,-14.f,-14.f,-14.f,-14.f,-14.f,-14.f,-20.f,-24.f,-28.f},/*16000*/
   },
 
   1,/*noisemaskp */
-  /*  0   10   20   30   40   50   60    70    80    90   100 */
-  {{-99.f,-99.f,-99.f,-99.f,-99.f,-99.f,-99.f,-199.f,-199.f,-199.f,-199.f}, /*63*/
-   {-99.f,-99.f,-99.f,-99.f,-99.f,-99.f,-99.f,-199.f,-199.f,-199.f,-199.f}, /*88*/
-   {-99.f,-99.f,-99.f,-99.f,-99.f,-99.f,-99.f,-199.f,-199.f,-199.f,-199.f}, /*125*/
-   {-99.f,-99.f,-99.f,-99.f,-99.f,-99.f,-99.f,-199.f,-199.f,-199.f,-199.f}, /*175*/
-   {-99.f,-99.f,-99.f,-99.f,-99.f,-99.f,-99.f,-199.f,-199.f,-199.f,-199.f}, /*250*/
-   {-99.f,-99.f,-99.f,-99.f,-99.f,-99.f,-99.f,-199.f,-199.f,-199.f,-199.f}, /*350*/
-   {-99.f,-99.f,-99.f,-99.f,-99.f,-99.f,-99.f,-199.f,-199.f,-199.f,-199.f}, /*500*/
-   {-99.f,-99.f,-99.f,-99.f,-99.f,-99.f,-99.f,-199.f,-199.f,-199.f,-199.f}, /*700*/
-   {-99.f,-99.f,-99.f,-99.f,-99.f,-99.f,-99.f,-199.f,-199.f,-199.f,-199.f}, /*1000*/
-   {-99.f,-99.f,-99.f,-99.f,-99.f,-99.f,-99.f,-199.f,-199.f,-199.f,-199.f}, /*1400*/
-
-   {  0.f, -4.f, -4.f, -4.f, -6.f, -6.f, -6.f,  -6.f,  -6.f,  -6.f,  -6.f}, /*2000*/
-   {  0.f, -3.f, -4.f, -4.f, -4.f, -5.f, -6.f,  -6.f,  -6.f,  -6.f,  -6.f}, /*2800*/
-   {  0.f, -2.f, -2.f, -2.f, -2.f, -2.f, -2.f,  -2.f,  -4.f,  -4.f,  -4.f}, /*4000*/
-   {  0.f, -0.f, -0.f, -0.f, -0.f, -2.f, -2.f,  -2.f,  -2.f,  -2.f,  -2.f}, /*5600*/
-   {  0.f,  0.f,  0.f,  0.f,  0.f,  0.f,  0.f,   0.f,   0.f,  -2.f,  -4.f}, /*8000*/
-   {  2.f,  2.f,  2.f,  2.f,  2.f,  2.f,  0.f,   0.f,   0.f,   0.f,   0.f}, /*11500*/
-   {  2.f,  2.f,  2.f,  2.f,  2.f,  4.f,  4.f,   4.f,   4.f,   4.f,   4.f}, /*16000*/
+  -10.f,  /* suppress any noise curve over maxspec+n */
+  .5f,   /* low window */
+  .5f,   /* high window */
+  5,
+  5,
+  {.000f, 0.f,/*63*/
+   .000f, 0.f,/*88*/
+   .000f, 0.f,/*125*/
+   .000f, 0.f,/*175*/
+   .000f, 0.f,/*250*/
+   .000f, 0.f,/*350*/
+   .000f, 0.f,/*500*/
+   .000f, 0.f,/*700*/
+   .200f, 0.f,/*1000*/
+   .300f, 0.f,/*1400*/
+   .400f, 0.f,/*2000*/
+   .600f, -2.f,/*2800*/
+   .600f, -2.f,/*4000*/
+   .700f, -2.f,/*5600*/
+   .850f, -2.f,/*8000*/
+   .850f, -1.f,/*11500*/
+   .850f,  0.f,/*16000*/
   },
- 
-  100.f,
 
-  -6.f, -.006f   /* attack/decay control */
+  105.f,  /* even decade + 5 is important; saves an rint() later in a
+            tight loop) */
+  -28.,
+
+  -0., -.004   /* attack/decay control */
 };
 
-static vorbis_info_psy _psy_set_C1={
+static vorbis_info_psy _psy_set_C={
   1,/*athp*/
   0,/*decayp*/
-  1,/*smoothp*/
-  0,.1f,
 
   -100.f,
   -140.f,
 
+  8,
+
   /*     0  1  2   3   4   5   6   7   8   9  10  11  12  13  14  15   16   */
   /* x: 63 88 125 175 250 350 500 700 1k 1.4k 2k 2.8k 4k 5.6k 8k 11.5k 16k Hz */
   /* y: 0 10 20 30 40 50 60 70 80 90 100 dB */
-
-  1,/* tonemaskp */
+   1,/* tonemaskp */
   /*  0   10   20   30   40   50   60   70   80   90   100 */
-  {{-30.f,-35.f,-35.f,-40.f,-40.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f}, /*63*/
-   {-30.f,-35.f,-35.f,-40.f,-40.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f}, /*88*/
-   {-30.f,-35.f,-35.f,-40.f,-40.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f}, /*125*/
-   {-30.f,-35.f,-35.f,-40.f,-40.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f}, /*175*/
-   {-30.f,-35.f,-35.f,-40.f,-40.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f}, /*250*/
-   {-30.f,-35.f,-35.f,-40.f,-40.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f}, /*350*/
-   {-30.f,-35.f,-35.f,-40.f,-40.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f}, /*500*/
-   {-30.f,-35.f,-35.f,-40.f,-40.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f}, /*700*/
-   {-30.f,-35.f,-35.f,-40.f,-40.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f}, /*1000*/
-   {-30.f,-35.f,-35.f,-40.f,-40.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f}, /*1400*/
+  {
+   {-999.f,-999.f,-999.f,-999.f,-999.f,-999.f,-999.f,-999.f,-999.f,-999.f,-999.f}, /*63*/
+   {-999.f,-999.f,-999.f,-999.f,-999.f,-999.f,-999.f,-999.f,-999.f,-999.f,-999.f}, /*88*/
+   {-999.f,-999.f,-999.f,-999.f,-999.f,-999.f,-999.f,-999.f,-999.f,-999.f,-999.f}, /*125*/
+   //   {-99.,-99.,-99.,-99.,-99.,-99.,-99.,-99.,-99.,-99.,-100.}, /*175*/
+   //   {-99.,-99.,-99.,-99.,-99.,-99.,-99.,-99.,-99.,-99.,-100.}, /*250*/
+   //   {-99.,-99.,-99.,-99.,-99.,-99.,-99.,-99.,-99.,-99.,-100.}, /*350*/
+   //   {-99.,-99.,-99.,-99.,-99.,-99.,-99.,-99.,-99.,-99.,-100.}, /*500*/
+   //   {-99.,-99.,-99.,-99.,-99.,-99.,-99.,-99.,-99.,-99.,-100.}, /*700*/
+
+   //   {-30.,-35.,-35.,-40.,-40.,-50.,-60.,-70.,-80.,-90.,-100.}, /*63*/
+   //   {-30.,-35.,-35.,-40.,-40.,-50.,-60.,-70.,-80.,-90.,-100.}, /*88*/
+   //   {-30.,-35.,-35.,-40.,-40.,-50.,-60.,-70.,-80.,-90.,-100.}, /*125*/
+   {-40.f,-40.f,-40.f,-40.f,-40.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f}, /*175*/
+   {-40.f,-40.f,-40.f,-40.f,-40.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f}, /*250*/
+   {-40.f,-40.f,-40.f,-40.f,-40.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f}, /*350*/
+   {-40.f,-40.f,-40.f,-40.f,-40.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f}, /*500*/
+   {-40.f,-40.f,-40.f,-40.f,-40.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f}, /*700*/
+
+   {-40.f,-40.f,-40.f,-40.f,-40.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f}, /*1000*/
+   {-40.f,-40.f,-40.f,-40.f,-40.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f}, /*1400*/
    {-40.f,-40.f,-40.f,-40.f,-40.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f}, /*2000*/
    {-40.f,-40.f,-40.f,-40.f,-40.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f}, /*2800*/
-   {-30.f,-35.f,-35.f,-40.f,-40.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f}, /*4000*/
-   {-30.f,-30.f,-35.f,-40.f,-40.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f}, /*5600*/
-   {-30.f,-30.f,-35.f,-35.f,-40.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f}, /*8000*/
-   {-30.f,-30.f,-35.f,-33.f,-35.f,-45.f,-55.f,-65.f,-75.f,-90.f,-100.f}, /*11500*/
-   {-30.f,-28.f,-30.f,-32.f,-35.f,-45.f,-55.f,-65.f,-75.f,-90.f,-100.f}, /*16000*/
+   {-40.f,-40.f,-40.f,-40.f,-40.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f}, /*4000*/
+   {-40.f,-40.f,-40.f,-40.f,-40.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f}, /*5600*/
+
+   {-30.f,-40.f,-40.f,-40.f,-40.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f}, /*8000*/
+   {-30.f,-40.f,-40.f,-40.f,-40.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f}, /*11500*/
+   {-30.f,-35.f,-40.f,-40.f,-40.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f}, /*16000*/
+
   },
 
-  1,/* peakattp */
-  {{-14.f,-16.f,-18.f,-19.f,-20.f,-21.f,-22.f,-22.f,-22.f,-28.f,-28.f}, /*63*/
-   {-14.f,-16.f,-18.f,-19.f,-20.f,-21.f,-22.f,-22.f,-22.f,-28.f,-28.f}, /*88*/
-   {-14.f,-16.f,-18.f,-19.f,-20.f,-21.f,-22.f,-22.f,-22.f,-28.f,-28.f}, /*125*/
-   { -7.f, -8.f, -9.f,-10.f,-10.f,-11.f,-12.f,-13.f,-18.f,-18.f,-20.f}, /*175*/
-   { -7.f, -8.f, -9.f,-10.f,-10.f,-11.f,-12.f,-13.f,-18.f,-18.f,-20.f}, /*250*/
-   { -7.f, -8.f, -9.f,-10.f,-10.f,-11.f,-12.f,-13.f,-18.f,-18.f,-20.f}, /*350*/
-   { -7.f, -8.f, -9.f,-10.f,-10.f,-11.f,-12.f,-13.f,-18.f,-18.f,-20.f}, /*500*/
-   { -7.f, -8.f, -9.f,-10.f,-10.f,-11.f,-12.f,-13.f,-15.f,-18.f,-20.f}, /*700*/
-   { -7.f, -8.f, -9.f,-10.f,-10.f,-11.f,-12.f,-13.f,-15.f,-18.f,-20.f}, /*1000*/
-   { -7.f, -8.f, -9.f,-10.f,-10.f,-11.f,-12.f,-13.f,-15.f,-18.f,-20.f}, /*1400*/
-   { -7.f, -8.f, -9.f,-10.f,-10.f,-11.f,-12.f,-13.f,-15.f,-18.f,-20.f}, /*2000*/
-   { -7.f, -8.f, -9.f,-10.f,-10.f,-11.f,-12.f,-13.f,-15.f,-18.f,-20.f}, /*2800*/
-   { -7.f, -8.f, -9.f,-10.f,-10.f,-11.f,-12.f,-13.f,-15.f,-18.f,-20.f}, /*4000*/
-   { -7.f, -8.f, -9.f,-10.f,-10.f,-11.f,-12.f,-13.f,-15.f,-18.f,-20.f}, /*5600*/
-   { -7.f, -8.f, -9.f,-10.f,-10.f,-11.f,-12.f,-13.f,-15.f,-16.f,-17.f}, /*8000*/
-   { -6.f, -7.f, -9.f, -9.f, -9.f, -9.f,-10.f,-11.f,-12.f,-13.f,-14.f}, /*11500*/
-   { -6.f, -6.f, -9.f, -9.f, -9.f, -9.f, -9.f, -9.f,-10.f,-11.f,-12.f}, /*16000*/
+  1,
+  {{-20.f,-20.f,-20.f,-24.f,-24.f,-24.f,-28.f,-28.f,-28.f,-28.f,-28.f},/*63*/
+   {-20.f,-20.f,-20.f,-24.f,-24.f,-24.f,-28.f,-28.f,-28.f,-28.f,-28.f},/*88*/
+   {-20.f,-20.f,-20.f,-20.f,-24.f,-24.f,-28.f,-28.f,-28.f,-28.f,-28.f},/*125*/
+   {-20.f,-20.f,-20.f,-20.f,-24.f,-24.f,-24.f,-24.f,-28.f,-28.f,-28.f},/*175*/
+   {-20.f,-20.f,-20.f,-20.f,-20.f,-20.f,-24.f,-24.f,-28.f,-28.f,-28.f},/*250*/
+   {-20.f,-20.f,-20.f,-20.f,-20.f,-20.f,-24.f,-24.f,-28.f,-28.f,-28.f},/*350*/
+   {-20.f,-20.f,-20.f,-20.f,-20.f,-20.f,-28.f,-24.f,-28.f,-28.f,-28.f},/*500*/
+   {-20.f,-20.f,-20.f,-20.f,-20.f,-20.f,-24.f,-24.f,-28.f,-28.f,-28.f},/*700*/
+   {-20.f,-20.f,-20.f,-20.f,-20.f,-20.f,-24.f,-24.f,-28.f,-28.f,-28.f},/*1000*/
+   {-20.f,-20.f,-20.f,-20.f,-24.f,-24.f,-24.f,-24.f,-28.f,-28.f,-28.f},/*1400*/
+   {-20.f,-20.f,-20.f,-20.f,-24.f,-24.f,-24.f,-24.f,-28.f,-28.f,-28.f},/*2000*/
+   {-20.f,-20.f,-20.f,-20.f,-24.f,-24.f,-24.f,-24.f,-28.f,-28.f,-28.f},/*2800*/
+   {-20.f,-20.f,-20.f,-20.f,-22.f,-20.f,-24.f,-24.f,-28.f,-28.f,-28.f},/*4000*/
+   {-20.f,-20.f,-20.f,-20.f,-22.f,-20.f,-22.f,-24.f,-28.f,-28.f,-28.f},/*5600*/
+   {-20.f,-20.f,-20.f,-20.f,-20.f,-20.f,-22.f,-24.f,-28.f,-28.f,-28.f},/*8000*/
+   {-20.f,-20.f,-20.f,-20.f,-20.f,-20.f,-22.f,-24.f,-28.f,-28.f,-28.f},/*11500*/
+   {-20.f,-20.f,-20.f,-20.f,-20.f,-20.f,-22.f,-24.f,-28.f,-28.f,-28.f},/*16000*/
   },
 
   1,/*noisemaskp */
-  /*  0   10   20   30   40   50   60    70    80    90   100 */
-  {{-99.f,-99.f,-99.f,-99.f,-99.f,-99.f,-99.f,-199.f,-199.f,-199.f,-199.f}, /*63*/
-   {-99.f,-99.f,-99.f,-99.f,-99.f,-99.f,-99.f,-199.f,-199.f,-199.f,-199.f}, /*88*/
-   {-99.f,-99.f,-99.f,-99.f,-99.f,-99.f,-99.f,-199.f,-199.f,-199.f,-199.f}, /*125*/
-   {-99.f,-99.f,-99.f,-99.f,-99.f,-99.f,-99.f,-199.f,-199.f,-199.f,-199.f}, /*175*/
-   {-99.f,-99.f,-99.f,-99.f,-99.f,-99.f,-99.f,-199.f,-199.f,-199.f,-199.f}, /*250*/
-   {-99.f,-99.f,-99.f,-99.f,-99.f,-99.f,-99.f,-199.f,-199.f,-199.f,-199.f}, /*350*/
-   {-99.f,-99.f,-99.f,-99.f,-99.f,-99.f,-99.f,-199.f,-199.f,-199.f,-199.f}, /*500*/
-   {-99.f,-99.f,-99.f,-99.f,-99.f,-99.f,-99.f,-199.f,-199.f,-199.f,-199.f}, /*700*/
-   {-99.f,-99.f,-99.f,-99.f,-99.f,-99.f,-99.f,-199.f,-199.f,-199.f,-199.f}, /*1000*/
-   {-99.f,-99.f,-99.f,-99.f,-99.f,-99.f,-99.f,-199.f,-199.f,-199.f,-199.f}, /*1400*/
-
-   {  0.f, -4.f, -4.f, -4.f, -6.f, -6.f, -6.f,  -6.f,  -6.f,  -6.f,  -6.f}, /*2000*/
-   {  0.f, -3.f, -4.f, -4.f, -4.f, -5.f, -6.f,  -6.f,  -6.f,  -6.f,  -6.f}, /*2800*/
-   {  0.f, -2.f, -2.f, -2.f, -2.f, -2.f, -2.f,  -2.f,  -4.f,  -4.f,  -4.f}, /*4000*/
-   {  0.f, -0.f, -0.f, -0.f, -0.f, -2.f, -2.f,  -2.f,  -2.f,  -2.f,  -2.f}, /*5600*/
-   {  0.f,  0.f,  0.f,  0.f,  0.f,  0.f,  0.f,   0.f,   0.f,  -2.f,  -4.f}, /*8000*/
-   {  2.f,  2.f,  2.f,  2.f,  2.f,  2.f,  0.f,   0.f,   0.f,   0.f,   0.f}, /*11500*/
-   {  2.f,  2.f,  2.f,  2.f,  2.f,  4.f,  4.f,   4.f,   4.f,   4.f,   4.f}, /*16000*/
+  -15.f,  /* suppress any noise curve over maxspec+n */
+  .5f,   /* low window */
+  .5f,   /* high window */
+  25,
+  25,
+  {.000f, 0.f, /*63*/
+   .000f, 0.f, /*88*/
+   .000f, 0.f, /*125*/
+   .000f, 0.f, /*175*/
+   .000f, 0.f, /*250*/
+   .000f, 0.f, /*350*/
+   .000f, 0.f, /*500*/
+   .200f, -6.f, /*700*/
+   .300f, -6.f, /*1000*/
+   .400f, -6.f, /*1400*/
+   .400f, -6.f, /*2000*/
+   .400f, -6.f, /*2800*/
+   .700f, -6.f, /*4000*/
+   .850f, -6.f, /*5600*/
+   .850f, -5.f, /*8000*/
+   .850f, -4.f, /*11500*/
+   .850f, -3.f, /*16000*/
   },
  
-  110.f,
+  105.f,  /* even decade + 5 is important; saves an rint() later in a
+            tight loop) */
+  -32.,
 
-  -6.f, -.006f   /* attack/decay control */
+  -0.f, -.004f,   /* attack/decay control */
+
 };
 
 /* with GNUisms, this could be short and readable. Oh well */
 static vorbis_info_time0 _time_set0C={0};
-static vorbis_info_floor0 _floor_set0C={12, 44100,  64, 12,150, 1, {0} };
-static vorbis_info_floor0 _floor_set1C={30, 44100, 256, 12,150, 1, {1} };
-static vorbis_info_residue0 _residue_set0C={0,128, 32,6,2,
+static vorbis_info_floor0 _floor_set0C={12, 44100,  64, 10,130, 2, {0,1},
+                                        0.199f, .285f};
+static vorbis_info_floor0 _floor_set1C={30, 44100, 256, 12,150, 2, {2,3}, 
+                                        .082f, .126f};
+static vorbis_info_residue0 _residue_set0C={0,128,16,6,4,
                                             {0,1,1,1,1,1},
-					    {4,5,6,7,8},
+					    {6,7,8,9,10},
                                             
                                             {0,99999,9999,9999,9999},
-					    {99.f,1.5f,2.5f,6.5f,12.5f},
-					    {5,5,5,5,5},
+					    {999.f,1.5f,3.5f,15.5f,26.5f},
+					    {4,4,4,4,4},
                                             {99,99,99,99,99}};
 
-static vorbis_info_residue0 _residue_set1C={0,1024, 32,6,3,
-					    {0,1,1,1,1,1},
-					    {9,10,11,12,13},
+static vorbis_info_residue0 _residue_set1C={0,1024, 32,10,5,
+					    {0,1,1,1,1,1,1,1,1,1},
+					    {11,12,13,14,15,16,17,18,19},
                                            
-					    {0,99999,9999,9999,9999},
-					    {99.f,1.5f,2.5f,6.5f,12.5f},
-					    {5,5,5,5,5},
-					    {99,99,99,99,99}};
+					    {0,8,9999,18,9999,
+					     24,9999,9999,9999},
+					    {999.f,1.5f,1.5f,2.5f,2.5f,
+					     6.5f,6.5f,14.5f,30.f},
+					    {5,5,5,5,5,5,5,5,5},
+					    {99,99,99,99,99,99,99,99,99}};
 
-static vorbis_info_mapping0 _mapping_set0C={1, {0,0}, {0}, {0}, {0}, {1}};
+static vorbis_info_mapping0 _mapping_set0C={1, {0,0}, {0}, {0}, {0}, {0}};
 static vorbis_info_mapping0 _mapping_set1C={1, {0,0}, {0}, {1}, {1}, {1}};
 static vorbis_info_mode _mode_set0C={0,0,0,0};
 static vorbis_info_mode _mode_set1C={1,0,0,1};
@@ -236,7 +272,7 @@
   /* smallblock, largeblock */
   {256, 2048}, 
   /* modes,maps,times,floors,residues,books,psys */
-  2,          2,    1,     2,       2,   14,   2,
+  2,          2,    1,     2,       2,   20,   2,
   /* modes */
   {&_mode_set0C,&_mode_set1C},
   /* maps */
@@ -248,8 +284,10 @@
   /* residue */
   {0,0},{&_residue_set0C,&_residue_set1C},
   /* books */
-  {&_vq_book_lsp12_0,      /* 0 */
-   &_vq_book_lsp30_0,      /* 1 */
+  {&_vq_book_lsp12_0,       /* 0 */
+   &_vq_book_lsp12_1,       /* 1 */
+   &_vq_book_lsp30_0,      /* 2 */
+   &_vq_book_lsp30_1,      /* 3 */
 
    &_huff_book_res0_192_128aux,
    &_huff_book_res0_192_1024aux,
@@ -265,12 +303,20 @@
    &_vq_book_res0_192_1024_3,
    &_vq_book_res0_192_1024_4,
    &_vq_book_res0_192_1024_5,
+   &_vq_book_res0_192_1024_6,
+   &_vq_book_res0_192_1024_7,
+   &_vq_book_res0_192_1024_8,
+   &_vq_book_res0_192_1024_9,
 
   },
   /* psy */
-  {&_psy_set_C0,&_psy_set_C1},
+  {&_psy_set_C0,&_psy_set_C},
   /* thresh sample period, preecho clamp trigger threshhold, range, minenergy */
-  256, 24.f, 6.f, -96.f
+  256, 26.f, -26.f, -96.f,
+
+  -15., 
+
+  0,
 };
 
 #define PREDEF_INFO_MAX 0

1.8       +211 -116  vorbis/lib/modes/mode_D.h

Index: mode_D.h
===================================================================
RCS file: /usr/local/cvsroot/vorbis/lib/modes/mode_D.h,v
retrieving revision 1.7
retrieving revision 1.8
diff -u -r1.7 -r1.8
--- mode_D.h	2000/12/21 21:04:47	1.7
+++ mode_D.h	2001/01/22 01:38:50	1.8
@@ -12,12 +12,10 @@
  ********************************************************************
 
  function: predefined encoding modes
- last mod: $Id: mode_D.h,v 1.7 2000/12/21 21:04:47 xiphmont Exp $
+ last mod: $Id: mode_D.h,v 1.8 2001/01/22 01:38:50 xiphmont Exp $
 
  ********************************************************************/
 
-/* this is really a freeform VBR mode.  It roughly centers on 256 kbps stereo */
-
 #ifndef _V_MODES_D_H_
 #define _V_MODES_D_H_
 
@@ -27,6 +25,8 @@
 
 #include "books/lsp12_0.vqh"
 #include "books/lsp30_0.vqh"
+#include "books/lsp12_1.vqh"
+#include "books/lsp30_1.vqh"
 
 #include "books/res0_256_128aux.vqh"
 #include "books/res0_256_1024aux.vqh"
@@ -42,141 +42,228 @@
 #include "books/res0_256_1024_3.vqh"
 #include "books/res0_256_1024_4.vqh"
 #include "books/res0_256_1024_5.vqh"
+#include "books/res0_256_1024_6.vqh"
+#include "books/res0_256_1024_7.vqh"
+
 
-static vorbis_info_psy _psy_set_D0 ={
+static vorbis_info_psy _psy_set_D0={
   1,/*athp*/
   0,/*decayp*/
-  1,/*smoothp*/
-  0,.1f,
 
-  -100.f,
-  -140.f,
+  -100.,
+  -140.,
+
+  8,
 
   /*     0  1  2   3   4   5   6   7   8   9  10  11  12  13  14  15   16   */
   /* x: 63 88 125 175 250 350 500 700 1k 1.4k 2k 2.8k 4k 5.6k 8k 11.5k 16k Hz */
   /* y: 0 10 20 30 40 50 60 70 80 90 100 dB */
 
-  0,/* tonemaskp */
+   1,/* tonemaskp */
   /*  0   10   20   30   40   50   60   70   80   90   100 */
-  {{0}},
+  {
+   {-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.}, /*63*/
+   {-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.}, /*88*/
+   {-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.}, /*125*/
+   {-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.}, /*175*/
+   {-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.}, /*250*/
+   {-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.}, /*350*/
+   {-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.}, /*500*/
+   {-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.}, /*700*/
+
+   {-30.,-35.,-35.,-40.,-40.,-50.,-60.,-70.,-80.,-90.,-100.}, /*1000*/
+   {-30.,-35.,-35.,-40.,-40.,-50.,-60.,-70.,-80.,-90.,-100.}, /*1400*/
+   {-40.,-40.,-40.,-40.,-40.,-50.,-60.,-70.,-80.,-90.,-100.}, /*2000*/
+   {-40.,-40.,-40.,-40.,-40.,-50.,-60.,-70.,-80.,-90.,-100.}, /*2800*/
+   {-30.,-35.,-35.,-40.,-40.,-50.,-60.,-70.,-80.,-90.,-100.}, /*4000*/
+   {-30.,-35.,-35.,-40.,-40.,-50.,-60.,-70.,-80.,-90.,-100.}, /*5600*/
+   {-30.,-35.,-35.,-40.,-40.,-50.,-60.,-70.,-80.,-90.,-100.}, /*8000*/
+   {-30.,-35.,-35.,-40.,-40.,-50.,-60.,-70.,-80.,-90.,-100.}, /*11500*/
+   {-30.,-35.,-35.,-40.,-40.,-50.,-60.,-70.,-80.,-90.,-100.}, /*16000*/
+  },
 
   1,/* peakattp */
-  {{-14.f,-16.f,-18.f,-19.f,-20.f,-21.f,-22.f,-22.f,-28.f,-28.f,-28.f}, /*63*/
-   {-14.f,-16.f,-18.f,-19.f,-20.f,-21.f,-22.f,-22.f,-28.f,-28.f,-28.f}, /*88*/
-   {-14.f,-16.f,-18.f,-19.f,-20.f,-21.f,-22.f,-22.f,-28.f,-28.f,-28.f}, /*125*/
-   {-14.f,-16.f,-18.f,-19.f,-20.f,-21.f,-22.f,-22.f,-28.f,-28.f,-28.f}, /*175*/
-   {-14.f,-16.f,-18.f,-19.f,-20.f,-21.f,-22.f,-22.f,-28.f,-28.f,-28.f}, /*250*/
-   {-14.f,-16.f,-18.f,-19.f,-20.f,-21.f,-22.f,-22.f,-28.f,-28.f,-28.f}, /*350*/
-   {-14.f,-16.f,-18.f,-19.f,-20.f,-21.f,-22.f,-22.f,-28.f,-28.f,-28.f}, /*500*/
-   {-14.f,-16.f,-18.f,-19.f,-20.f,-21.f,-22.f,-22.f,-22.f,-22.f,-22.f}, /*700*/
-   {-14.f,-16.f,-18.f,-19.f,-20.f,-21.f,-22.f,-22.f,-22.f,-22.f,-22.f}, /*1000*/
-   {-14.f,-16.f,-18.f,-19.f,-20.f,-21.f,-22.f,-22.f,-22.f,-22.f,-22.f}, /*1400*/
-   {-14.f,-16.f,-18.f,-19.f,-20.f,-21.f,-22.f,-22.f,-22.f,-22.f,-22.f}, /*2000*/
-   {-14.f,-16.f,-18.f,-19.f,-20.f,-21.f,-22.f,-22.f,-22.f,-22.f,-22.f}, /*2800*/
-   {-14.f,-16.f,-18.f,-19.f,-20.f,-21.f,-22.f,-22.f,-22.f,-22.f,-22.f}, /*4000*/
-   {-14.f,-16.f,-18.f,-19.f,-20.f,-21.f,-22.f,-22.f,-22.f,-22.f,-22.f}, /*5600*/
-   {-14.f,-16.f,-18.f,-19.f,-20.f,-21.f,-22.f,-22.f,-22.f,-22.f,-22.f}, /*8000*/
-   {-14.f,-16.f,-18.f,-19.f,-20.f,-21.f,-22.f,-22.f,-22.f,-22.f,-22.f}, /*11500*/
-   {-14.f,-16.f,-18.f,-19.f,-20.f,-21.f,-22.f,-22.f,-22.f,-22.f,-22.f}, /*16000*/
-  },
-
-  0,/*noisemaskp */
-  /*  0   10   20   30   40   50   60    70    80    90   100 */
-  {{0}},
- 
-  110.f,
+  {{-20.f,-20.f,-20.f,-20.f,-20.f,-21.f,-28.f,-28.f,-28.f,-28.f,-28.f},/*63*/
+   {-20.f,-20.f,-20.f,-20.f,-20.f,-21.f,-28.f,-28.f,-28.f,-28.f,-28.f},/*88*/
+   {-20.f,-20.f,-20.f,-20.f,-20.f,-21.f,-28.f,-28.f,-28.f,-28.f,-28.f},/*125*/
+   {-20.f,-20.f,-20.f,-20.f,-20.f,-20.f,-20.f,-24.f,-28.f,-28.f,-28.f},/*175*/
+   {-20.f,-20.f,-20.f,-20.f,-20.f,-20.f,-20.f,-24.f,-28.f,-28.f,-28.f},/*250*/
+   {-20.f,-20.f,-20.f,-20.f,-20.f,-20.f,-20.f,-24.f,-28.f,-28.f,-28.f},/*350*/
+   {-20.f,-20.f,-20.f,-20.f,-20.f,-20.f,-20.f,-24.f,-28.f,-28.f,-28.f},/*500*/
+   {-20.f,-20.f,-20.f,-20.f,-20.f,-20.f,-20.f,-24.f,-28.f,-28.f,-28.f},/*700*/
+   {-20.f,-20.f,-20.f,-20.f,-20.f,-20.f,-20.f,-24.f,-28.f,-28.f,-28.f},/*1000*/
+   {-20.f,-20.f,-20.f,-20.f,-20.f,-20.f,-20.f,-24.f,-28.f,-28.f,-28.f},/*1400*/
+   {-20.f,-20.f,-20.f,-20.f,-20.f,-20.f,-20.f,-24.f,-28.f,-28.f,-28.f},/*2000*/
+   {-20.f,-20.f,-20.f,-20.f,-20.f,-20.f,-20.f,-24.f,-28.f,-28.f,-28.f},/*2800*/
+   {-20.f,-20.f,-20.f,-20.f,-20.f,-20.f,-20.f,-24.f,-28.f,-28.f,-28.f},/*4000*/
+
+   {-20.f,-20.f,-20.f,-20.f,-20.f,-20.f,-20.f,-20.f,-28.f,-28.f,-28.f},/*5600*/
+   {-20.f,-20.f,-20.f,-20.f,-20.f,-20.f,-20.f,-20.f,-28.f,-28.f,-28.f},/*8000*/
+   {-20.f,-20.f,-20.f,-20.f,-20.f,-20.f,-20.f,-20.f,-28.f,-28.f,-28.f},/*11500*/
+   {-20.f,-20.f,-20.f,-20.f,-20.f,-20.f,-20.f,-20.f,-20.f,-24.f,-28.f},/*16000*/
+  },
+
+  1,/*noisemaskp */
+  -15.f,  /* suppress any noise curve over maxspec+n */
+  .5f,   /* low window */
+  .5f,   /* high window */
+  5,
+  5,
+  {.000f, 0.f,/*63*/
+   .000f, 0.f,/*88*/
+   .000f, 0.f,/*125*/
+   .000f, 0.f,/*175*/
+   .000f, 0.f,/*250*/
+   .000f, 0.f,/*350*/
+   .000f, 0.f,/*500*/
+   .000f, 0.f,/*700*/
+   .000f,  0.f,/*1000*/
+   .000f,  0.f,/*1400*/
+   .000f,  0.f,/*2000*/
+   .600f, -6.f,/*2800*/
+   .600f, -6.f,/*4000*/
+   .700f, -6.f,/*5600*/
+   .850f, -6.f,/*8000*/
+   .850f, -5.f,/*11500*/
+   .850f, -4.f,/*16000*/
+  },
+
+  105.f,  /* even decade + 5 is important; saves an rint() later in a
+            tight loop) */
+  -30.,
 
-  -0.f, -.004f   /* attack/decay control */
+  -0., -.004   /* attack/decay control */
 };
-static vorbis_info_psy _psy_set_D1 ={
+
+static vorbis_info_psy _psy_set_D={
   1,/*athp*/
   0,/*decayp*/
-  1,/*smoothp*/
-  0,.1f,
 
   -100.f,
   -140.f,
 
+  8,
+
   /*     0  1  2   3   4   5   6   7   8   9  10  11  12  13  14  15   16   */
   /* x: 63 88 125 175 250 350 500 700 1k 1.4k 2k 2.8k 4k 5.6k 8k 11.5k 16k Hz */
   /* y: 0 10 20 30 40 50 60 70 80 90 100 dB */
-
-  1,/* tonemaskp */
+   1,/* tonemaskp */
   /*  0   10   20   30   40   50   60   70   80   90   100 */
-  {{-40.f,-40.f,-40.f,-45.f,-45.f,-55.f,-65.f,-75.f,-85.f,-95.f,-105.f}, /*63*/
-   {-40.f,-40.f,-40.f,-45.f,-45.f,-55.f,-65.f,-75.f,-85.f,-95.f,-105.f}, /*88*/
-   {-40.f,-40.f,-40.f,-45.f,-45.f,-55.f,-65.f,-75.f,-85.f,-95.f,-105.f}, /*125*/
-   {-40.f,-40.f,-40.f,-45.f,-45.f,-55.f,-65.f,-75.f,-85.f,-95.f,-105.f}, /*175*/
-   {-40.f,-40.f,-40.f,-45.f,-45.f,-55.f,-65.f,-75.f,-85.f,-95.f,-105.f}, /*250*/
-   {-40.f,-40.f,-40.f,-45.f,-45.f,-55.f,-65.f,-75.f,-85.f,-95.f,-105.f}, /*350*/
-   {-40.f,-40.f,-40.f,-45.f,-45.f,-55.f,-65.f,-75.f,-85.f,-95.f,-105.f}, /*500*/
-   {-40.f,-40.f,-40.f,-45.f,-45.f,-55.f,-65.f,-75.f,-85.f,-95.f,-105.f}, /*700*/
-   {-40.f,-40.f,-40.f,-45.f,-45.f,-55.f,-65.f,-75.f,-85.f,-95.f,-105.f}, /*1000*/
-   {-40.f,-40.f,-40.f,-45.f,-45.f,-55.f,-65.f,-75.f,-85.f,-95.f,-105.f}, /*1400*/
-   {-40.f,-40.f,-40.f,-45.f,-45.f,-55.f,-65.f,-75.f,-85.f,-95.f,-105.f}, /*2000*/
-   {-40.f,-40.f,-40.f,-45.f,-45.f,-55.f,-65.f,-75.f,-85.f,-95.f,-105.f}, /*2800*/
-   {-40.f,-40.f,-40.f,-45.f,-45.f,-55.f,-65.f,-75.f,-85.f,-95.f,-105.f}, /*4000*/
-   {-40.f,-40.f,-40.f,-45.f,-45.f,-55.f,-65.f,-75.f,-85.f,-95.f,-105.f}, /*5600*/
-   {-40.f,-40.f,-40.f,-45.f,-45.f,-55.f,-65.f,-75.f,-85.f,-95.f,-105.f}, /*8000*/
-   {-40.f,-40.f,-40.f,-45.f,-45.f,-55.f,-65.f,-75.f,-85.f,-95.f,-105.f}, /*11500*/
-   {-40.f,-40.f,-40.f,-45.f,-45.f,-55.f,-65.f,-75.f,-85.f,-95.f,-105.f}, /*16000*/
+  {
+   {-999.f,-999.f,-999.f,-999.f,-999.f,-999.f,-999.f,-999.f,-999.f,-999.f,-999.f}, /*63*/
+   {-999.f,-999.f,-999.f,-999.f,-999.f,-999.f,-999.f,-999.f,-999.f,-999.f,-999.f}, /*88*/
+   {-999.f,-999.f,-999.f,-999.f,-999.f,-999.f,-999.f,-999.f,-999.f,-999.f,-999.f}, /*125*/
+   //   {-99.,-99.,-99.,-99.,-99.,-99.,-99.,-99.,-99.,-99.,-100.}, /*175*/
+   //   {-99.,-99.,-99.,-99.,-99.,-99.,-99.,-99.,-99.,-99.,-100.}, /*250*/
+   //   {-99.,-99.,-99.,-99.,-99.,-99.,-99.,-99.,-99.,-99.,-100.}, /*350*/
+   //   {-99.,-99.,-99.,-99.,-99.,-99.,-99.,-99.,-99.,-99.,-100.}, /*500*/
+   //   {-99.,-99.,-99.,-99.,-99.,-99.,-99.,-99.,-99.,-99.,-100.}, /*700*/
+
+   //   {-30.,-35.,-35.,-40.,-40.,-50.,-60.,-70.,-80.,-90.,-100.}, /*63*/
+   //   {-30.,-35.,-35.,-40.,-40.,-50.,-60.,-70.,-80.,-90.,-100.}, /*88*/
+   //   {-30.,-35.,-35.,-40.,-40.,-50.,-60.,-70.,-80.,-90.,-100.}, /*125*/
+   {-40.f,-40.f,-40.f,-40.f,-40.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f}, /*175*/
+   {-40.f,-40.f,-40.f,-40.f,-40.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f}, /*250*/
+   {-40.f,-40.f,-40.f,-40.f,-40.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f}, /*350*/
+   {-40.f,-40.f,-40.f,-40.f,-40.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f}, /*500*/
+   {-40.f,-40.f,-40.f,-40.f,-40.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f}, /*700*/
+
+   {-40.f,-40.f,-40.f,-40.f,-40.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f}, /*1000*/
+   {-40.f,-40.f,-40.f,-40.f,-40.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f}, /*1400*/
+   {-40.f,-40.f,-40.f,-40.f,-40.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f}, /*2000*/
+   {-40.f,-40.f,-40.f,-40.f,-40.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f}, /*2800*/
+   {-40.f,-40.f,-40.f,-40.f,-40.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f}, /*4000*/
+   {-40.f,-40.f,-40.f,-40.f,-40.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f}, /*5600*/
+
+   {-30.f,-40.f,-40.f,-40.f,-40.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f}, /*8000*/
+   {-30.f,-40.f,-40.f,-40.f,-40.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f}, /*11500*/
+   {-30.f,-35.f,-40.f,-40.f,-40.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f}, /*16000*/
+
   },
 
-  1,/* peakattp */
-  {{-14.f,-16.f,-18.f,-19.f,-20.f,-21.f,-22.f,-22.f,-28.f,-28.f,-28.f}, /*63*/
-   {-14.f,-16.f,-18.f,-19.f,-20.f,-21.f,-22.f,-22.f,-28.f,-28.f,-28.f}, /*88*/
-   {-14.f,-16.f,-18.f,-19.f,-20.f,-21.f,-22.f,-22.f,-28.f,-28.f,-28.f}, /*125*/
-   {-14.f,-16.f,-18.f,-19.f,-20.f,-21.f,-22.f,-22.f,-28.f,-28.f,-28.f}, /*175*/
-   {-14.f,-16.f,-18.f,-19.f,-20.f,-21.f,-22.f,-22.f,-28.f,-28.f,-28.f}, /*250*/
-   {-14.f,-16.f,-18.f,-19.f,-20.f,-21.f,-22.f,-22.f,-28.f,-28.f,-28.f}, /*350*/
-   {-14.f,-16.f,-18.f,-19.f,-20.f,-21.f,-22.f,-22.f,-28.f,-28.f,-28.f}, /*500*/
-   {-14.f,-16.f,-18.f,-19.f,-20.f,-21.f,-22.f,-22.f,-22.f,-22.f,-22.f}, /*700*/
-   {-14.f,-16.f,-18.f,-19.f,-20.f,-21.f,-22.f,-22.f,-22.f,-22.f,-22.f}, /*1000*/
-   {-14.f,-16.f,-18.f,-19.f,-20.f,-21.f,-22.f,-22.f,-22.f,-22.f,-22.f}, /*1400*/
-   {-14.f,-16.f,-18.f,-19.f,-20.f,-21.f,-22.f,-22.f,-22.f,-22.f,-22.f}, /*2000*/
-   {-14.f,-16.f,-18.f,-19.f,-20.f,-21.f,-22.f,-22.f,-22.f,-22.f,-22.f}, /*2800*/
-   {-14.f,-16.f,-18.f,-19.f,-20.f,-21.f,-22.f,-22.f,-22.f,-22.f,-22.f}, /*4000*/
-   {-14.f,-16.f,-18.f,-19.f,-20.f,-21.f,-22.f,-22.f,-22.f,-22.f,-22.f}, /*5600*/
-   {-14.f,-16.f,-18.f,-19.f,-20.f,-21.f,-22.f,-22.f,-22.f,-22.f,-22.f}, /*8000*/
-   {-14.f,-16.f,-18.f,-19.f,-20.f,-21.f,-22.f,-22.f,-22.f,-22.f,-22.f}, /*11500*/
-   {-14.f,-16.f,-18.f,-19.f,-20.f,-21.f,-22.f,-22.f,-22.f,-22.f,-22.f}, /*16000*/
-  },
-
-  0,/*noisemaskp */
-  /*  0   10   20   30   40   50   60    70    80    90   100 */
-  {{0}},
+  1,
+  {{-20.f,-20.f,-20.f,-24.f,-24.f,-24.f,-28.f,-28.f,-28.f,-28.f,-28.f},/*63*/
+   {-20.f,-20.f,-20.f,-24.f,-24.f,-24.f,-28.f,-28.f,-28.f,-28.f,-28.f},/*88*/
+   {-20.f,-20.f,-20.f,-20.f,-24.f,-24.f,-28.f,-28.f,-28.f,-28.f,-28.f},/*125*/
+   {-20.f,-20.f,-20.f,-20.f,-24.f,-24.f,-24.f,-24.f,-28.f,-28.f,-28.f},/*175*/
+   {-20.f,-20.f,-20.f,-20.f,-20.f,-20.f,-24.f,-24.f,-28.f,-28.f,-28.f},/*250*/
+   {-20.f,-20.f,-20.f,-20.f,-20.f,-20.f,-24.f,-24.f,-28.f,-28.f,-28.f},/*350*/
+   {-20.f,-20.f,-20.f,-20.f,-20.f,-20.f,-28.f,-24.f,-28.f,-28.f,-28.f},/*500*/
+   {-20.f,-20.f,-20.f,-20.f,-20.f,-20.f,-24.f,-24.f,-28.f,-28.f,-28.f},/*700*/
+   {-20.f,-20.f,-20.f,-20.f,-20.f,-20.f,-24.f,-24.f,-28.f,-28.f,-28.f},/*1000*/
+   {-20.f,-20.f,-20.f,-20.f,-24.f,-24.f,-24.f,-24.f,-28.f,-28.f,-28.f},/*1400*/
+   {-20.f,-20.f,-20.f,-20.f,-24.f,-24.f,-24.f,-24.f,-28.f,-28.f,-28.f},/*2000*/
+   {-20.f,-20.f,-20.f,-20.f,-24.f,-24.f,-24.f,-24.f,-28.f,-28.f,-28.f},/*2800*/
+   {-20.f,-20.f,-20.f,-20.f,-22.f,-20.f,-24.f,-24.f,-28.f,-28.f,-28.f},/*4000*/
+   {-20.f,-20.f,-20.f,-20.f,-22.f,-20.f,-22.f,-24.f,-28.f,-28.f,-28.f},/*5600*/
+   {-20.f,-20.f,-20.f,-20.f,-20.f,-20.f,-22.f,-24.f,-28.f,-28.f,-28.f},/*8000*/
+   {-20.f,-20.f,-20.f,-20.f,-20.f,-20.f,-22.f,-24.f,-28.f,-28.f,-28.f},/*11500*/
+   {-20.f,-20.f,-20.f,-20.f,-20.f,-20.f,-22.f,-24.f,-28.f,-28.f,-28.f},/*16000*/
+  },
+
+  1,/*noisemaskp */
+  -15.f,  /* suppress any noise curve over maxspec+n */
+  .5f,   /* low window */
+  .5f,   /* high window */
+  25,
+  25,
+  {.000f, 0.f, /*63*/
+   .000f, 0.f, /*88*/
+   .000f, 0.f, /*125*/
+   .000f, 0.f, /*175*/
+   .000f, 0.f, /*250*/
+   .000f, 0.f, /*350*/
+   .000f, 0.f, /*500*/
+   .000f, 0.f, /*700*/
+   .000f, 0.f, /*1000*/
+   .000f, 0.f, /*1400*/
+   .000f, 0.f, /*2000*/
+   .000f, 0.f, /*2800*/
+   .000f, 0.f, /*4000*/
+   .500f, -12.f, /*5600*/
+   .500f, -12.f, /*8000*/
+   .500f, -10.f, /*11500*/
+   .500f, -10.f, /*16000*/
+  },
  
-  110.f,
+  105.f,  /* even decade + 5 is important; saves an rint() later in a
+            tight loop) */
+  -32.,
+
+  -0.f, -.004f,   /* attack/decay control */
 
-  -0.f, -.004f   /* attack/decay control */
 };
 
 /* with GNUisms, this could be short and readable. Oh well */
-static vorbis_info_time0 _time_set0_256={0};
-static vorbis_info_floor0 _floor_set0_256={12, 44100,  64, 12,150, 1, {0} };
-static vorbis_info_floor0 _floor_set1_256={30, 44100, 256, 12,150, 1, {1} };
-static vorbis_info_residue0 _residue_set0_256={0,128, 32,6,2,
-					   {0,1,1,1,1,1},
-					    {4,5,6,7,8},
-
-					   {0,9999,9999,9999,9999},
-					   {99.f,2.5f,6.5f,15.5f,29.5f},
-					   {5,5,5,5,5},
-					   {99,99,99,99,99}};
-
-static vorbis_info_residue0 _residue_set1_256={0,1024, 32,6,3,
-					   {0,1,1,1,1,1},
-					    {9,10,11,12,13},
+static vorbis_info_time0 _time_set0D={0};
+static vorbis_info_floor0 _floor_set0D={12, 44100,  64, 10,130, 2, {0,1},
+                                        0.199f, .285f};
+static vorbis_info_floor0 _floor_set1D={30, 44100, 256, 12,150, 2, {2,3}, 
+                                        .082f, .126f};
+static vorbis_info_residue0 _residue_set0D={0,128,16,6,4,
+					    {0,1,1,1,1,1},
+					    {6,7,8,9,10},
+					    
+					    {0,99999,9999,9999,9999},
+					    {999.f,1.5f,2.5f,6.5f,40.5f},
+					    {4,4,4,4,4},
+					    {99,99,99,99,99}};
+
+static vorbis_info_residue0 _residue_set1D={0,1024, 32,8,5,
+					    {0,1,1,1,1,1,1,1,1,1},
+					    {11,12,13,14,15,16,17,18,19},
                                            
-					   {0,9999,9999,9999,9999},
-					   {99.f,2.5f,6.5f,15.5f,29.5f},
-					   {5,5,5,5,5},
-					   {99,99,99,99,99}};
-
-static vorbis_info_mapping0 _mapping_set0_256={1, {0,0}, {0}, {0}, {0}, {0}};
-static vorbis_info_mapping0 _mapping_set1_256={1, {0,0}, {0}, {1}, {1}, {1}};
-static vorbis_info_mode _mode_set0_256={0,0,0,0};
-static vorbis_info_mode _mode_set1_256={1,0,0,1};
+					    {0,9999,9999,60,9999,
+					     9999,9999},
+					    {999.f,2.5f,4.5f,10.5f,10.5f,
+					     20.5f,40.f},
+					    {5,5,5,5,5,5,5},
+					    {99,99,99,99,99,99,99,99,99}};
+
+static vorbis_info_mapping0 _mapping_set0D={1, {0,0}, {0}, {0}, {0}, {0}};
+static vorbis_info_mapping0 _mapping_set1D={1, {0,0}, {0}, {1}, {1}, {1}};
+static vorbis_info_mode _mode_set0D={0,0,0,0};
+static vorbis_info_mode _mode_set1D={1,0,0,1};
 
 /* CD quality stereo, no channel coupling */
 codec_setup_info info_D={
@@ -184,20 +271,22 @@
   /* smallblock, largeblock */
   {256, 2048}, 
   /* modes,maps,times,floors,residues,books,psys */
-  2,          2,    1,     2,       2,   14,   2,
+  2,          2,    1,     2,       2,   18,   2,
   /* modes */
-  {&_mode_set0_256,&_mode_set1_256},
+  {&_mode_set0D,&_mode_set1D},
   /* maps */
-  {0,0},{&_mapping_set0_256,&_mapping_set1_256},
+  {0,0},{&_mapping_set0D,&_mapping_set1D},
   /* times */
-  {0,0},{&_time_set0_256},
+  {0,0},{&_time_set0D},
   /* floors */
-  {0,0},{&_floor_set0_256,&_floor_set1_256},
+  {0,0},{&_floor_set0D,&_floor_set1D},
   /* residue */
-  {0,0},{&_residue_set0_256,&_residue_set1_256},
+  {0,0},{&_residue_set0D,&_residue_set1D},
   /* books */
-  {&_vq_book_lsp12_0,      /* 0 */
-   &_vq_book_lsp30_0,      /* 1 */
+  {&_vq_book_lsp12_0,       /* 0 */
+   &_vq_book_lsp12_1,       /* 1 */
+   &_vq_book_lsp30_0,      /* 2 */
+   &_vq_book_lsp30_1,      /* 3 */
 
    &_huff_book_res0_256_128aux,
    &_huff_book_res0_256_1024aux,
@@ -213,12 +302,18 @@
    &_vq_book_res0_256_1024_3,
    &_vq_book_res0_256_1024_4,
    &_vq_book_res0_256_1024_5,
+   &_vq_book_res0_256_1024_6,
+   &_vq_book_res0_256_1024_7,
 
   },
   /* psy */
-  {&_psy_set_D0,&_psy_set_D1},
+  {&_psy_set_D0,&_psy_set_D},
   /* thresh sample period, preecho clamp trigger threshhold, range, minenergy */
-  256, 24.f, 6.f, -96.f
+  256, 20.f, -20.f, -96.f,
+
+  -15., 
+
+  0,
 };
 
 #define PREDEF_INFO_MAX 0

1.5       +248 -93   vorbis/lib/modes/mode_E.h

Index: mode_E.h
===================================================================
RCS file: /usr/local/cvsroot/vorbis/lib/modes/mode_E.h,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -r1.4 -r1.5
--- mode_E.h	2000/12/21 21:04:47	1.4
+++ mode_E.h	2001/01/22 01:38:50	1.5
@@ -12,12 +12,10 @@
  ********************************************************************
 
  function: predefined encoding modes
- last mod: $Id: mode_E.h,v 1.4 2000/12/21 21:04:47 xiphmont Exp $
+ last mod: $Id: mode_E.h,v 1.5 2001/01/22 01:38:50 xiphmont Exp $
 
  ********************************************************************/
 
-/* this is really a freeform VBR mode.  It roughly centers on 350 kbps stereo */
-
 #ifndef _V_MODES_E_H_
 #define _V_MODES_E_H_
 
@@ -27,94 +25,243 @@
 
 #include "books/lsp12_0.vqh"
 #include "books/lsp30_0.vqh"
+#include "books/lsp12_1.vqh"
+#include "books/lsp30_1.vqh"
+
+#include "books/res0_256_128aux.vqh"
+#include "books/res0_256_1024aux.vqh"
 
-#include "books/res0_350_128aux.vqh"
-#include "books/res0_350_1024aux.vqh"
+#include "books/res0_256_128_1.vqh"
+#include "books/res0_256_128_2.vqh"
+#include "books/res0_256_128_3.vqh"
+#include "books/res0_256_128_4.vqh"
+#include "books/res0_256_128_5.vqh"
+
+#include "books/res0_256_1024_1.vqh"
+#include "books/res0_256_1024_2.vqh"
+#include "books/res0_256_1024_3.vqh"
+#include "books/res0_256_1024_4.vqh"
+#include "books/res0_256_1024_5.vqh"
+#include "books/res0_256_1024_6.vqh"
+#include "books/res0_256_1024_7.vqh"
 
-#include "books/res0_350_128_1.vqh"
-#include "books/res0_350_128_2.vqh"
-#include "books/res0_350_128_3.vqh"
-#include "books/res0_350_128_4.vqh"
-#include "books/res0_350_128_5.vqh"
-
-#include "books/res0_350_1024_1.vqh"
-#include "books/res0_350_1024_2.vqh"
-#include "books/res0_350_1024_3.vqh"
-#include "books/res0_350_1024_4.vqh"
-#include "books/res0_350_1024_5.vqh"
 
-static vorbis_info_psy _psy_set_E ={
+static vorbis_info_psy _psy_set_E0={
   1,/*athp*/
   0,/*decayp*/
-  1,/*smoothp*/
-  0,.1f,
 
-  -140.f,
-  -180.f,
+  -100.,
+  -140.,
+
+  8,
 
   /*     0  1  2   3   4   5   6   7   8   9  10  11  12  13  14  15   16   */
   /* x: 63 88 125 175 250 350 500 700 1k 1.4k 2k 2.8k 4k 5.6k 8k 11.5k 16k Hz */
   /* y: 0 10 20 30 40 50 60 70 80 90 100 dB */
 
-  0,/* tonemaskp */
+   1,/* tonemaskp */
   /*  0   10   20   30   40   50   60   70   80   90   100 */
-  {{0}},
+  {
+   {-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.}, /*63*/
+   {-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.}, /*88*/
+   {-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.}, /*125*/
+   {-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.}, /*175*/
+   {-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.}, /*250*/
+   {-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.}, /*350*/
+   {-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.}, /*500*/
+   {-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.,-999.}, /*700*/
+
+   {-35.,-35.,-35.,-45.,-45.,-55.,-65.,-75.,-85.,-95.,-105.}, /*1000*/
+   {-35.,-35.,-35.,-45.,-45.,-55.,-65.,-75.,-85.,-95.,-105.}, /*1400*/
+   {-45.,-45.,-45.,-45.,-45.,-55.,-65.,-75.,-85.,-95.,-105.}, /*2000*/
+   {-45.,-45.,-45.,-45.,-45.,-55.,-65.,-75.,-85.,-95.,-105.}, /*2800*/
+   {-35.,-35.,-35.,-45.,-45.,-55.,-65.,-75.,-85.,-95.,-105.}, /*4000*/
+   {-35.,-35.,-35.,-45.,-45.,-55.,-65.,-75.,-85.,-95.,-105.}, /*5600*/
+   {-35.,-35.,-35.,-45.,-45.,-55.,-65.,-75.,-85.,-95.,-105.}, /*8000*/
+   {-35.,-35.,-35.,-45.,-45.,-55.,-65.,-75.,-85.,-95.,-105.}, /*11500*/
+   {-35.,-35.,-35.,-45.,-45.,-55.,-65.,-75.,-85.,-95.,-105.}, /*16000*/
+  },
 
   1,/* peakattp */
-  {{-14.f,-16.f,-18.f,-19.f,-20.f,-21.f,-22.f,-22.f,-28.f,-28.f,-30.f}, /*63*/
-   {-14.f,-16.f,-18.f,-19.f,-20.f,-21.f,-22.f,-22.f,-28.f,-28.f,-30.f}, /*88*/
-   {-14.f,-16.f,-18.f,-19.f,-20.f,-21.f,-22.f,-22.f,-28.f,-28.f,-30.f}, /*125*/
-   {-14.f,-16.f,-18.f,-19.f,-20.f,-21.f,-22.f,-22.f,-28.f,-28.f,-30.f}, /*175*/
-   {-14.f,-16.f,-18.f,-19.f,-20.f,-21.f,-22.f,-22.f,-28.f,-28.f,-30.f}, /*250*/
-   {-14.f,-16.f,-18.f,-19.f,-20.f,-21.f,-22.f,-22.f,-28.f,-28.f,-30.f}, /*350*/
-   {-14.f,-16.f,-18.f,-19.f,-20.f,-21.f,-22.f,-22.f,-28.f,-28.f,-30.f}, /*500*/
-   {-14.f,-16.f,-18.f,-19.f,-20.f,-21.f,-22.f,-22.f,-22.f,-24.f,-28.f}, /*700*/
-   {-14.f,-16.f,-18.f,-19.f,-20.f,-21.f,-22.f,-22.f,-22.f,-24.f,-28.f}, /*1000*/
-   {-14.f,-16.f,-18.f,-19.f,-20.f,-21.f,-22.f,-22.f,-22.f,-24.f,-28.f}, /*1400*/
-   {-14.f,-16.f,-18.f,-19.f,-20.f,-21.f,-22.f,-22.f,-22.f,-24.f,-28.f}, /*2000*/
-   {-14.f,-16.f,-18.f,-19.f,-20.f,-21.f,-22.f,-22.f,-22.f,-24.f,-28.f}, /*2800*/
-   {-14.f,-16.f,-18.f,-19.f,-20.f,-21.f,-22.f,-22.f,-22.f,-24.f,-28.f}, /*4000*/
-   {-14.f,-16.f,-18.f,-19.f,-20.f,-21.f,-22.f,-22.f,-22.f,-24.f,-28.f}, /*5600*/
-   {-14.f,-16.f,-18.f,-19.f,-20.f,-21.f,-22.f,-22.f,-22.f,-24.f,-28.f}, /*8000*/
-   {-14.f,-16.f,-18.f,-19.f,-20.f,-21.f,-22.f,-22.f,-22.f,-24.f,-28.f}, /*11500*/
-   {-14.f,-16.f,-18.f,-19.f,-20.f,-21.f,-22.f,-22.f,-22.f,-24.f,-28.f}, /*16000*/
+  {{-24.f,-24.f,-24.f,-24.f,-24.f,-24.f,-28.f,-28.f,-28.f,-28.f,-28.f},/*63*/
+   {-24.f,-24.f,-24.f,-24.f,-24.f,-24.f,-28.f,-28.f,-28.f,-28.f,-28.f},/*88*/
+   {-24.f,-24.f,-24.f,-24.f,-24.f,-24.f,-28.f,-28.f,-28.f,-28.f,-28.f},/*125*/
+   {-24.f,-24.f,-24.f,-24.f,-24.f,-24.f,-24.f,-24.f,-28.f,-28.f,-28.f},/*175*/
+   {-24.f,-24.f,-24.f,-24.f,-24.f,-24.f,-24.f,-24.f,-28.f,-28.f,-28.f},/*250*/
+   {-24.f,-24.f,-24.f,-24.f,-24.f,-24.f,-24.f,-24.f,-28.f,-28.f,-28.f},/*350*/
+   {-24.f,-24.f,-24.f,-24.f,-24.f,-24.f,-24.f,-24.f,-28.f,-28.f,-28.f},/*500*/
+   {-24.f,-24.f,-24.f,-24.f,-24.f,-24.f,-24.f,-24.f,-28.f,-28.f,-28.f},/*700*/
+   {-24.f,-24.f,-24.f,-24.f,-24.f,-24.f,-24.f,-24.f,-28.f,-28.f,-28.f},/*1000*/
+   {-24.f,-24.f,-24.f,-24.f,-24.f,-24.f,-24.f,-24.f,-28.f,-28.f,-28.f},/*1400*/
+   {-24.f,-24.f,-24.f,-24.f,-24.f,-24.f,-24.f,-24.f,-28.f,-28.f,-28.f},/*2000*/
+   {-24.f,-24.f,-24.f,-24.f,-24.f,-24.f,-24.f,-24.f,-28.f,-28.f,-28.f},/*2800*/
+   {-24.f,-24.f,-24.f,-24.f,-24.f,-24.f,-24.f,-24.f,-28.f,-28.f,-28.f},/*4000*/
+
+   {-24.f,-24.f,-24.f,-24.f,-24.f,-24.f,-24.f,-24.f,-28.f,-28.f,-28.f},/*5600*/
+   {-24.f,-24.f,-24.f,-24.f,-24.f,-24.f,-24.f,-24.f,-28.f,-28.f,-28.f},/*8000*/
+   {-24.f,-24.f,-24.f,-24.f,-24.f,-24.f,-24.f,-24.f,-28.f,-28.f,-28.f},/*11500*/
+   {-24.f,-24.f,-24.f,-24.f,-24.f,-24.f,-24.f,-24.f,-24.f,-24.f,-28.f},/*16000*/
+  },
+
+  1,/*noisemaskp */
+  -30.f,  /* suppress any noise curve over maxspec+n */
+  .5f,   /* low window */
+  .5f,   /* high window */
+  5,
+  5,
+  {.000f, 0.f,/*63*/
+   .000f, 0.f,/*88*/
+   .000f, 0.f,/*125*/
+   .000f, 0.f,/*175*/
+   .000f, 0.f,/*250*/
+   .000f, 0.f,/*350*/
+   .000f, 0.f,/*500*/
+   .000f, 0.f,/*700*/
+   .000f,  0.f,/*1000*/
+   .000f,  0.f,/*1400*/
+   .000f,  0.f,/*2000*/
+   .000f,  0.f,/*2800*/
+   .000f,  0.f,/*4000*/
+   .500f, -6.f,/*5600*/
+   .500f, -6.f,/*8000*/
+   .500f, -5.f,/*11500*/
+   .500f, -4.f,/*16000*/
   },
 
+  105.f,  /* even decade + 5 is important; saves an rint() later in a
+            tight loop) */
+  -32.,
+
+  -0., -.004   /* attack/decay control */
+};
+
+static vorbis_info_psy _psy_set_E={
+  1,/*athp*/
+  0,/*decayp*/
+
+  -100.f,
+  -140.f,
+
+  8,
+
+  /*     0  1  2   3   4   5   6   7   8   9  10  11  12  13  14  15   16   */
+  /* x: 63 88 125 175 250 350 500 700 1k 1.4k 2k 2.8k 4k 5.6k 8k 11.5k 16k Hz */
+  /* y: 0 10 20 30 40 50 60 70 80 90 100 dB */
+   1,/* tonemaskp */
+  /*  0   10   20   30   40   50   60   70   80   90   100 */
+  {
+   {-999.f,-999.f,-999.f,-999.f,-999.f,-999.f,-999.f,-999.f,-999.f,-999.f,-999.f}, /*63*/
+   {-999.f,-999.f,-999.f,-999.f,-999.f,-999.f,-999.f,-999.f,-999.f,-999.f,-999.f}, /*88*/
+   {-999.f,-999.f,-999.f,-999.f,-999.f,-999.f,-999.f,-999.f,-999.f,-999.f,-999.f}, /*125*/
+   //   {-99.,-99.,-99.,-99.,-99.,-99.,-99.,-99.,-99.,-99.,-100.}, /*175*/
+   //   {-99.,-99.,-99.,-99.,-99.,-99.,-99.,-99.,-99.,-99.,-100.}, /*250*/
+   //   {-99.,-99.,-99.,-99.,-99.,-99.,-99.,-99.,-99.,-99.,-100.}, /*350*/
+   //   {-99.,-99.,-99.,-99.,-99.,-99.,-99.,-99.,-99.,-99.,-100.}, /*500*/
+   //   {-99.,-99.,-99.,-99.,-99.,-99.,-99.,-99.,-99.,-99.,-100.}, /*700*/
+
+   //   {-30.,-35.,-35.,-40.,-40.,-50.,-60.,-70.,-80.,-90.,-100.}, /*63*/
+   //   {-30.,-35.,-35.,-40.,-40.,-50.,-60.,-70.,-80.,-90.,-100.}, /*88*/
+   //   {-30.,-35.,-35.,-40.,-40.,-50.,-60.,-70.,-80.,-90.,-100.}, /*125*/
+   {-45.f,-45.f,-45.f,-45.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f,-110.f}, /*175*/
+   {-45.f,-45.f,-45.f,-45.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f,-110.f}, /*250*/
+   {-45.f,-45.f,-45.f,-45.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f,-110.f}, /*350*/
+   {-45.f,-45.f,-45.f,-45.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f,-110.f}, /*500*/
+   {-45.f,-45.f,-45.f,-45.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f,-110.f}, /*700*/
+   {-45.f,-45.f,-45.f,-45.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f,-110.f}, /*1000*/
+   {-45.f,-45.f,-45.f,-45.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f,-110.f}, /*1400*/
+   {-45.f,-45.f,-45.f,-45.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f,-110.f}, /*2000*/
+   {-45.f,-45.f,-45.f,-45.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f,-110.f}, /*2800*/
+   {-45.f,-45.f,-45.f,-45.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f,-110.f}, /*4000*/
+   {-45.f,-45.f,-45.f,-45.f,-50.f,-60.f,-70.f,-80.f,-90.f,-100.f,-110.f}, /*5600*/
+   {-35.f,-45.f,-45.f,-45.f,-45.f,-55.f,-65.f,-75.f,-85.f,-95.f,-105.f}, /*8000*/
+   {-35.f,-45.f,-45.f,-45.f,-45.f,-55.f,-65.f,-75.f,-85.f,-95.f,-105.f}, /*11500*/
+   {-35.f,-35.f,-45.f,-45.f,-45.f,-55.f,-65.f,-75.f,-85.f,-95.f,-105.f}, /*16000*/
+
+  },
+
+  1,
+  {{-28.f,-28.f,-28.f,-28.f,-28.f,-28.f,-28.f,-28.f,-28.f,-28.f,-28.f},/*63*/
+   {-28.f,-28.f,-28.f,-28.f,-28.f,-28.f,-28.f,-28.f,-28.f,-28.f,-28.f},/*88*/
+   {-28.f,-28.f,-28.f,-28.f,-28.f,-28.f,-28.f,-28.f,-28.f,-28.f,-28.f},/*125*/
+   {-28.f,-28.f,-28.f,-28.f,-28.f,-28.f,-28.f,-28.f,-28.f,-28.f,-28.f},/*175*/
+   {-28.f,-28.f,-28.f,-28.f,-28.f,-28.f,-28.f,-28.f,-28.f,-28.f,-28.f},/*250*/
+   {-28.f,-28.f,-28.f,-28.f,-28.f,-28.f,-28.f,-28.f,-28.f,-28.f,-28.f},/*350*/
+   {-28.f,-28.f,-28.f,-28.f,-28.f,-28.f,-28.f,-28.f,-28.f,-28.f,-28.f},/*500*/
+   {-28.f,-28.f,-28.f,-28.f,-28.f,-28.f,-28.f,-28.f,-28.f,-28.f,-28.f},/*700*/
+   {-28.f,-28.f,-28.f,-28.f,-28.f,-28.f,-28.f,-28.f,-28.f,-28.f,-28.f},/*1000*/
+   {-28.f,-28.f,-28.f,-28.f,-28.f,-28.f,-28.f,-28.f,-28.f,-28.f,-28.f},/*1400*/
+   {-28.f,-28.f,-28.f,-28.f,-28.f,-28.f,-28.f,-28.f,-28.f,-28.f,-28.f},/*2800*/
+   {-28.f,-28.f,-28.f,-28.f,-28.f,-28.f,-28.f,-28.f,-28.f,-28.f,-28.f},/*2800*/
+   {-28.f,-28.f,-28.f,-28.f,-28.f,-28.f,-28.f,-28.f,-28.f,-28.f,-28.f},/*4000*/
+   {-28.f,-28.f,-28.f,-28.f,-28.f,-28.f,-28.f,-28.f,-28.f,-28.f,-28.f},/*5600*/
+   {-28.f,-28.f,-28.f,-28.f,-28.f,-28.f,-28.f,-28.f,-28.f,-28.f,-28.f},/*8000*/
+   {-28.f,-28.f,-28.f,-28.f,-28.f,-28.f,-28.f,-28.f,-28.f,-28.f,-28.f},/*11500*/
+   {-28.f,-28.f,-28.f,-28.f,-28.f,-28.f,-28.f,-28.f,-28.f,-28.f,-28.f},/*16000*/
+  },
+
   0,/*noisemaskp */
-  /*  0   10   20   30   40   50   60    70    80    90   100 */
-  {{0}},
+  -15.f,  /* suppress any noise curve over maxspec+n */
+  .5f,   /* low window */
+  .5f,   /* high window */
+  25,
+  25,
+  {.000f, 0.f, /*63*/
+   .000f, 0.f, /*88*/
+   .000f, 0.f, /*125*/
+   .000f, 0.f, /*175*/
+   .000f, 0.f, /*250*/
+   .000f, 0.f, /*350*/
+   .000f, 0.f, /*500*/
+   .000f, 0.f, /*700*/
+   .000f, 0.f, /*1000*/
+   .000f, 0.f, /*1400*/
+   .000f, 0.f, /*2000*/
+   .000f, 0.f, /*2800*/
+   .000f, 0.f, /*4000*/
+   .500f, -12.f, /*5600*/
+   .500f, -12.f, /*8000*/
+   .500f, -10.f, /*11500*/
+   .500f, -10.f, /*16000*/
+  },
  
-  110.f,
+  105.f,  /* even decade + 5 is important; saves an rint() later in a
+            tight loop) */
+  -32.,
 
-  -0.f, -.004f   /* attack/decay control */
+  -0.f, -.004f,   /* attack/decay control */
+
 };
 
 /* with GNUisms, this could be short and readable. Oh well */
-static vorbis_info_time0 _time_set0_E={0};
-static vorbis_info_floor0 _floor_set0_E={12, 44100,  64, 12,150, 1, {0} };
-static vorbis_info_floor0 _floor_set1_E={30, 44100, 256, 12,150, 1, {1} };
-static vorbis_info_residue0 _residue_set0_E={0,128, 32,6,2,
-					   {0,1,1,1,1,1},
-					    {4,5,6,7,8},
-
-					   {0,9999,9999,9999,9999},
-					   {99.f,2.5f,6.5f,15.5f,29.5f},
-					   {5,5,5,5,5},
-					   {99,99,99,99,99}};
-
-static vorbis_info_residue0 _residue_set1_E={0,1024, 32,6,3,
-					   {0,1,1,1,1,1},
-					    {9,10,11,12,13},
+static vorbis_info_time0 _time_set0E={0};
+static vorbis_info_floor0 _floor_set0E={12, 44100,  64, 10,130, 2, {0,1},
+                                        0.199f, .285f};
+static vorbis_info_floor0 _floor_set1E={30, 44100, 256, 12,150, 2, {2,3}, 
+                                        .082f, .126f};
+static vorbis_info_residue0 _residue_set0E={0,128,16,6,4,
+					    {0,1,1,1,1,1},
+					    {6,7,8,9,10},
+					    
+					    {0,99999,9999,9999,9999},
+					    {999.f,1.5f,2.5f,6.5f,40.5f},
+					    {4,4,4,4,4},
+					    {99,99,99,99,99}};
+
+static vorbis_info_residue0 _residue_set1E={0,1024, 32,8,5,
+					    {0,1,1,1,1,1,1,1,1,1},
+					    {11,12,13,14,15,16,17,18,19},
                                            
-					   {0,9999,9999,9999,9999},
-					   {99.f,2.5f,6.5f,15.5f,29.5f},
-					   {5,5,5,5,5},
-					   {99,99,99,99,99}};
-
-static vorbis_info_mapping0 _mapping_set0_E={1, {0,0}, {0}, {0}, {0}, {0}};
-static vorbis_info_mapping0 _mapping_set1_E={1, {0,0}, {0}, {1}, {1}, {0}};
-static vorbis_info_mode _mode_set0_E={0,0,0,0};
-static vorbis_info_mode _mode_set1_E={1,0,0,1};
+					    {0,9999,9999,60,9999,
+					     9999,9999},
+					    {999.f,2.5f,4.5f,10.5f,10.5f,
+					     20.5f,40.f},
+					    {5,5,5,5,5,5,5},
+					    {99,99,99,99,99,99,99,99,99}};
+
+static vorbis_info_mapping0 _mapping_set0E={1, {0,0}, {0}, {0}, {0}, {0}};
+static vorbis_info_mapping0 _mapping_set1E={1, {0,0}, {0}, {1}, {1}, {1}};
+static vorbis_info_mode _mode_set0E={0,0,0,0};
+static vorbis_info_mode _mode_set1E={1,0,0,1};
 
 /* CD quality stereo, no channel coupling */
 codec_setup_info info_E={
@@ -122,41 +269,49 @@
   /* smallblock, largeblock */
   {256, 2048}, 
   /* modes,maps,times,floors,residues,books,psys */
-  2,          2,    1,     2,       2,   14,   1,
+  2,          2,    1,     2,       2,   18,   2,
   /* modes */
-  {&_mode_set0_E,&_mode_set1_E},
+  {&_mode_set0E,&_mode_set1E},
   /* maps */
-  {0,0},{&_mapping_set0_E,&_mapping_set1_E},
+  {0,0},{&_mapping_set0E,&_mapping_set1E},
   /* times */
-  {0,0},{&_time_set0_E},
+  {0,0},{&_time_set0E},
   /* floors */
-  {0,0},{&_floor_set0_E,&_floor_set1_E},
+  {0,0},{&_floor_set0E,&_floor_set1E},
   /* residue */
-  {0,0},{&_residue_set0_E,&_residue_set1_E},
+  {0,0},{&_residue_set0E,&_residue_set1E},
   /* books */
-  {&_vq_book_lsp12_0,      /* 0 */
-   &_vq_book_lsp30_0,      /* 1 */
-
-   &_huff_book_res0_350_128aux,
-   &_huff_book_res0_350_1024aux,
+  {&_vq_book_lsp12_0,       /* 0 */
+   &_vq_book_lsp12_1,       /* 1 */
+   &_vq_book_lsp30_0,      /* 2 */
+   &_vq_book_lsp30_1,      /* 3 */
+
+   &_huff_book_res0_256_128aux,
+   &_huff_book_res0_256_1024aux,
+
+   &_vq_book_res0_256_128_1,
+   &_vq_book_res0_256_128_2,
+   &_vq_book_res0_256_128_3,
+   &_vq_book_res0_256_128_4,
+   &_vq_book_res0_256_128_5,
+
+   &_vq_book_res0_256_1024_1,
+   &_vq_book_res0_256_1024_2,
+   &_vq_book_res0_256_1024_3,
+   &_vq_book_res0_256_1024_4,
+   &_vq_book_res0_256_1024_5,
+   &_vq_book_res0_256_1024_6,
+   &_vq_book_res0_256_1024_7,
 
-   &_vq_book_res0_350_128_1,
-   &_vq_book_res0_350_128_2,
-   &_vq_book_res0_350_128_3,
-   &_vq_book_res0_350_128_4,
-   &_vq_book_res0_350_128_5,
-
-   &_vq_book_res0_350_1024_1,
-   &_vq_book_res0_350_1024_2,
-   &_vq_book_res0_350_1024_3,
-   &_vq_book_res0_350_1024_4,
-   &_vq_book_res0_350_1024_5,
-
   },
   /* psy */
-  {&_psy_set_E},
+  {&_psy_set_E0,&_psy_set_E},
   /* thresh sample period, preecho clamp trigger threshhold, range, minenergy */
-  256, 24.f, 6.f, -96.f
+  256, 20.f, -20.f, -96.f,
+
+  -15., 
+
+  0,
 };
 
 #define PREDEF_INFO_MAX 0

1.3       +3 -1      vorbis/vq/Makefile.am

Index: Makefile.am
===================================================================
RCS file: /usr/local/cvsroot/vorbis/vq/Makefile.am,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- Makefile.am	2000/12/21 21:04:49	1.2
+++ Makefile.am	2001/01/22 01:38:51	1.3
@@ -6,7 +6,7 @@
 
 EXTRA_PROGRAMS = lspvqtrain genericvqtrain residuevqtrain vqbuild\
         vqcascade vqmetrics latticebuild latticepare latticehint\
-	latticetune huffbuild residuesplit
+	latticetune huffbuild residuesplit distribution
 CLEANFILES = $(EXTRA_PROGRAMS)
 
 LDFLAGS = -static
@@ -36,6 +36,8 @@
         vqgen.h bookutil.h
 residuesplit_SOURCES = residuesplit.c vqgen.c bookutil.c\
         vqgen.h bookutil.h
+distribution_SOURCES = distribution.c bookutil.c\
+	bookutil.h
 
 EXTRA_DIST = residue_entropy auxpartition.pl
 

1.21      +15 -16    vorbis/vq/bookutil.c

Index: bookutil.c
===================================================================
RCS file: /usr/local/cvsroot/vorbis/vq/bookutil.c,v
retrieving revision 1.20
retrieving revision 1.21
diff -u -r1.20 -r1.21
--- bookutil.c	2000/12/21 21:04:49	1.20
+++ bookutil.c	2001/01/22 01:38:51	1.21
@@ -12,7 +12,7 @@
  ********************************************************************
 
  function: utility functions for loading .vqh and .vqd files
- last mod: $Id: bookutil.c,v 1.20 2000/12/21 21:04:49 xiphmont Exp $
+ last mod: $Id: bookutil.c,v 1.21 2001/01/22 01:38:51 xiphmont Exp $
 
  ********************************************************************/
 
@@ -536,21 +536,20 @@
 
   /* save the book in C header form */
   fprintf(out,
- "/********************************************************************\n"
- " *                                                                  *\n"
- " * THIS FILE IS PART OF THE Ogg Vorbis SOFTWARE CODEC SOURCE CODE.  *\n"
- " * USE, DISTRIBUTION AND REPRODUCTION OF THIS SOURCE IS GOVERNED BY *\n"
- " * THE GNU PUBLIC LICENSE 2, WHICH IS INCLUDED WITH THIS SOURCE.    *\n"
- " * PLEASE READ THESE TERMS DISTRIBUTING.                            *\n"
- " *                                                                  *\n"
- " * THE OggSQUISH SOURCE CODE IS (C) COPYRIGHT 1994-1999             *\n"
- " * by 1999 Monty <monty at xiph.org> and The XIPHOPHORUS Company       *\n"
- " * http://www.xiph.org/                                             *\n"
- " *                                                                  *\n"
- " ********************************************************************\n"
- "\n"
- " function: static codebook autogenerated by vq/somethingorother\n"
- "\n"
+  "/********************************************************************\n"
+  " *                                                                  *\n"
+  " * THIS FILE IS PART OF THE OggVorbis SOFTWARE CODEC SOURCE CODE.   *\n"
+  " * USE, DISTRIBUTION AND REPRODUCTION OF THIS SOURCE IS GOVERNED BY *\n"
+  " * THE GNU LESSER/LIBRARY PUBLIC LICENSE, WHICH IS INCLUDED WITH    *\n"
+  " * THIS SOURCE. PLEASE READ THESE TERMS BEFORE DISTRIBUTING.        *\n"
+  " *                                                                  *\n"
+  " * THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2001             *\n"
+  " * by the XIPHOPHORUS Company, http://www.xiph.org/                 *\n"
+  " *                                                                  *\n"
+  " ********************************************************************\n"
+  "\n"
+  " function: static codebook autogenerated by vq/somethingorother\n"
+  "\n"
  " ********************************************************************/\n\n");
 
   fprintf(out,"#ifndef _V_%s_VQH_\n#define _V_%s_VQH_\n",name,name);

1.9       +17 -11    vorbis/vq/latticebuild.c

Index: latticebuild.c
===================================================================
RCS file: /usr/local/cvsroot/vorbis/vq/latticebuild.c,v
retrieving revision 1.8
retrieving revision 1.9
diff -u -r1.8 -r1.9
--- latticebuild.c	2000/11/08 03:23:23	1.8
+++ latticebuild.c	2001/01/22 01:38:51	1.9
@@ -12,7 +12,7 @@
  ********************************************************************
 
  function: utility main for building codebooks from lattice descriptions
- last mod: $Id: latticebuild.c,v 1.8 2000/11/08 03:23:23 xiphmont Exp $
+ last mod: $Id: latticebuild.c,v 1.9 2001/01/22 01:38:51 xiphmont Exp $
 
  ********************************************************************/
 
@@ -57,7 +57,7 @@
 int main(int argc,char *argv[]){
   codebook b;
   static_codebook c;
-  float *quantlist;
+  double *quantlist;
   long *hits;
 
   int entries=-1,dim=-1,quantvals=-1,addmul=-1,sequencep=0;
@@ -98,7 +98,7 @@
   line=get_line(in);
   if(sscanf(line,"%d %d %d %d",&quantvals,&dim,&addmul,&sequencep)!=4){
     if(sscanf(line,"%d %d %d",&quantvals,&dim,&addmul)!=3){
-      fprintf(stderr,"Syntax error reading book file (line 1)\n");
+      fprintf(stderr,"Syntax error reading description file (line 1)\n");
       exit(1);
     }
   }
@@ -110,24 +110,29 @@
   c.q_sequencep=sequencep;
   c.quantlist=_ogg_calloc(quantvals,sizeof(long));
 
-  quantlist=_ogg_malloc(sizeof(long)*c.dim*c.entries);
+  quantlist=_ogg_malloc(sizeof(double)*c.dim*c.entries);
   hits=_ogg_malloc(c.entries*sizeof(long));
   for(j=0;j<entries;j++)hits[j]=1;
   for(j=0;j<entries;j++)c.lengthlist[j]=1;
 
   reset_next_value();
-  setup_line(in);
-  for(j=0;j<quantvals;j++){  
-    if(get_line_value(in,quantlist+j)==-1){
+  line=setup_line(in);
+  for(j=0;j<quantvals;j++){ 
+    char *temp;
+    if(!line || sscanf(line,"%lf",quantlist+j)!=1){
       fprintf(stderr,"Ran out of data on line 2 of description file\n");
       exit(1);
     }
+    temp=strchr(line,',');
+    if(!temp)temp=strchr(line,' ');
+    if(temp)temp++;
+    line=temp;
   }
 
   /* gen a real quant list from the more easily human-grokked input */
   {
-    float min=quantlist[0];
-    float mindel=-1;
+    double min=quantlist[0];
+    double mindel=-1;
     int fac=1;
     for(j=1;j<quantvals;j++)if(quantlist[j]<min)min=quantlist[j];
     for(j=0;j<quantvals;j++)
@@ -138,9 +143,10 @@
     j=0;
     while(j<quantvals){
       for(j=0;j<quantvals;j++){
-	float test=(quantlist[j]-min)/(mindel/fac);
-	if( fabs(rint(test)-test)>.000001) break;
+	double test=fac*(quantlist[j]-min)/mindel;
+	if( fabs(rint(test)-test)>.00001f) break;
       }
+      if(fac>100)break;
       if(j<quantvals)fac++;
     }
 

1.2       +225 -0    vorbis/vq/distribution.c

1.2       +119 -0    vorbis/vq/make_residue_books.pl

--- >8 ----
List archives:  http://www.xiph.org/archives/
Ogg project homepage: http://www.xiph.org/ogg/
To unsubscribe from this list, send a message to 'cvs-request at xiph.org'
containing only the word 'unsubscribe' in the body.  No subject is needed.
Unsubscribe messages sent to the list will be ignored/filtered.



More information about the commits mailing list