diff --git a/Sources/All.sln b/Sources/All.sln
index f6f0e28c5..d897d3ee7 100644
--- a/Sources/All.sln
+++ b/Sources/All.sln
@@ -90,6 +90,15 @@ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "WorldEditor", "WorldEditor\
{AC040397-6FEA-E9B2-2B28-5BB08E1607A1} = {AC040397-6FEA-E9B2-2B28-5BB08E1607A1}
EndProjectSection
EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libogg", "libogg\libogg_dynamic.vcxproj", "{15CBFEFF-7965-41F5-B4E2-21E8795C9159}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libvorbisfile", "libvorbis\libvorbisfile_dynamic.vcxproj", "{CEBDE98B-A6AA-46E6-BC79-FAAF823DB9EC}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libvorbis", "libvorbis\libvorbis_dynamic.vcxproj", "{3A214E06-B95E-4D61-A291-1F8DF2EC10FD}"
+ ProjectSection(ProjectDependencies) = postProject
+ {15CBFEFF-7965-41F5-B4E2-21E8795C9159} = {15CBFEFF-7965-41F5-B4E2-21E8795C9159}
+ EndProjectSection
+EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Win32 = Debug|Win32
@@ -199,6 +208,24 @@ Global
{DC47DA88-14E2-0634-61C5-7CEEC46A45C2}.Release|Win32.Build.0 = Release|Win32
{DC47DA88-14E2-0634-61C5-7CEEC46A45C2}.Template|Win32.ActiveCfg = Template|Win32
{DC47DA88-14E2-0634-61C5-7CEEC46A45C2}.Template|Win32.Build.0 = Template|Win32
+ {15CBFEFF-7965-41F5-B4E2-21E8795C9159}.Debug|Win32.ActiveCfg = Debug|Win32
+ {15CBFEFF-7965-41F5-B4E2-21E8795C9159}.Debug|Win32.Build.0 = Debug|Win32
+ {15CBFEFF-7965-41F5-B4E2-21E8795C9159}.Release|Win32.ActiveCfg = Release|Win32
+ {15CBFEFF-7965-41F5-B4E2-21E8795C9159}.Release|Win32.Build.0 = Release|Win32
+ {15CBFEFF-7965-41F5-B4E2-21E8795C9159}.Template|Win32.ActiveCfg = Release|Win32
+ {15CBFEFF-7965-41F5-B4E2-21E8795C9159}.Template|Win32.Build.0 = Release|Win32
+ {CEBDE98B-A6AA-46E6-BC79-FAAF823DB9EC}.Debug|Win32.ActiveCfg = Debug|Win32
+ {CEBDE98B-A6AA-46E6-BC79-FAAF823DB9EC}.Debug|Win32.Build.0 = Debug|Win32
+ {CEBDE98B-A6AA-46E6-BC79-FAAF823DB9EC}.Release|Win32.ActiveCfg = Release|Win32
+ {CEBDE98B-A6AA-46E6-BC79-FAAF823DB9EC}.Release|Win32.Build.0 = Release|Win32
+ {CEBDE98B-A6AA-46E6-BC79-FAAF823DB9EC}.Template|Win32.ActiveCfg = Release|Win32
+ {CEBDE98B-A6AA-46E6-BC79-FAAF823DB9EC}.Template|Win32.Build.0 = Release|Win32
+ {3A214E06-B95E-4D61-A291-1F8DF2EC10FD}.Debug|Win32.ActiveCfg = Debug|Win32
+ {3A214E06-B95E-4D61-A291-1F8DF2EC10FD}.Debug|Win32.Build.0 = Debug|Win32
+ {3A214E06-B95E-4D61-A291-1F8DF2EC10FD}.Release|Win32.ActiveCfg = Release|Win32
+ {3A214E06-B95E-4D61-A291-1F8DF2EC10FD}.Release|Win32.Build.0 = Release|Win32
+ {3A214E06-B95E-4D61-A291-1F8DF2EC10FD}.Template|Win32.ActiveCfg = Release|Win32
+ {3A214E06-B95E-4D61-A291-1F8DF2EC10FD}.Template|Win32.Build.0 = Release|Win32
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
diff --git a/Sources/Engine/Engine.vcxproj b/Sources/Engine/Engine.vcxproj
index b8937441a..32ab746fa 100644
--- a/Sources/Engine/Engine.vcxproj
+++ b/Sources/Engine/Engine.vcxproj
@@ -97,6 +97,7 @@
.\Debug\
EnableFastChecks
4603;4996;4812;4333
+ ..\libvorbis\include\;..\libogg\include\;%(AdditionalIncludeDirectories)
true
@@ -124,6 +125,8 @@
true
libci.lib;%(IgnoreSpecificDefaultLibraries)
false
+
+
copy Debug\$(TargetName).dll $(SolutionDir)..\Bin\Debug\ >nul
@@ -155,6 +158,7 @@ copy Debug\$(TargetName).lib $(SolutionDir)..\Bin\Debug\ >nul
.\Release\
.\Release\
4603;4996;4812;4333
+ ..\libvorbis\include\;..\libogg\include\;%(AdditionalIncludeDirectories)
true
@@ -182,6 +186,8 @@ copy Debug\$(TargetName).lib $(SolutionDir)..\Bin\Debug\ >nul
true
libci.lib;%(IgnoreSpecificDefaultLibraries)
false
+
+
copy Release\$(TargetName).dll $(SolutionDir)..\Bin\ >nul
@@ -778,6 +784,7 @@ copy Release\$(TargetName).lib $(SolutionDir)..\Bin\ >nul
+
@@ -895,7 +902,6 @@ copy Release\$(TargetName).lib $(SolutionDir)..\Bin\ >nul
-
diff --git a/Sources/Engine/Engine.vcxproj.filters b/Sources/Engine/Engine.vcxproj.filters
index 870a661ca..737ce4136 100644
--- a/Sources/Engine/Engine.vcxproj.filters
+++ b/Sources/Engine/Engine.vcxproj.filters
@@ -1356,9 +1356,6 @@
Header Files
-
- Header Files
-
Header Files
@@ -1368,6 +1365,9 @@
Header Files\GameAgent Headers
+
+ Header Files\Sound Headers
+
diff --git a/Sources/Engine/Sound/SoundDecoder.cpp b/Sources/Engine/Sound/SoundDecoder.cpp
index d2c445831..d9d963aac 100644
--- a/Sources/Engine/Sound/SoundDecoder.cpp
+++ b/Sources/Engine/Sound/SoundDecoder.cpp
@@ -85,53 +85,19 @@ class CDecodeData_MPEG {
// ------------------------------------ Ogg Vorbis
-
-//#include // we define needed stuff ourselves, and ignore the rest
+#include // we define needed stuff ourselves, and ignore the rest
// vorbis vars
extern BOOL _bOVEnabled = FALSE;
static HINSTANCE _hOV = NULL;
-#define OV_FALSE -1
-#define OV_EOF -2
-#define OV_HOLE -3
-
-#define OV_EREAD -128
-#define OV_EFAULT -129
-#define OV_EIMPL -130
-#define OV_EINVAL -131
-#define OV_ENOTVORBIS -132
-#define OV_EBADHEADER -133
-#define OV_EVERSION -134
-#define OV_ENOTAUDIO -135
-#define OV_EBADPACKET -136
-#define OV_EBADLINK -137
-#define OV_ENOSEEK -138
-
-// vorbis types
-typedef __int64 ogg_int64_t;
-typedef struct {
- size_t (*read_func) (void *ptr, size_t size, size_t nmemb, void *datasource);
- int (*seek_func) (void *datasource, ogg_int64_t offset, int whence);
- int (*close_func) (void *datasource);
- long (*tell_func) (void *datasource);
-} ov_callbacks;
-
-struct OggVorbis_File {
- // don't wanna know whats inside
- UBYTE dummy[2048]; // last time checked, the actual size was 720 (ogg vorbis version 1.0rc1)
-};
-struct vorbis_info {
- int version;
- int channels;
- long rate;
-
- long bitrate_upper;
- long bitrate_nominal;
- long bitrate_lower;
-
- // don't want to know the rest...
- //..................
+class CDecodeData_OGG {
+public:
+ FILE *ogg_fFile; // the stdio file that ogg is in
+ SLONG ogg_slOffset; // offset where the ogg starts in the file (!=0 for oggs in zip)
+ SLONG ogg_slSize; // size of ogg in the file (!=filesize for oggs in zip)
+ OggVorbis_File *ogg_vfVorbisFile; // the decoder file
+ WAVEFORMATEX ogg_wfeFormat; // format of sound
};
// define vorbis function pointers
@@ -157,15 +123,6 @@ static void OV_ClearFunctionPointers(void) {
#undef DLLFUNCTION
}
-class CDecodeData_OGG {
-public:
- FILE *ogg_fFile; // the stdio file that ogg is in
- SLONG ogg_slOffset; // offset where the ogg starts in the file (!=0 for oggs in zip)
- SLONG ogg_slSize; // size of ogg in the file (!=filesize for oggs in zip)
- OggVorbis_File *ogg_vfVorbisFile; // the decoder file
- WAVEFORMATEX ogg_wfeFormat; // format of sound
-};
-
// ogg file reading callbacks
//
@@ -237,21 +194,21 @@ void CSoundDecoder::InitPlugins(void)
// load vorbis
if (_hOV==NULL) {
#ifndef NDEBUG
- #define VORBISLIB "vorbisfile_d.dll"
+ #define VORBISLIB "libvorbisfile.dll"
#else
- #define VORBISLIB "vorbisfile.dll"
+ #define VORBISLIB "libvorbisfile.dll"
#endif
_hOV = ::LoadLibraryA(VORBISLIB);
}
if( _hOV == NULL) {
- ThrowF_t(TRANS("Cannot load vorbisfile.dll."));
+ ThrowF_t(TRANS("Cannot load libvorbisfile.dll."));
}
// prepare function pointers
OV_SetFunctionPointers_t();
// if all successful, enable mpx playing
_bOVEnabled = TRUE;
- CPrintF(TRANS(" vorbisfile.dll loaded, ogg playing enabled\n"));
+ CPrintF(TRANS(" libvorbisfile.dll loaded, ogg playing enabled\n"));
} catch (char *strError) {
CPrintF(TRANS("OGG playing disabled: %s\n"), strError);
@@ -314,6 +271,7 @@ CSoundDecoder::CSoundDecoder(const CTFileName &fnm)
if (!_bOVEnabled) {
return;
}
+
sdc_pogg = new CDecodeData_OGG;
sdc_pogg->ogg_fFile = NULL;
sdc_pogg->ogg_vfVorbisFile = NULL;
@@ -559,9 +517,6 @@ void CSoundDecoder::Reset(void)
if (sdc_pmpeg!=NULL) {
palDecSeekAbs(sdc_pmpeg->mpeg_hDecoder, 0.0f);
} else if (sdc_pogg!=NULL) {
-/* !!!! seeking is evil with vorbisfile 1.0RC2
- pov_time_seek(sdc_pogg->ogg_vfVorbisFile, 0.0f);
- */
// so instead, we reinit
pov_clear(sdc_pogg->ogg_vfVorbisFile);
fseek(sdc_pogg->ogg_fFile, sdc_pogg->ogg_slOffset, SEEK_SET);
diff --git a/Sources/Engine/Sound/ov_functions.h b/Sources/Engine/Sound/ov_functions.h
index d2ca4d662..0188a838e 100644
--- a/Sources/Engine/Sound/ov_functions.h
+++ b/Sources/Engine/Sound/ov_functions.h
@@ -21,4 +21,4 @@ DLLFUNCTION( OVF, int, ov_open, (FILE *f, OggVorbis_File *vf, char *initial, lon
DLLFUNCTION( OVF, int, ov_open_callbacks, (void *datasource, OggVorbis_File *vf, char *initial, long ibytes, ov_callbacks callbacks), 32,0);
DLLFUNCTION( OVF, long, ov_read, (OggVorbis_File *vf,char *buffer,int length, int bigendianp,int word,int sgned,int *bitstream), 28,0);
DLLFUNCTION( OVF, vorbis_info *, ov_info, (OggVorbis_File *vf,int link), 8,0);
-DLLFUNCTION( OVF, int, ov_time_seek, (OggVorbis_File *vf, double pos), 12,0);
+DLLFUNCTION( OVF, int, ov_time_seek, (OggVorbis_File *vf, double pos), 12,0);
\ No newline at end of file
diff --git a/Sources/libogg/AUTHORS b/Sources/libogg/AUTHORS
new file mode 100644
index 000000000..a0023f2c1
--- /dev/null
+++ b/Sources/libogg/AUTHORS
@@ -0,0 +1,7 @@
+Monty
+Greg Maxwell
+Ralph Giles
+Cristian Adam
+Tim Terriberry
+
+and the rest of the Xiph.Org Foundation.
diff --git a/Sources/libogg/CHANGES b/Sources/libogg/CHANGES
new file mode 100644
index 000000000..3f2e0fb26
--- /dev/null
+++ b/Sources/libogg/CHANGES
@@ -0,0 +1,88 @@
+Version 1.3.2 (2014 May 27)
+
+ * Fix an bug in oggpack_writecopy().
+
+Version 1.3.1 (2013 May 12)
+
+* Guard against very large packets.
+* Respect the configure --docdir override.
+* Documentation fixes.
+* More Windows build fixes.
+
+Version 1.3.0 (2011 August 4)
+
+* Add ogg_stream_flush_fill() call
+ This produces longer packets on flush, similar to
+ what ogg_stream_pageout_fill() does for single pages.
+* Windows build fixes
+
+Version 1.2.2 (2010 December 07)
+
+* Build fix (types correction) for Mac OS X
+* Update win32 project files to Visual Studio 2008
+* ogg_stream_pageout_fill documentation fix
+
+Version 1.2.1 (2010 November 01)
+
+* Various build updates (see SVN)
+* Add ogg_stream_pageout_fill() to API to allow applications
+ greater explicit flexibility in page sizing.
+* Documentation updates including multiplexing description,
+ terminology and API (incl. ogg_packet_clear(),
+ ogg_stream_pageout_fill())
+* Correct possible buffer overwrite in stream encoding on 32 bit
+ when a single packet exceed 250MB.
+* Correct read-buffer overrun [without side effects] under
+ similar circumstances.
+* Update unit testing to work properly with new page spill
+ heuristic.
+
+Version 1.2.0 (2010 March 25)
+
+* Alter default flushing behavior to span less often and use larger page
+ sizes when packet sizes are large.
+* Build fixes for additional compilers
+* Documentation updates
+
+Version 1.1.4 (2009 June 24)
+
+* New async error reporting mechanism. Calls made after a fatal error are
+ now safely handled in the event an error code is ignored
+* Added allocation checks useful to some embedded applications
+* fix possible read past end of buffer when reading 0 bits
+* Updates to API documentation
+* Build fixes
+
+Version 1.1.3 (2005 November 27)
+
+ * Correct a bug in the granulepos field of pages where no packet ends
+ * New VS2003 and XCode builds, minor fixes to other builds
+ * documentation fixes and cleanup
+
+Version 1.1.2 (2004 September 23)
+
+ * fix a bug with multipage packet assembly after seek
+
+Version 1.1.1 (2004 September 12)
+
+ * various bugfixes
+ * important bugfix for 64-bit platforms
+ * various portability fixes
+ * autotools cleanup from Thomas Vander Stichele
+ * Symbian OS build support from Colin Ward at CSIRO
+ * new multiplexed Ogg stream documentation
+
+Version 1.1 (2003 November 17)
+
+ * big-endian bitpacker routines for Theora
+ * various portability fixes
+ * improved API documenation
+ * RFC 3533 documentation of the format by Silvia Pfeiffer at CSIRO
+ * RFC 3534 documentation of the application/ogg mime-type by Linus Walleij
+
+Version 1.0 (2002 July 19)
+
+ * First stable release
+ * little-endian bitpacker routines for Vorbis
+ * basic Ogg bitstream sync and coding support
+
diff --git a/Sources/libogg/COPYING b/Sources/libogg/COPYING
new file mode 100644
index 000000000..6111c6c5a
--- /dev/null
+++ b/Sources/libogg/COPYING
@@ -0,0 +1,28 @@
+Copyright (c) 2002, Xiph.org Foundation
+
+Redistribution and use in source and binary forms, with or without
+modification, are permitted provided that the following conditions
+are met:
+
+- Redistributions of source code must retain the above copyright
+notice, this list of conditions and the following disclaimer.
+
+- Redistributions in binary form must reproduce the above copyright
+notice, this list of conditions and the following disclaimer in the
+documentation and/or other materials provided with the distribution.
+
+- Neither the name of the Xiph.org Foundation nor the names of its
+contributors may be used to endorse or promote products derived from
+this software without specific prior written permission.
+
+THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION
+OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
diff --git a/Sources/libogg/README b/Sources/libogg/README
new file mode 100644
index 000000000..2db22e65f
--- /dev/null
+++ b/Sources/libogg/README
@@ -0,0 +1,97 @@
+********************************************************************
+* *
+* THIS FILE IS PART OF THE OggVorbis SOFTWARE CODEC SOURCE CODE. *
+* USE, DISTRIBUTION AND REPRODUCTION OF THIS LIBRARY SOURCE IS *
+* GOVERNED BY A BSD-STYLE SOURCE LICENSE INCLUDED WITH THIS SOURCE *
+* IN 'COPYING'. PLEASE READ THESE TERMS BEFORE DISTRIBUTING. *
+* *
+* THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2011 *
+* by the Xiph.Org Foundation http://www.xiph.org/ *
+* *
+********************************************************************
+
+= WHAT'S HERE =
+
+This source distribution includes libogg and nothing else. Other modules
+(eg, the modules libvorbis, vorbis-tools for the Vorbis music codec,
+libtheora for the Theora video codec) contain the codec libraries for
+use with Ogg bitstreams.
+
+Directory:
+
+./src The source for libogg, a BSD-license inplementation of
+ the public domain Ogg bitstream format
+
+./include Library API headers
+
+./doc Ogg specification and libogg API documents
+
+./win32 Win32 projects and build automation
+
+./macosx Mac OS X project and build files
+
+= WHAT IS OGG? =
+
+Ogg project codecs use the Ogg bitstream format to arrange the raw,
+compressed bitstream into a more robust, useful form. For example,
+the Ogg bitstream makes seeking, time stamping and error recovery
+possible, as well as mixing several sepearate, concurrent media
+streams into a single physical bitstream.
+
+= CONTACT =
+
+The Ogg homepage is located at 'https://www.xiph.org/ogg/'.
+Up to date technical documents, contact information, source code and
+pre-built utilities may be found there.
+
+BUILDING FROM TARBALL DISTRIBUTIONS:
+
+./configure
+make
+
+and optionally (as root):
+make install
+
+This will install the Ogg libraries (static and shared) into
+/usr/local/lib, includes into /usr/local/include and API
+documentation into /usr/local/share/doc.
+
+BUILDING FROM REPOSITORY SOURCE:
+
+A standard svn build should consist of nothing more than:
+
+./autogen.sh
+make
+
+and as root if desired :
+
+make install
+
+BUILDING ON WIN32:
+
+Use the project file in the win32 directory. It should compile out of the box.
+
+CROSS COMPILING FROM LINUX TO WIN32:
+
+It is also possible to cross compile from Linux to windows using the MinGW
+cross tools and even to run the test suite under Wine, the Linux/*nix
+windows emulator.
+
+On Debian and Ubuntu systems, these cross compiler tools can be installed
+by doing:
+
+ sudo apt-get mingw32 mingw32-binutils mingw32-runtime wine
+
+Once these tools are installed its possible to compile and test by
+executing the following commands, or something similar depending on
+your system:
+
+ ./configure --host=i586-mingw32msvc --target=i586-mingw32msvc \
+ --build=i586-linux
+ make
+ make check
+
+(Build instructions for Ogg codecs such as vorbis are similar and may
+be found in those source modules' README files)
+
+$Id: README 18096 2011-09-22 23:32:51Z giles $
diff --git a/Sources/libogg/include/ogg/config_types.h.in b/Sources/libogg/include/ogg/config_types.h.in
new file mode 100644
index 000000000..750e29ddc
--- /dev/null
+++ b/Sources/libogg/include/ogg/config_types.h.in
@@ -0,0 +1,25 @@
+#ifndef __CONFIG_TYPES_H__
+#define __CONFIG_TYPES_H__
+
+/* these are filled in by configure */
+#define INCLUDE_INTTYPES_H @INCLUDE_INTTYPES_H@
+#define INCLUDE_STDINT_H @INCLUDE_STDINT_H@
+#define INCLUDE_SYS_TYPES_H @INCLUDE_SYS_TYPES_H@
+
+#if INCLUDE_INTTYPES_H
+# include
+#endif
+#if INCLUDE_STDINT_H
+# include
+#endif
+#if INCLUDE_SYS_TYPES_H
+# include
+#endif
+
+typedef @SIZE16@ ogg_int16_t;
+typedef @USIZE16@ ogg_uint16_t;
+typedef @SIZE32@ ogg_int32_t;
+typedef @USIZE32@ ogg_uint32_t;
+typedef @SIZE64@ ogg_int64_t;
+
+#endif
diff --git a/Sources/libogg/include/ogg/ogg.h b/Sources/libogg/include/ogg/ogg.h
new file mode 100644
index 000000000..cea4ebed7
--- /dev/null
+++ b/Sources/libogg/include/ogg/ogg.h
@@ -0,0 +1,210 @@
+/********************************************************************
+ * *
+ * THIS FILE IS PART OF THE OggVorbis SOFTWARE CODEC SOURCE CODE. *
+ * USE, DISTRIBUTION AND REPRODUCTION OF THIS LIBRARY SOURCE IS *
+ * GOVERNED BY A BSD-STYLE SOURCE LICENSE INCLUDED WITH THIS SOURCE *
+ * IN 'COPYING'. PLEASE READ THESE TERMS BEFORE DISTRIBUTING. *
+ * *
+ * THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2007 *
+ * by the Xiph.Org Foundation http://www.xiph.org/ *
+ * *
+ ********************************************************************
+
+ function: toplevel libogg include
+ last mod: $Id: ogg.h 18044 2011-08-01 17:55:20Z gmaxwell $
+
+ ********************************************************************/
+#ifndef _OGG_H
+#define _OGG_H
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+#include
+#include
+
+typedef struct {
+ void *iov_base;
+ size_t iov_len;
+} ogg_iovec_t;
+
+typedef struct {
+ long endbyte;
+ int endbit;
+
+ unsigned char *buffer;
+ unsigned char *ptr;
+ long storage;
+} oggpack_buffer;
+
+/* ogg_page is used to encapsulate the data in one Ogg bitstream page *****/
+
+typedef struct {
+ unsigned char *header;
+ long header_len;
+ unsigned char *body;
+ long body_len;
+} ogg_page;
+
+/* ogg_stream_state contains the current encode/decode state of a logical
+ Ogg bitstream **********************************************************/
+
+typedef struct {
+ unsigned char *body_data; /* bytes from packet bodies */
+ long body_storage; /* storage elements allocated */
+ long body_fill; /* elements stored; fill mark */
+ long body_returned; /* elements of fill returned */
+
+
+ int *lacing_vals; /* The values that will go to the segment table */
+ ogg_int64_t *granule_vals; /* granulepos values for headers. Not compact
+ this way, but it is simple coupled to the
+ lacing fifo */
+ long lacing_storage;
+ long lacing_fill;
+ long lacing_packet;
+ long lacing_returned;
+
+ unsigned char header[282]; /* working space for header encode */
+ int header_fill;
+
+ int e_o_s; /* set when we have buffered the last packet in the
+ logical bitstream */
+ int b_o_s; /* set after we've written the initial page
+ of a logical bitstream */
+ long serialno;
+ long pageno;
+ ogg_int64_t packetno; /* sequence number for decode; the framing
+ knows where there's a hole in the data,
+ but we need coupling so that the codec
+ (which is in a separate abstraction
+ layer) also knows about the gap */
+ ogg_int64_t granulepos;
+
+} ogg_stream_state;
+
+/* ogg_packet is used to encapsulate the data and metadata belonging
+ to a single raw Ogg/Vorbis packet *************************************/
+
+typedef struct {
+ unsigned char *packet;
+ long bytes;
+ long b_o_s;
+ long e_o_s;
+
+ ogg_int64_t granulepos;
+
+ ogg_int64_t packetno; /* sequence number for decode; the framing
+ knows where there's a hole in the data,
+ but we need coupling so that the codec
+ (which is in a separate abstraction
+ layer) also knows about the gap */
+} ogg_packet;
+
+typedef struct {
+ unsigned char *data;
+ int storage;
+ int fill;
+ int returned;
+
+ int unsynced;
+ int headerbytes;
+ int bodybytes;
+} ogg_sync_state;
+
+/* Ogg BITSTREAM PRIMITIVES: bitstream ************************/
+
+extern void oggpack_writeinit(oggpack_buffer *b);
+extern int oggpack_writecheck(oggpack_buffer *b);
+extern void oggpack_writetrunc(oggpack_buffer *b,long bits);
+extern void oggpack_writealign(oggpack_buffer *b);
+extern void oggpack_writecopy(oggpack_buffer *b,void *source,long bits);
+extern void oggpack_reset(oggpack_buffer *b);
+extern void oggpack_writeclear(oggpack_buffer *b);
+extern void oggpack_readinit(oggpack_buffer *b,unsigned char *buf,int bytes);
+extern void oggpack_write(oggpack_buffer *b,unsigned long value,int bits);
+extern long oggpack_look(oggpack_buffer *b,int bits);
+extern long oggpack_look1(oggpack_buffer *b);
+extern void oggpack_adv(oggpack_buffer *b,int bits);
+extern void oggpack_adv1(oggpack_buffer *b);
+extern long oggpack_read(oggpack_buffer *b,int bits);
+extern long oggpack_read1(oggpack_buffer *b);
+extern long oggpack_bytes(oggpack_buffer *b);
+extern long oggpack_bits(oggpack_buffer *b);
+extern unsigned char *oggpack_get_buffer(oggpack_buffer *b);
+
+extern void oggpackB_writeinit(oggpack_buffer *b);
+extern int oggpackB_writecheck(oggpack_buffer *b);
+extern void oggpackB_writetrunc(oggpack_buffer *b,long bits);
+extern void oggpackB_writealign(oggpack_buffer *b);
+extern void oggpackB_writecopy(oggpack_buffer *b,void *source,long bits);
+extern void oggpackB_reset(oggpack_buffer *b);
+extern void oggpackB_writeclear(oggpack_buffer *b);
+extern void oggpackB_readinit(oggpack_buffer *b,unsigned char *buf,int bytes);
+extern void oggpackB_write(oggpack_buffer *b,unsigned long value,int bits);
+extern long oggpackB_look(oggpack_buffer *b,int bits);
+extern long oggpackB_look1(oggpack_buffer *b);
+extern void oggpackB_adv(oggpack_buffer *b,int bits);
+extern void oggpackB_adv1(oggpack_buffer *b);
+extern long oggpackB_read(oggpack_buffer *b,int bits);
+extern long oggpackB_read1(oggpack_buffer *b);
+extern long oggpackB_bytes(oggpack_buffer *b);
+extern long oggpackB_bits(oggpack_buffer *b);
+extern unsigned char *oggpackB_get_buffer(oggpack_buffer *b);
+
+/* Ogg BITSTREAM PRIMITIVES: encoding **************************/
+
+extern int ogg_stream_packetin(ogg_stream_state *os, ogg_packet *op);
+extern int ogg_stream_iovecin(ogg_stream_state *os, ogg_iovec_t *iov,
+ int count, long e_o_s, ogg_int64_t granulepos);
+extern int ogg_stream_pageout(ogg_stream_state *os, ogg_page *og);
+extern int ogg_stream_pageout_fill(ogg_stream_state *os, ogg_page *og, int nfill);
+extern int ogg_stream_flush(ogg_stream_state *os, ogg_page *og);
+extern int ogg_stream_flush_fill(ogg_stream_state *os, ogg_page *og, int nfill);
+
+/* Ogg BITSTREAM PRIMITIVES: decoding **************************/
+
+extern int ogg_sync_init(ogg_sync_state *oy);
+extern int ogg_sync_clear(ogg_sync_state *oy);
+extern int ogg_sync_reset(ogg_sync_state *oy);
+extern int ogg_sync_destroy(ogg_sync_state *oy);
+extern int ogg_sync_check(ogg_sync_state *oy);
+
+extern char *ogg_sync_buffer(ogg_sync_state *oy, long size);
+extern int ogg_sync_wrote(ogg_sync_state *oy, long bytes);
+extern long ogg_sync_pageseek(ogg_sync_state *oy,ogg_page *og);
+extern int ogg_sync_pageout(ogg_sync_state *oy, ogg_page *og);
+extern int ogg_stream_pagein(ogg_stream_state *os, ogg_page *og);
+extern int ogg_stream_packetout(ogg_stream_state *os,ogg_packet *op);
+extern int ogg_stream_packetpeek(ogg_stream_state *os,ogg_packet *op);
+
+/* Ogg BITSTREAM PRIMITIVES: general ***************************/
+
+extern int ogg_stream_init(ogg_stream_state *os,int serialno);
+extern int ogg_stream_clear(ogg_stream_state *os);
+extern int ogg_stream_reset(ogg_stream_state *os);
+extern int ogg_stream_reset_serialno(ogg_stream_state *os,int serialno);
+extern int ogg_stream_destroy(ogg_stream_state *os);
+extern int ogg_stream_check(ogg_stream_state *os);
+extern int ogg_stream_eos(ogg_stream_state *os);
+
+extern void ogg_page_checksum_set(ogg_page *og);
+
+extern int ogg_page_version(const ogg_page *og);
+extern int ogg_page_continued(const ogg_page *og);
+extern int ogg_page_bos(const ogg_page *og);
+extern int ogg_page_eos(const ogg_page *og);
+extern ogg_int64_t ogg_page_granulepos(const ogg_page *og);
+extern int ogg_page_serialno(const ogg_page *og);
+extern long ogg_page_pageno(const ogg_page *og);
+extern int ogg_page_packets(const ogg_page *og);
+
+extern void ogg_packet_clear(ogg_packet *op);
+
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif /* _OGG_H */
diff --git a/Sources/libogg/include/ogg/os_types.h b/Sources/libogg/include/ogg/os_types.h
new file mode 100644
index 000000000..8bf82107e
--- /dev/null
+++ b/Sources/libogg/include/ogg/os_types.h
@@ -0,0 +1,147 @@
+/********************************************************************
+ * *
+ * THIS FILE IS PART OF THE OggVorbis SOFTWARE CODEC SOURCE CODE. *
+ * USE, DISTRIBUTION AND REPRODUCTION OF THIS LIBRARY SOURCE IS *
+ * GOVERNED BY A BSD-STYLE SOURCE LICENSE INCLUDED WITH THIS SOURCE *
+ * IN 'COPYING'. PLEASE READ THESE TERMS BEFORE DISTRIBUTING. *
+ * *
+ * THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2002 *
+ * by the Xiph.Org Foundation http://www.xiph.org/ *
+ * *
+ ********************************************************************
+
+ function: #ifdef jail to whip a few platforms into the UNIX ideal.
+ last mod: $Id: os_types.h 19098 2014-02-26 19:06:45Z giles $
+
+ ********************************************************************/
+#ifndef _OS_TYPES_H
+#define _OS_TYPES_H
+
+/* make it easy on the folks that want to compile the libs with a
+ different malloc than stdlib */
+#define _ogg_malloc malloc
+#define _ogg_calloc calloc
+#define _ogg_realloc realloc
+#define _ogg_free free
+
+#if defined(_WIN32)
+
+# if defined(__CYGWIN__)
+# include
+ typedef int16_t ogg_int16_t;
+ typedef uint16_t ogg_uint16_t;
+ typedef int32_t ogg_int32_t;
+ typedef uint32_t ogg_uint32_t;
+ typedef int64_t ogg_int64_t;
+ typedef uint64_t ogg_uint64_t;
+# elif defined(__MINGW32__)
+# include
+ typedef short ogg_int16_t;
+ typedef unsigned short ogg_uint16_t;
+ typedef int ogg_int32_t;
+ typedef unsigned int ogg_uint32_t;
+ typedef long long ogg_int64_t;
+ typedef unsigned long long ogg_uint64_t;
+# elif defined(__MWERKS__)
+ typedef long long ogg_int64_t;
+ typedef int ogg_int32_t;
+ typedef unsigned int ogg_uint32_t;
+ typedef short ogg_int16_t;
+ typedef unsigned short ogg_uint16_t;
+# else
+ /* MSVC/Borland */
+ typedef __int64 ogg_int64_t;
+ typedef __int32 ogg_int32_t;
+ typedef unsigned __int32 ogg_uint32_t;
+ typedef __int16 ogg_int16_t;
+ typedef unsigned __int16 ogg_uint16_t;
+# endif
+
+#elif defined(__MACOS__)
+
+# include
+ typedef SInt16 ogg_int16_t;
+ typedef UInt16 ogg_uint16_t;
+ typedef SInt32 ogg_int32_t;
+ typedef UInt32 ogg_uint32_t;
+ typedef SInt64 ogg_int64_t;
+
+#elif (defined(__APPLE__) && defined(__MACH__)) /* MacOS X Framework build */
+
+# include
+ typedef int16_t ogg_int16_t;
+ typedef uint16_t ogg_uint16_t;
+ typedef int32_t ogg_int32_t;
+ typedef uint32_t ogg_uint32_t;
+ typedef int64_t ogg_int64_t;
+
+#elif defined(__HAIKU__)
+
+ /* Haiku */
+# include
+ typedef short ogg_int16_t;
+ typedef unsigned short ogg_uint16_t;
+ typedef int ogg_int32_t;
+ typedef unsigned int ogg_uint32_t;
+ typedef long long ogg_int64_t;
+
+#elif defined(__BEOS__)
+
+ /* Be */
+# include
+ typedef int16_t ogg_int16_t;
+ typedef uint16_t ogg_uint16_t;
+ typedef int32_t ogg_int32_t;
+ typedef uint32_t ogg_uint32_t;
+ typedef int64_t ogg_int64_t;
+
+#elif defined (__EMX__)
+
+ /* OS/2 GCC */
+ typedef short ogg_int16_t;
+ typedef unsigned short ogg_uint16_t;
+ typedef int ogg_int32_t;
+ typedef unsigned int ogg_uint32_t;
+ typedef long long ogg_int64_t;
+
+#elif defined (DJGPP)
+
+ /* DJGPP */
+ typedef short ogg_int16_t;
+ typedef int ogg_int32_t;
+ typedef unsigned int ogg_uint32_t;
+ typedef long long ogg_int64_t;
+
+#elif defined(R5900)
+
+ /* PS2 EE */
+ typedef long ogg_int64_t;
+ typedef int ogg_int32_t;
+ typedef unsigned ogg_uint32_t;
+ typedef short ogg_int16_t;
+
+#elif defined(__SYMBIAN32__)
+
+ /* Symbian GCC */
+ typedef signed short ogg_int16_t;
+ typedef unsigned short ogg_uint16_t;
+ typedef signed int ogg_int32_t;
+ typedef unsigned int ogg_uint32_t;
+ typedef long long int ogg_int64_t;
+
+#elif defined(__TMS320C6X__)
+
+ /* TI C64x compiler */
+ typedef signed short ogg_int16_t;
+ typedef unsigned short ogg_uint16_t;
+ typedef signed int ogg_int32_t;
+ typedef unsigned int ogg_uint32_t;
+ typedef long long int ogg_int64_t;
+
+#else
+
+# include
+
+#endif
+
+#endif /* _OS_TYPES_H */
diff --git a/Sources/libogg/libogg_dynamic.vcxproj b/Sources/libogg/libogg_dynamic.vcxproj
new file mode 100644
index 000000000..c775ff8ef
--- /dev/null
+++ b/Sources/libogg/libogg_dynamic.vcxproj
@@ -0,0 +1,199 @@
+
+
+
+
+ Debug
+ Win32
+
+
+ Debug
+ x64
+
+
+ Release
+ Win32
+
+
+ Release
+ x64
+
+
+
+ libogg
+ {15CBFEFF-7965-41F5-B4E2-21E8795C9159}
+ libogg
+ Win32Proj
+
+
+
+ DynamicLibrary
+ Unicode
+ true
+ v120
+
+
+ DynamicLibrary
+ Unicode
+ v120
+
+
+ DynamicLibrary
+ Unicode
+ true
+ v120
+
+
+ DynamicLibrary
+ Unicode
+ v120
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <_ProjectFileVersion>10.0.30319.1
+ Debug\
+ Debug\
+ $(SolutionDir)$(Platform)\$(Configuration)\
+ $(Platform)\$(Configuration)\
+ Release\
+ Release\
+ $(SolutionDir)$(Platform)\$(Configuration)\
+ $(Platform)\$(Configuration)\
+
+
+
+ Disabled
+ include;%(AdditionalIncludeDirectories)
+ WIN32;_DEBUG;_WINDOWS;_USRDLL;LIBOGG_EXPORTS;%(PreprocessorDefinitions)
+ true
+ EnableFastChecks
+ MultiThreadedDebugDLL
+
+
+ Level4
+ EditAndContinue
+ CompileAsC
+ Cdecl
+
+
+ ogg.def
+
+
+ $(SolutionDir)..\Bin\Debug\$(InputName).dll;%(Outputs)
+ Copying %(Filename) binaries to $(ENGINE_DIR)\Bin\Debug
+ copy Debug\$(TargetName).dll $(SolutionDir)..\Bin\Debug\ >nul
+copy Debug\$(TargetName).lib $(SolutionDir)..\Bin\Debug\ >nul
+
+
+
+
+ X64
+
+
+ Disabled
+ include;%(AdditionalIncludeDirectories)
+ WIN32;_DEBUG;_WINDOWS;_USRDLL;LIBOGG_EXPORTS;%(PreprocessorDefinitions)
+ true
+ EnableFastChecks
+ MultiThreadedDebugDLL
+
+
+ Level4
+ ProgramDatabase
+ CompileAsC
+ Cdecl
+
+
+ ogg.def
+
+
+
+
+ MaxSpeed
+ AnySuitable
+ true
+ Speed
+ include;%(AdditionalIncludeDirectories)
+ WIN32;NDEBUG;_WINDOWS;_USRDLL;LIBOGG_EXPORTS;%(PreprocessorDefinitions)
+ true
+
+
+ MultiThreadedDLL
+ false
+
+
+ Level4
+
+
+ CompileAsC
+ 4244;%(DisableSpecificWarnings)
+ Cdecl
+
+
+ ogg.def
+
+
+ $(SolutionDir)..\Bin\$(InputName).dll;%(Outputs)
+ Copying %(Filename) binaries to $(ENGINE_DIR)\Bin
+ copy Release\$(TargetName).dll $(SolutionDir)..\Bin\ >nul
+copy Release\$(TargetName).lib $(SolutionDir)..\Bin\ >nul
+
+
+
+
+ X64
+
+
+ MaxSpeed
+ AnySuitable
+ true
+ Speed
+ include;%(AdditionalIncludeDirectories)
+ WIN32;NDEBUG;_WINDOWS;_USRDLL;LIBOGG_EXPORTS;%(PreprocessorDefinitions)
+ true
+
+
+ MultiThreadedDLL
+ false
+
+
+ Level4
+
+
+ CompileAsC
+ 4244;%(DisableSpecificWarnings)
+ Cdecl
+
+
+ ogg.def
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/Sources/libogg/libogg_dynamic.vcxproj.user b/Sources/libogg/libogg_dynamic.vcxproj.user
new file mode 100644
index 000000000..ef5ff2a1f
--- /dev/null
+++ b/Sources/libogg/libogg_dynamic.vcxproj.user
@@ -0,0 +1,4 @@
+
+
+
+
\ No newline at end of file
diff --git a/Sources/libogg/ogg.def b/Sources/libogg/ogg.def
new file mode 100644
index 000000000..f47d6db3f
--- /dev/null
+++ b/Sources/libogg/ogg.def
@@ -0,0 +1,78 @@
+; $Id: ogg.def 14733 2008-04-14 21:27:06Z sping $
+;
+; ogg.def
+;
+LIBRARY
+EXPORTS
+;
+oggpack_writeinit
+oggpack_writetrunc
+oggpack_writealign
+oggpack_writecopy
+oggpack_reset
+oggpack_writeclear
+oggpack_readinit
+oggpack_write
+oggpack_look
+oggpack_look1
+oggpack_adv
+oggpack_adv1
+oggpack_read
+oggpack_read1
+oggpack_bytes
+oggpack_bits
+oggpack_get_buffer
+;
+oggpackB_writeinit
+oggpackB_writetrunc
+oggpackB_writealign
+oggpackB_writecopy
+oggpackB_reset
+oggpackB_writeclear
+oggpackB_readinit
+oggpackB_write
+oggpackB_look
+oggpackB_look1
+oggpackB_adv
+oggpackB_adv1
+oggpackB_read
+oggpackB_read1
+oggpackB_bytes
+oggpackB_bits
+oggpackB_get_buffer
+;
+ogg_stream_packetin
+ogg_stream_pageout
+ogg_stream_flush
+;
+ogg_sync_init
+ogg_sync_clear
+ogg_sync_reset
+ogg_sync_destroy
+ogg_sync_buffer
+ogg_sync_wrote
+ogg_sync_pageseek
+ogg_sync_pageout
+ogg_stream_pagein
+ogg_stream_packetout
+ogg_stream_packetpeek
+;
+ogg_stream_init
+ogg_stream_clear
+ogg_stream_reset
+ogg_stream_reset_serialno
+ogg_stream_destroy
+ogg_stream_eos
+;
+ogg_page_checksum_set
+ogg_page_version
+ogg_page_continued
+ogg_page_bos
+ogg_page_eos
+ogg_page_granulepos
+ogg_page_serialno
+ogg_page_pageno
+ogg_page_packets
+ogg_packet_clear
+
+
diff --git a/Sources/libogg/src/bitwise.c b/Sources/libogg/src/bitwise.c
new file mode 100644
index 000000000..145901d18
--- /dev/null
+++ b/Sources/libogg/src/bitwise.c
@@ -0,0 +1,1088 @@
+/********************************************************************
+ * *
+ * THIS FILE IS PART OF THE Ogg CONTAINER SOURCE CODE. *
+ * USE, DISTRIBUTION AND REPRODUCTION OF THIS LIBRARY SOURCE IS *
+ * GOVERNED BY A BSD-STYLE SOURCE LICENSE INCLUDED WITH THIS SOURCE *
+ * IN 'COPYING'. PLEASE READ THESE TERMS BEFORE DISTRIBUTING. *
+ * *
+ * THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2014 *
+ * by the Xiph.Org Foundation http://www.xiph.org/ *
+ * *
+ ********************************************************************
+
+ function: packing variable sized words into an octet stream
+ last mod: $Id: bitwise.c 19149 2014-05-27 16:26:23Z giles $
+
+ ********************************************************************/
+
+/* We're 'LSb' endian; if we write a word but read individual bits,
+ then we'll read the lsb first */
+
+#include
+#include
+#include
+#include
+
+#define BUFFER_INCREMENT 256
+
+static const unsigned long mask[]=
+{0x00000000,0x00000001,0x00000003,0x00000007,0x0000000f,
+ 0x0000001f,0x0000003f,0x0000007f,0x000000ff,0x000001ff,
+ 0x000003ff,0x000007ff,0x00000fff,0x00001fff,0x00003fff,
+ 0x00007fff,0x0000ffff,0x0001ffff,0x0003ffff,0x0007ffff,
+ 0x000fffff,0x001fffff,0x003fffff,0x007fffff,0x00ffffff,
+ 0x01ffffff,0x03ffffff,0x07ffffff,0x0fffffff,0x1fffffff,
+ 0x3fffffff,0x7fffffff,0xffffffff };
+
+static const unsigned int mask8B[]=
+{0x00,0x80,0xc0,0xe0,0xf0,0xf8,0xfc,0xfe,0xff};
+
+void oggpack_writeinit(oggpack_buffer *b){
+ memset(b,0,sizeof(*b));
+ b->ptr=b->buffer=_ogg_malloc(BUFFER_INCREMENT);
+ b->buffer[0]='\0';
+ b->storage=BUFFER_INCREMENT;
+}
+
+void oggpackB_writeinit(oggpack_buffer *b){
+ oggpack_writeinit(b);
+}
+
+int oggpack_writecheck(oggpack_buffer *b){
+ if(!b->ptr || !b->storage)return -1;
+ return 0;
+}
+
+int oggpackB_writecheck(oggpack_buffer *b){
+ return oggpack_writecheck(b);
+}
+
+void oggpack_writetrunc(oggpack_buffer *b,long bits){
+ long bytes=bits>>3;
+ if(b->ptr){
+ bits-=bytes*8;
+ b->ptr=b->buffer+bytes;
+ b->endbit=bits;
+ b->endbyte=bytes;
+ *b->ptr&=mask[bits];
+ }
+}
+
+void oggpackB_writetrunc(oggpack_buffer *b,long bits){
+ long bytes=bits>>3;
+ if(b->ptr){
+ bits-=bytes*8;
+ b->ptr=b->buffer+bytes;
+ b->endbit=bits;
+ b->endbyte=bytes;
+ *b->ptr&=mask8B[bits];
+ }
+}
+
+/* Takes only up to 32 bits. */
+void oggpack_write(oggpack_buffer *b,unsigned long value,int bits){
+ if(bits<0 || bits>32) goto err;
+ if(b->endbyte>=b->storage-4){
+ void *ret;
+ if(!b->ptr)return;
+ if(b->storage>LONG_MAX-BUFFER_INCREMENT) goto err;
+ ret=_ogg_realloc(b->buffer,b->storage+BUFFER_INCREMENT);
+ if(!ret) goto err;
+ b->buffer=ret;
+ b->storage+=BUFFER_INCREMENT;
+ b->ptr=b->buffer+b->endbyte;
+ }
+
+ value&=mask[bits];
+ bits+=b->endbit;
+
+ b->ptr[0]|=value<endbit;
+
+ if(bits>=8){
+ b->ptr[1]=(unsigned char)(value>>(8-b->endbit));
+ if(bits>=16){
+ b->ptr[2]=(unsigned char)(value>>(16-b->endbit));
+ if(bits>=24){
+ b->ptr[3]=(unsigned char)(value>>(24-b->endbit));
+ if(bits>=32){
+ if(b->endbit)
+ b->ptr[4]=(unsigned char)(value>>(32-b->endbit));
+ else
+ b->ptr[4]=0;
+ }
+ }
+ }
+ }
+
+ b->endbyte+=bits/8;
+ b->ptr+=bits/8;
+ b->endbit=bits&7;
+ return;
+ err:
+ oggpack_writeclear(b);
+}
+
+/* Takes only up to 32 bits. */
+void oggpackB_write(oggpack_buffer *b,unsigned long value,int bits){
+ if(bits<0 || bits>32) goto err;
+ if(b->endbyte>=b->storage-4){
+ void *ret;
+ if(!b->ptr)return;
+ if(b->storage>LONG_MAX-BUFFER_INCREMENT) goto err;
+ ret=_ogg_realloc(b->buffer,b->storage+BUFFER_INCREMENT);
+ if(!ret) goto err;
+ b->buffer=ret;
+ b->storage+=BUFFER_INCREMENT;
+ b->ptr=b->buffer+b->endbyte;
+ }
+
+ value=(value&mask[bits])<<(32-bits);
+ bits+=b->endbit;
+
+ b->ptr[0]|=value>>(24+b->endbit);
+
+ if(bits>=8){
+ b->ptr[1]=(unsigned char)(value>>(16+b->endbit));
+ if(bits>=16){
+ b->ptr[2]=(unsigned char)(value>>(8+b->endbit));
+ if(bits>=24){
+ b->ptr[3]=(unsigned char)(value>>(b->endbit));
+ if(bits>=32){
+ if(b->endbit)
+ b->ptr[4]=(unsigned char)(value<<(8-b->endbit));
+ else
+ b->ptr[4]=0;
+ }
+ }
+ }
+ }
+
+ b->endbyte+=bits/8;
+ b->ptr+=bits/8;
+ b->endbit=bits&7;
+ return;
+ err:
+ oggpack_writeclear(b);
+}
+
+void oggpack_writealign(oggpack_buffer *b){
+ int bits=8-b->endbit;
+ if(bits<8)
+ oggpack_write(b,0,bits);
+}
+
+void oggpackB_writealign(oggpack_buffer *b){
+ int bits=8-b->endbit;
+ if(bits<8)
+ oggpackB_write(b,0,bits);
+}
+
+static void oggpack_writecopy_helper(oggpack_buffer *b,
+ void *source,
+ long bits,
+ void (*w)(oggpack_buffer *,
+ unsigned long,
+ int),
+ int msb){
+ unsigned char *ptr=(unsigned char *)source;
+
+ long bytes=bits/8;
+ long pbytes=(b->endbit+bits)/8;
+ bits-=bytes*8;
+
+ /* expand storage up-front */
+ if(b->endbyte+pbytes>=b->storage){
+ void *ret;
+ if(!b->ptr) goto err;
+ if(b->storage>b->endbyte+pbytes+BUFFER_INCREMENT) goto err;
+ b->storage=b->endbyte+pbytes+BUFFER_INCREMENT;
+ ret=_ogg_realloc(b->buffer,b->storage);
+ if(!ret) goto err;
+ b->buffer=ret;
+ b->ptr=b->buffer+b->endbyte;
+ }
+
+ /* copy whole octets */
+ if(b->endbit){
+ int i;
+ /* unaligned copy. Do it the hard way. */
+ for(i=0;iptr,source,bytes);
+ b->ptr+=bytes;
+ b->endbyte+=bytes;
+ *b->ptr=0;
+ }
+
+ /* copy trailing bits */
+ if(bits){
+ if(msb)
+ w(b,(unsigned long)(ptr[bytes]>>(8-bits)),bits);
+ else
+ w(b,(unsigned long)(ptr[bytes]),bits);
+ }
+ return;
+ err:
+ oggpack_writeclear(b);
+}
+
+void oggpack_writecopy(oggpack_buffer *b,void *source,long bits){
+ oggpack_writecopy_helper(b,source,bits,oggpack_write,0);
+}
+
+void oggpackB_writecopy(oggpack_buffer *b,void *source,long bits){
+ oggpack_writecopy_helper(b,source,bits,oggpackB_write,1);
+}
+
+void oggpack_reset(oggpack_buffer *b){
+ if(!b->ptr)return;
+ b->ptr=b->buffer;
+ b->buffer[0]=0;
+ b->endbit=b->endbyte=0;
+}
+
+void oggpackB_reset(oggpack_buffer *b){
+ oggpack_reset(b);
+}
+
+void oggpack_writeclear(oggpack_buffer *b){
+ if(b->buffer)_ogg_free(b->buffer);
+ memset(b,0,sizeof(*b));
+}
+
+void oggpackB_writeclear(oggpack_buffer *b){
+ oggpack_writeclear(b);
+}
+
+void oggpack_readinit(oggpack_buffer *b,unsigned char *buf,int bytes){
+ memset(b,0,sizeof(*b));
+ b->buffer=b->ptr=buf;
+ b->storage=bytes;
+}
+
+void oggpackB_readinit(oggpack_buffer *b,unsigned char *buf,int bytes){
+ oggpack_readinit(b,buf,bytes);
+}
+
+/* Read in bits without advancing the bitptr; bits <= 32 */
+long oggpack_look(oggpack_buffer *b,int bits){
+ unsigned long ret;
+ unsigned long m;
+
+ if(bits<0 || bits>32) return -1;
+ m=mask[bits];
+ bits+=b->endbit;
+
+ if(b->endbyte >= b->storage-4){
+ /* not the main path */
+ if(b->endbyte > b->storage-((bits+7)>>3)) return -1;
+ /* special case to avoid reading b->ptr[0], which might be past the end of
+ the buffer; also skips some useless accounting */
+ else if(!bits)return(0L);
+ }
+
+ ret=b->ptr[0]>>b->endbit;
+ if(bits>8){
+ ret|=b->ptr[1]<<(8-b->endbit);
+ if(bits>16){
+ ret|=b->ptr[2]<<(16-b->endbit);
+ if(bits>24){
+ ret|=b->ptr[3]<<(24-b->endbit);
+ if(bits>32 && b->endbit)
+ ret|=b->ptr[4]<<(32-b->endbit);
+ }
+ }
+ }
+ return(m&ret);
+}
+
+/* Read in bits without advancing the bitptr; bits <= 32 */
+long oggpackB_look(oggpack_buffer *b,int bits){
+ unsigned long ret;
+ int m=32-bits;
+
+ if(m<0 || m>32) return -1;
+ bits+=b->endbit;
+
+ if(b->endbyte >= b->storage-4){
+ /* not the main path */
+ if(b->endbyte > b->storage-((bits+7)>>3)) return -1;
+ /* special case to avoid reading b->ptr[0], which might be past the end of
+ the buffer; also skips some useless accounting */
+ else if(!bits)return(0L);
+ }
+
+ ret=b->ptr[0]<<(24+b->endbit);
+ if(bits>8){
+ ret|=b->ptr[1]<<(16+b->endbit);
+ if(bits>16){
+ ret|=b->ptr[2]<<(8+b->endbit);
+ if(bits>24){
+ ret|=b->ptr[3]<<(b->endbit);
+ if(bits>32 && b->endbit)
+ ret|=b->ptr[4]>>(8-b->endbit);
+ }
+ }
+ }
+ return ((ret&0xffffffff)>>(m>>1))>>((m+1)>>1);
+}
+
+long oggpack_look1(oggpack_buffer *b){
+ if(b->endbyte>=b->storage)return(-1);
+ return((b->ptr[0]>>b->endbit)&1);
+}
+
+long oggpackB_look1(oggpack_buffer *b){
+ if(b->endbyte>=b->storage)return(-1);
+ return((b->ptr[0]>>(7-b->endbit))&1);
+}
+
+void oggpack_adv(oggpack_buffer *b,int bits){
+ bits+=b->endbit;
+
+ if(b->endbyte > b->storage-((bits+7)>>3)) goto overflow;
+
+ b->ptr+=bits/8;
+ b->endbyte+=bits/8;
+ b->endbit=bits&7;
+ return;
+
+ overflow:
+ b->ptr=NULL;
+ b->endbyte=b->storage;
+ b->endbit=1;
+}
+
+void oggpackB_adv(oggpack_buffer *b,int bits){
+ oggpack_adv(b,bits);
+}
+
+void oggpack_adv1(oggpack_buffer *b){
+ if(++(b->endbit)>7){
+ b->endbit=0;
+ b->ptr++;
+ b->endbyte++;
+ }
+}
+
+void oggpackB_adv1(oggpack_buffer *b){
+ oggpack_adv1(b);
+}
+
+/* bits <= 32 */
+long oggpack_read(oggpack_buffer *b,int bits){
+ long ret;
+ unsigned long m;
+
+ if(bits<0 || bits>32) goto err;
+ m=mask[bits];
+ bits+=b->endbit;
+
+ if(b->endbyte >= b->storage-4){
+ /* not the main path */
+ if(b->endbyte > b->storage-((bits+7)>>3)) goto overflow;
+ /* special case to avoid reading b->ptr[0], which might be past the end of
+ the buffer; also skips some useless accounting */
+ else if(!bits)return(0L);
+ }
+
+ ret=b->ptr[0]>>b->endbit;
+ if(bits>8){
+ ret|=b->ptr[1]<<(8-b->endbit);
+ if(bits>16){
+ ret|=b->ptr[2]<<(16-b->endbit);
+ if(bits>24){
+ ret|=b->ptr[3]<<(24-b->endbit);
+ if(bits>32 && b->endbit){
+ ret|=b->ptr[4]<<(32-b->endbit);
+ }
+ }
+ }
+ }
+ ret&=m;
+ b->ptr+=bits/8;
+ b->endbyte+=bits/8;
+ b->endbit=bits&7;
+ return ret;
+
+ overflow:
+ err:
+ b->ptr=NULL;
+ b->endbyte=b->storage;
+ b->endbit=1;
+ return -1L;
+}
+
+/* bits <= 32 */
+long oggpackB_read(oggpack_buffer *b,int bits){
+ long ret;
+ long m=32-bits;
+
+ if(m<0 || m>32) goto err;
+ bits+=b->endbit;
+
+ if(b->endbyte+4>=b->storage){
+ /* not the main path */
+ if(b->endbyte > b->storage-((bits+7)>>3)) goto overflow;
+ /* special case to avoid reading b->ptr[0], which might be past the end of
+ the buffer; also skips some useless accounting */
+ else if(!bits)return(0L);
+ }
+
+ ret=b->ptr[0]<<(24+b->endbit);
+ if(bits>8){
+ ret|=b->ptr[1]<<(16+b->endbit);
+ if(bits>16){
+ ret|=b->ptr[2]<<(8+b->endbit);
+ if(bits>24){
+ ret|=b->ptr[3]<<(b->endbit);
+ if(bits>32 && b->endbit)
+ ret|=b->ptr[4]>>(8-b->endbit);
+ }
+ }
+ }
+ ret=((ret&0xffffffffUL)>>(m>>1))>>((m+1)>>1);
+
+ b->ptr+=bits/8;
+ b->endbyte+=bits/8;
+ b->endbit=bits&7;
+ return ret;
+
+ overflow:
+ err:
+ b->ptr=NULL;
+ b->endbyte=b->storage;
+ b->endbit=1;
+ return -1L;
+}
+
+long oggpack_read1(oggpack_buffer *b){
+ long ret;
+
+ if(b->endbyte >= b->storage) goto overflow;
+ ret=(b->ptr[0]>>b->endbit)&1;
+
+ b->endbit++;
+ if(b->endbit>7){
+ b->endbit=0;
+ b->ptr++;
+ b->endbyte++;
+ }
+ return ret;
+
+ overflow:
+ b->ptr=NULL;
+ b->endbyte=b->storage;
+ b->endbit=1;
+ return -1L;
+}
+
+long oggpackB_read1(oggpack_buffer *b){
+ long ret;
+
+ if(b->endbyte >= b->storage) goto overflow;
+ ret=(b->ptr[0]>>(7-b->endbit))&1;
+
+ b->endbit++;
+ if(b->endbit>7){
+ b->endbit=0;
+ b->ptr++;
+ b->endbyte++;
+ }
+ return ret;
+
+ overflow:
+ b->ptr=NULL;
+ b->endbyte=b->storage;
+ b->endbit=1;
+ return -1L;
+}
+
+long oggpack_bytes(oggpack_buffer *b){
+ return(b->endbyte+(b->endbit+7)/8);
+}
+
+long oggpack_bits(oggpack_buffer *b){
+ return(b->endbyte*8+b->endbit);
+}
+
+long oggpackB_bytes(oggpack_buffer *b){
+ return oggpack_bytes(b);
+}
+
+long oggpackB_bits(oggpack_buffer *b){
+ return oggpack_bits(b);
+}
+
+unsigned char *oggpack_get_buffer(oggpack_buffer *b){
+ return(b->buffer);
+}
+
+unsigned char *oggpackB_get_buffer(oggpack_buffer *b){
+ return oggpack_get_buffer(b);
+}
+
+/* Self test of the bitwise routines; everything else is based on
+ them, so they damned well better be solid. */
+
+#ifdef _V_SELFTEST
+#include
+
+static int ilog(unsigned int v){
+ int ret=0;
+ while(v){
+ ret++;
+ v>>=1;
+ }
+ return(ret);
+}
+
+oggpack_buffer o;
+oggpack_buffer r;
+
+void report(char *in){
+ fprintf(stderr,"%s",in);
+ exit(1);
+}
+
+void cliptest(unsigned long *b,int vals,int bits,int *comp,int compsize){
+ long bytes,i;
+ unsigned char *buffer;
+
+ oggpack_reset(&o);
+ for(i=0;i
+#include
+#include
+#include
+
+/* A complete description of Ogg framing exists in docs/framing.html */
+
+int ogg_page_version(const ogg_page *og){
+ return((int)(og->header[4]));
+}
+
+int ogg_page_continued(const ogg_page *og){
+ return((int)(og->header[5]&0x01));
+}
+
+int ogg_page_bos(const ogg_page *og){
+ return((int)(og->header[5]&0x02));
+}
+
+int ogg_page_eos(const ogg_page *og){
+ return((int)(og->header[5]&0x04));
+}
+
+ogg_int64_t ogg_page_granulepos(const ogg_page *og){
+ unsigned char *page=og->header;
+ ogg_int64_t granulepos=page[13]&(0xff);
+ granulepos= (granulepos<<8)|(page[12]&0xff);
+ granulepos= (granulepos<<8)|(page[11]&0xff);
+ granulepos= (granulepos<<8)|(page[10]&0xff);
+ granulepos= (granulepos<<8)|(page[9]&0xff);
+ granulepos= (granulepos<<8)|(page[8]&0xff);
+ granulepos= (granulepos<<8)|(page[7]&0xff);
+ granulepos= (granulepos<<8)|(page[6]&0xff);
+ return(granulepos);
+}
+
+int ogg_page_serialno(const ogg_page *og){
+ return(og->header[14] |
+ (og->header[15]<<8) |
+ (og->header[16]<<16) |
+ (og->header[17]<<24));
+}
+
+long ogg_page_pageno(const ogg_page *og){
+ return(og->header[18] |
+ (og->header[19]<<8) |
+ (og->header[20]<<16) |
+ (og->header[21]<<24));
+}
+
+
+
+/* returns the number of packets that are completed on this page (if
+ the leading packet is begun on a previous page, but ends on this
+ page, it's counted */
+
+/* NOTE:
+ If a page consists of a packet begun on a previous page, and a new
+ packet begun (but not completed) on this page, the return will be:
+ ogg_page_packets(page) ==1,
+ ogg_page_continued(page) !=0
+
+ If a page happens to be a single packet that was begun on a
+ previous page, and spans to the next page (in the case of a three or
+ more page packet), the return will be:
+ ogg_page_packets(page) ==0,
+ ogg_page_continued(page) !=0
+*/
+
+int ogg_page_packets(const ogg_page *og){
+ int i,n=og->header[26],count=0;
+ for(i=0;iheader[27+i]<255)count++;
+ return(count);
+}
+
+
+#if 0
+/* helper to initialize lookup for direct-table CRC (illustrative; we
+ use the static init below) */
+
+static ogg_uint32_t _ogg_crc_entry(unsigned long index){
+ int i;
+ unsigned long r;
+
+ r = index << 24;
+ for (i=0; i<8; i++)
+ if (r & 0x80000000UL)
+ r = (r << 1) ^ 0x04c11db7; /* The same as the ethernet generator
+ polynomial, although we use an
+ unreflected alg and an init/final
+ of 0, not 0xffffffff */
+ else
+ r<<=1;
+ return (r & 0xffffffffUL);
+}
+#endif
+
+static const ogg_uint32_t crc_lookup[256]={
+ 0x00000000,0x04c11db7,0x09823b6e,0x0d4326d9,
+ 0x130476dc,0x17c56b6b,0x1a864db2,0x1e475005,
+ 0x2608edb8,0x22c9f00f,0x2f8ad6d6,0x2b4bcb61,
+ 0x350c9b64,0x31cd86d3,0x3c8ea00a,0x384fbdbd,
+ 0x4c11db70,0x48d0c6c7,0x4593e01e,0x4152fda9,
+ 0x5f15adac,0x5bd4b01b,0x569796c2,0x52568b75,
+ 0x6a1936c8,0x6ed82b7f,0x639b0da6,0x675a1011,
+ 0x791d4014,0x7ddc5da3,0x709f7b7a,0x745e66cd,
+ 0x9823b6e0,0x9ce2ab57,0x91a18d8e,0x95609039,
+ 0x8b27c03c,0x8fe6dd8b,0x82a5fb52,0x8664e6e5,
+ 0xbe2b5b58,0xbaea46ef,0xb7a96036,0xb3687d81,
+ 0xad2f2d84,0xa9ee3033,0xa4ad16ea,0xa06c0b5d,
+ 0xd4326d90,0xd0f37027,0xddb056fe,0xd9714b49,
+ 0xc7361b4c,0xc3f706fb,0xceb42022,0xca753d95,
+ 0xf23a8028,0xf6fb9d9f,0xfbb8bb46,0xff79a6f1,
+ 0xe13ef6f4,0xe5ffeb43,0xe8bccd9a,0xec7dd02d,
+ 0x34867077,0x30476dc0,0x3d044b19,0x39c556ae,
+ 0x278206ab,0x23431b1c,0x2e003dc5,0x2ac12072,
+ 0x128e9dcf,0x164f8078,0x1b0ca6a1,0x1fcdbb16,
+ 0x018aeb13,0x054bf6a4,0x0808d07d,0x0cc9cdca,
+ 0x7897ab07,0x7c56b6b0,0x71159069,0x75d48dde,
+ 0x6b93dddb,0x6f52c06c,0x6211e6b5,0x66d0fb02,
+ 0x5e9f46bf,0x5a5e5b08,0x571d7dd1,0x53dc6066,
+ 0x4d9b3063,0x495a2dd4,0x44190b0d,0x40d816ba,
+ 0xaca5c697,0xa864db20,0xa527fdf9,0xa1e6e04e,
+ 0xbfa1b04b,0xbb60adfc,0xb6238b25,0xb2e29692,
+ 0x8aad2b2f,0x8e6c3698,0x832f1041,0x87ee0df6,
+ 0x99a95df3,0x9d684044,0x902b669d,0x94ea7b2a,
+ 0xe0b41de7,0xe4750050,0xe9362689,0xedf73b3e,
+ 0xf3b06b3b,0xf771768c,0xfa325055,0xfef34de2,
+ 0xc6bcf05f,0xc27dede8,0xcf3ecb31,0xcbffd686,
+ 0xd5b88683,0xd1799b34,0xdc3abded,0xd8fba05a,
+ 0x690ce0ee,0x6dcdfd59,0x608edb80,0x644fc637,
+ 0x7a089632,0x7ec98b85,0x738aad5c,0x774bb0eb,
+ 0x4f040d56,0x4bc510e1,0x46863638,0x42472b8f,
+ 0x5c007b8a,0x58c1663d,0x558240e4,0x51435d53,
+ 0x251d3b9e,0x21dc2629,0x2c9f00f0,0x285e1d47,
+ 0x36194d42,0x32d850f5,0x3f9b762c,0x3b5a6b9b,
+ 0x0315d626,0x07d4cb91,0x0a97ed48,0x0e56f0ff,
+ 0x1011a0fa,0x14d0bd4d,0x19939b94,0x1d528623,
+ 0xf12f560e,0xf5ee4bb9,0xf8ad6d60,0xfc6c70d7,
+ 0xe22b20d2,0xe6ea3d65,0xeba91bbc,0xef68060b,
+ 0xd727bbb6,0xd3e6a601,0xdea580d8,0xda649d6f,
+ 0xc423cd6a,0xc0e2d0dd,0xcda1f604,0xc960ebb3,
+ 0xbd3e8d7e,0xb9ff90c9,0xb4bcb610,0xb07daba7,
+ 0xae3afba2,0xaafbe615,0xa7b8c0cc,0xa379dd7b,
+ 0x9b3660c6,0x9ff77d71,0x92b45ba8,0x9675461f,
+ 0x8832161a,0x8cf30bad,0x81b02d74,0x857130c3,
+ 0x5d8a9099,0x594b8d2e,0x5408abf7,0x50c9b640,
+ 0x4e8ee645,0x4a4ffbf2,0x470cdd2b,0x43cdc09c,
+ 0x7b827d21,0x7f436096,0x7200464f,0x76c15bf8,
+ 0x68860bfd,0x6c47164a,0x61043093,0x65c52d24,
+ 0x119b4be9,0x155a565e,0x18197087,0x1cd86d30,
+ 0x029f3d35,0x065e2082,0x0b1d065b,0x0fdc1bec,
+ 0x3793a651,0x3352bbe6,0x3e119d3f,0x3ad08088,
+ 0x2497d08d,0x2056cd3a,0x2d15ebe3,0x29d4f654,
+ 0xc5a92679,0xc1683bce,0xcc2b1d17,0xc8ea00a0,
+ 0xd6ad50a5,0xd26c4d12,0xdf2f6bcb,0xdbee767c,
+ 0xe3a1cbc1,0xe760d676,0xea23f0af,0xeee2ed18,
+ 0xf0a5bd1d,0xf464a0aa,0xf9278673,0xfde69bc4,
+ 0x89b8fd09,0x8d79e0be,0x803ac667,0x84fbdbd0,
+ 0x9abc8bd5,0x9e7d9662,0x933eb0bb,0x97ffad0c,
+ 0xafb010b1,0xab710d06,0xa6322bdf,0xa2f33668,
+ 0xbcb4666d,0xb8757bda,0xb5365d03,0xb1f740b4};
+
+/* init the encode/decode logical stream state */
+
+int ogg_stream_init(ogg_stream_state *os,int serialno){
+ if(os){
+ memset(os,0,sizeof(*os));
+ os->body_storage=16*1024;
+ os->lacing_storage=1024;
+
+ os->body_data=_ogg_malloc(os->body_storage*sizeof(*os->body_data));
+ os->lacing_vals=_ogg_malloc(os->lacing_storage*sizeof(*os->lacing_vals));
+ os->granule_vals=_ogg_malloc(os->lacing_storage*sizeof(*os->granule_vals));
+
+ if(!os->body_data || !os->lacing_vals || !os->granule_vals){
+ ogg_stream_clear(os);
+ return -1;
+ }
+
+ os->serialno=serialno;
+
+ return(0);
+ }
+ return(-1);
+}
+
+/* async/delayed error detection for the ogg_stream_state */
+int ogg_stream_check(ogg_stream_state *os){
+ if(!os || !os->body_data) return -1;
+ return 0;
+}
+
+/* _clear does not free os, only the non-flat storage within */
+int ogg_stream_clear(ogg_stream_state *os){
+ if(os){
+ if(os->body_data)_ogg_free(os->body_data);
+ if(os->lacing_vals)_ogg_free(os->lacing_vals);
+ if(os->granule_vals)_ogg_free(os->granule_vals);
+
+ memset(os,0,sizeof(*os));
+ }
+ return(0);
+}
+
+int ogg_stream_destroy(ogg_stream_state *os){
+ if(os){
+ ogg_stream_clear(os);
+ _ogg_free(os);
+ }
+ return(0);
+}
+
+/* Helpers for ogg_stream_encode; this keeps the structure and
+ what's happening fairly clear */
+
+static int _os_body_expand(ogg_stream_state *os,long needed){
+ if(os->body_storage-needed<=os->body_fill){
+ long body_storage;
+ void *ret;
+ if(os->body_storage>LONG_MAX-needed){
+ ogg_stream_clear(os);
+ return -1;
+ }
+ body_storage=os->body_storage+needed;
+ if(body_storagebody_data,body_storage*sizeof(*os->body_data));
+ if(!ret){
+ ogg_stream_clear(os);
+ return -1;
+ }
+ os->body_storage=body_storage;
+ os->body_data=ret;
+ }
+ return 0;
+}
+
+static int _os_lacing_expand(ogg_stream_state *os,long needed){
+ if(os->lacing_storage-needed<=os->lacing_fill){
+ long lacing_storage;
+ void *ret;
+ if(os->lacing_storage>LONG_MAX-needed){
+ ogg_stream_clear(os);
+ return -1;
+ }
+ lacing_storage=os->lacing_storage+needed;
+ if(lacing_storagelacing_vals,lacing_storage*sizeof(*os->lacing_vals));
+ if(!ret){
+ ogg_stream_clear(os);
+ return -1;
+ }
+ os->lacing_vals=ret;
+ ret=_ogg_realloc(os->granule_vals,lacing_storage*
+ sizeof(*os->granule_vals));
+ if(!ret){
+ ogg_stream_clear(os);
+ return -1;
+ }
+ os->granule_vals=ret;
+ os->lacing_storage=lacing_storage;
+ }
+ return 0;
+}
+
+/* checksum the page */
+/* Direct table CRC; note that this will be faster in the future if we
+ perform the checksum simultaneously with other copies */
+
+void ogg_page_checksum_set(ogg_page *og){
+ if(og){
+ ogg_uint32_t crc_reg=0;
+ int i;
+
+ /* safety; needed for API behavior, but not framing code */
+ og->header[22]=0;
+ og->header[23]=0;
+ og->header[24]=0;
+ og->header[25]=0;
+
+ for(i=0;iheader_len;i++)
+ crc_reg=(crc_reg<<8)^crc_lookup[((crc_reg >> 24)&0xff)^og->header[i]];
+ for(i=0;ibody_len;i++)
+ crc_reg=(crc_reg<<8)^crc_lookup[((crc_reg >> 24)&0xff)^og->body[i]];
+
+ og->header[22]=(unsigned char)(crc_reg&0xff);
+ og->header[23]=(unsigned char)((crc_reg>>8)&0xff);
+ og->header[24]=(unsigned char)((crc_reg>>16)&0xff);
+ og->header[25]=(unsigned char)((crc_reg>>24)&0xff);
+ }
+}
+
+/* submit data to the internal buffer of the framing engine */
+int ogg_stream_iovecin(ogg_stream_state *os, ogg_iovec_t *iov, int count,
+ long e_o_s, ogg_int64_t granulepos){
+
+ long bytes = 0, lacing_vals;
+ int i;
+
+ if(ogg_stream_check(os)) return -1;
+ if(!iov) return 0;
+
+ for (i = 0; i < count; ++i){
+ if(iov[i].iov_len>LONG_MAX) return -1;
+ if(bytes>LONG_MAX-(long)iov[i].iov_len) return -1;
+ bytes += (long)iov[i].iov_len;
+ }
+ lacing_vals=bytes/255+1;
+
+ if(os->body_returned){
+ /* advance packet data according to the body_returned pointer. We
+ had to keep it around to return a pointer into the buffer last
+ call */
+
+ os->body_fill-=os->body_returned;
+ if(os->body_fill)
+ memmove(os->body_data,os->body_data+os->body_returned,
+ os->body_fill);
+ os->body_returned=0;
+ }
+
+ /* make sure we have the buffer storage */
+ if(_os_body_expand(os,bytes) || _os_lacing_expand(os,lacing_vals))
+ return -1;
+
+ /* Copy in the submitted packet. Yes, the copy is a waste; this is
+ the liability of overly clean abstraction for the time being. It
+ will actually be fairly easy to eliminate the extra copy in the
+ future */
+
+ for (i = 0; i < count; ++i) {
+ memcpy(os->body_data+os->body_fill, iov[i].iov_base, iov[i].iov_len);
+ os->body_fill += (int)iov[i].iov_len;
+ }
+
+ /* Store lacing vals for this packet */
+ for(i=0;ilacing_vals[os->lacing_fill+i]=255;
+ os->granule_vals[os->lacing_fill+i]=os->granulepos;
+ }
+ os->lacing_vals[os->lacing_fill+i]=bytes%255;
+ os->granulepos=os->granule_vals[os->lacing_fill+i]=granulepos;
+
+ /* flag the first segment as the beginning of the packet */
+ os->lacing_vals[os->lacing_fill]|= 0x100;
+
+ os->lacing_fill+=lacing_vals;
+
+ /* for the sake of completeness */
+ os->packetno++;
+
+ if(e_o_s)os->e_o_s=1;
+
+ return(0);
+}
+
+int ogg_stream_packetin(ogg_stream_state *os,ogg_packet *op){
+ ogg_iovec_t iov;
+ iov.iov_base = op->packet;
+ iov.iov_len = op->bytes;
+ return ogg_stream_iovecin(os, &iov, 1, op->e_o_s, op->granulepos);
+}
+
+/* Conditionally flush a page; force==0 will only flush nominal-size
+ pages, force==1 forces us to flush a page regardless of page size
+ so long as there's any data available at all. */
+static int ogg_stream_flush_i(ogg_stream_state *os,ogg_page *og, int force, int nfill){
+ int i;
+ int vals=0;
+ int maxvals=(os->lacing_fill>255?255:os->lacing_fill);
+ int bytes=0;
+ long acc=0;
+ ogg_int64_t granule_pos=-1;
+
+ if(ogg_stream_check(os)) return(0);
+ if(maxvals==0) return(0);
+
+ /* construct a page */
+ /* decide how many segments to include */
+
+ /* If this is the initial header case, the first page must only include
+ the initial header packet */
+ if(os->b_o_s==0){ /* 'initial header page' case */
+ granule_pos=0;
+ for(vals=0;valslacing_vals[vals]&0x0ff)<255){
+ vals++;
+ break;
+ }
+ }
+ }else{
+
+ /* The extra packets_done, packet_just_done logic here attempts to do two things:
+ 1) Don't unneccessarily span pages.
+ 2) Unless necessary, don't flush pages if there are less than four packets on
+ them; this expands page size to reduce unneccessary overhead if incoming packets
+ are large.
+ These are not necessary behaviors, just 'always better than naive flushing'
+ without requiring an application to explicitly request a specific optimized
+ behavior. We'll want an explicit behavior setup pathway eventually as well. */
+
+ int packets_done=0;
+ int packet_just_done=0;
+ for(vals=0;valsnfill && packet_just_done>=4){
+ force=1;
+ break;
+ }
+ acc+=os->lacing_vals[vals]&0x0ff;
+ if((os->lacing_vals[vals]&0xff)<255){
+ granule_pos=os->granule_vals[vals];
+ packet_just_done=++packets_done;
+ }else
+ packet_just_done=0;
+ }
+ if(vals==255)force=1;
+ }
+
+ if(!force) return(0);
+
+ /* construct the header in temp storage */
+ memcpy(os->header,"OggS",4);
+
+ /* stream structure version */
+ os->header[4]=0x00;
+
+ /* continued packet flag? */
+ os->header[5]=0x00;
+ if((os->lacing_vals[0]&0x100)==0)os->header[5]|=0x01;
+ /* first page flag? */
+ if(os->b_o_s==0)os->header[5]|=0x02;
+ /* last page flag? */
+ if(os->e_o_s && os->lacing_fill==vals)os->header[5]|=0x04;
+ os->b_o_s=1;
+
+ /* 64 bits of PCM position */
+ for(i=6;i<14;i++){
+ os->header[i]=(unsigned char)(granule_pos&0xff);
+ granule_pos>>=8;
+ }
+
+ /* 32 bits of stream serial number */
+ {
+ long serialno=os->serialno;
+ for(i=14;i<18;i++){
+ os->header[i]=(unsigned char)(serialno&0xff);
+ serialno>>=8;
+ }
+ }
+
+ /* 32 bits of page counter (we have both counter and page header
+ because this val can roll over) */
+ if(os->pageno==-1)os->pageno=0; /* because someone called
+ stream_reset; this would be a
+ strange thing to do in an
+ encode stream, but it has
+ plausible uses */
+ {
+ long pageno=os->pageno++;
+ for(i=18;i<22;i++){
+ os->header[i]=(unsigned char)(pageno&0xff);
+ pageno>>=8;
+ }
+ }
+
+ /* zero for computation; filled in later */
+ os->header[22]=0;
+ os->header[23]=0;
+ os->header[24]=0;
+ os->header[25]=0;
+
+ /* segment table */
+ os->header[26]=(unsigned char)(vals&0xff);
+ for(i=0;iheader[i+27]=(unsigned char)(os->lacing_vals[i]&0xff);
+
+ /* set pointers in the ogg_page struct */
+ og->header=os->header;
+ og->header_len=os->header_fill=vals+27;
+ og->body=os->body_data+os->body_returned;
+ og->body_len=bytes;
+
+ /* advance the lacing data and set the body_returned pointer */
+
+ os->lacing_fill-=vals;
+ memmove(os->lacing_vals,os->lacing_vals+vals,os->lacing_fill*sizeof(*os->lacing_vals));
+ memmove(os->granule_vals,os->granule_vals+vals,os->lacing_fill*sizeof(*os->granule_vals));
+ os->body_returned+=bytes;
+
+ /* calculate the checksum */
+
+ ogg_page_checksum_set(og);
+
+ /* done */
+ return(1);
+}
+
+/* This will flush remaining packets into a page (returning nonzero),
+ even if there is not enough data to trigger a flush normally
+ (undersized page). If there are no packets or partial packets to
+ flush, ogg_stream_flush returns 0. Note that ogg_stream_flush will
+ try to flush a normal sized page like ogg_stream_pageout; a call to
+ ogg_stream_flush does not guarantee that all packets have flushed.
+ Only a return value of 0 from ogg_stream_flush indicates all packet
+ data is flushed into pages.
+
+ since ogg_stream_flush will flush the last page in a stream even if
+ it's undersized, you almost certainly want to use ogg_stream_pageout
+ (and *not* ogg_stream_flush) unless you specifically need to flush
+ a page regardless of size in the middle of a stream. */
+
+int ogg_stream_flush(ogg_stream_state *os,ogg_page *og){
+ return ogg_stream_flush_i(os,og,1,4096);
+}
+
+/* Like the above, but an argument is provided to adjust the nominal
+ page size for applications which are smart enough to provide their
+ own delay based flushing */
+
+int ogg_stream_flush_fill(ogg_stream_state *os,ogg_page *og, int nfill){
+ return ogg_stream_flush_i(os,og,1,nfill);
+}
+
+/* This constructs pages from buffered packet segments. The pointers
+returned are to static buffers; do not free. The returned buffers are
+good only until the next call (using the same ogg_stream_state) */
+
+int ogg_stream_pageout(ogg_stream_state *os, ogg_page *og){
+ int force=0;
+ if(ogg_stream_check(os)) return 0;
+
+ if((os->e_o_s&&os->lacing_fill) || /* 'were done, now flush' case */
+ (os->lacing_fill&&!os->b_o_s)) /* 'initial header page' case */
+ force=1;
+
+ return(ogg_stream_flush_i(os,og,force,4096));
+}
+
+/* Like the above, but an argument is provided to adjust the nominal
+page size for applications which are smart enough to provide their
+own delay based flushing */
+
+int ogg_stream_pageout_fill(ogg_stream_state *os, ogg_page *og, int nfill){
+ int force=0;
+ if(ogg_stream_check(os)) return 0;
+
+ if((os->e_o_s&&os->lacing_fill) || /* 'were done, now flush' case */
+ (os->lacing_fill&&!os->b_o_s)) /* 'initial header page' case */
+ force=1;
+
+ return(ogg_stream_flush_i(os,og,force,nfill));
+}
+
+int ogg_stream_eos(ogg_stream_state *os){
+ if(ogg_stream_check(os)) return 1;
+ return os->e_o_s;
+}
+
+/* DECODING PRIMITIVES: packet streaming layer **********************/
+
+/* This has two layers to place more of the multi-serialno and paging
+ control in the application's hands. First, we expose a data buffer
+ using ogg_sync_buffer(). The app either copies into the
+ buffer, or passes it directly to read(), etc. We then call
+ ogg_sync_wrote() to tell how many bytes we just added.
+
+ Pages are returned (pointers into the buffer in ogg_sync_state)
+ by ogg_sync_pageout(). The page is then submitted to
+ ogg_stream_pagein() along with the appropriate
+ ogg_stream_state* (ie, matching serialno). We then get raw
+ packets out calling ogg_stream_packetout() with a
+ ogg_stream_state. */
+
+/* initialize the struct to a known state */
+int ogg_sync_init(ogg_sync_state *oy){
+ if(oy){
+ oy->storage = -1; /* used as a readiness flag */
+ memset(oy,0,sizeof(*oy));
+ }
+ return(0);
+}
+
+/* clear non-flat storage within */
+int ogg_sync_clear(ogg_sync_state *oy){
+ if(oy){
+ if(oy->data)_ogg_free(oy->data);
+ memset(oy,0,sizeof(*oy));
+ }
+ return(0);
+}
+
+int ogg_sync_destroy(ogg_sync_state *oy){
+ if(oy){
+ ogg_sync_clear(oy);
+ _ogg_free(oy);
+ }
+ return(0);
+}
+
+int ogg_sync_check(ogg_sync_state *oy){
+ if(oy->storage<0) return -1;
+ return 0;
+}
+
+char *ogg_sync_buffer(ogg_sync_state *oy, long size){
+ if(ogg_sync_check(oy)) return NULL;
+
+ /* first, clear out any space that has been previously returned */
+ if(oy->returned){
+ oy->fill-=oy->returned;
+ if(oy->fill>0)
+ memmove(oy->data,oy->data+oy->returned,oy->fill);
+ oy->returned=0;
+ }
+
+ if(size>oy->storage-oy->fill){
+ /* We need to extend the internal buffer */
+ long newsize=size+oy->fill+4096; /* an extra page to be nice */
+ void *ret;
+
+ if(oy->data)
+ ret=_ogg_realloc(oy->data,newsize);
+ else
+ ret=_ogg_malloc(newsize);
+ if(!ret){
+ ogg_sync_clear(oy);
+ return NULL;
+ }
+ oy->data=ret;
+ oy->storage=newsize;
+ }
+
+ /* expose a segment at least as large as requested at the fill mark */
+ return((char *)oy->data+oy->fill);
+}
+
+int ogg_sync_wrote(ogg_sync_state *oy, long bytes){
+ if(ogg_sync_check(oy))return -1;
+ if(oy->fill+bytes>oy->storage)return -1;
+ oy->fill+=bytes;
+ return(0);
+}
+
+/* sync the stream. This is meant to be useful for finding page
+ boundaries.
+
+ return values for this:
+ -n) skipped n bytes
+ 0) page not ready; more data (no bytes skipped)
+ n) page synced at current location; page length n bytes
+
+*/
+
+long ogg_sync_pageseek(ogg_sync_state *oy,ogg_page *og){
+ unsigned char *page=oy->data+oy->returned;
+ unsigned char *next;
+ long bytes=oy->fill-oy->returned;
+
+ if(ogg_sync_check(oy))return 0;
+
+ if(oy->headerbytes==0){
+ int headerbytes,i;
+ if(bytes<27)return(0); /* not enough for a header */
+
+ /* verify capture pattern */
+ if(memcmp(page,"OggS",4))goto sync_fail;
+
+ headerbytes=page[26]+27;
+ if(bytesbodybytes+=page[27+i];
+ oy->headerbytes=headerbytes;
+ }
+
+ if(oy->bodybytes+oy->headerbytes>bytes)return(0);
+
+ /* The whole test page is buffered. Verify the checksum */
+ {
+ /* Grab the checksum bytes, set the header field to zero */
+ char chksum[4];
+ ogg_page log;
+
+ memcpy(chksum,page+22,4);
+ memset(page+22,0,4);
+
+ /* set up a temp page struct and recompute the checksum */
+ log.header=page;
+ log.header_len=oy->headerbytes;
+ log.body=page+oy->headerbytes;
+ log.body_len=oy->bodybytes;
+ ogg_page_checksum_set(&log);
+
+ /* Compare */
+ if(memcmp(chksum,page+22,4)){
+ /* D'oh. Mismatch! Corrupt page (or miscapture and not a page
+ at all) */
+ /* replace the computed checksum with the one actually read in */
+ memcpy(page+22,chksum,4);
+
+ /* Bad checksum. Lose sync */
+ goto sync_fail;
+ }
+ }
+
+ /* yes, have a whole page all ready to go */
+ {
+ unsigned char *page=oy->data+oy->returned;
+ long bytes;
+
+ if(og){
+ og->header=page;
+ og->header_len=oy->headerbytes;
+ og->body=page+oy->headerbytes;
+ og->body_len=oy->bodybytes;
+ }
+
+ oy->unsynced=0;
+ oy->returned+=(bytes=oy->headerbytes+oy->bodybytes);
+ oy->headerbytes=0;
+ oy->bodybytes=0;
+ return(bytes);
+ }
+
+ sync_fail:
+
+ oy->headerbytes=0;
+ oy->bodybytes=0;
+
+ /* search for possible capture */
+ next=memchr(page+1,'O',bytes-1);
+ if(!next)
+ next=oy->data+oy->fill;
+
+ oy->returned=(int)(next-oy->data);
+ return((long)-(next-page));
+}
+
+/* sync the stream and get a page. Keep trying until we find a page.
+ Suppress 'sync errors' after reporting the first.
+
+ return values:
+ -1) recapture (hole in data)
+ 0) need more data
+ 1) page returned
+
+ Returns pointers into buffered data; invalidated by next call to
+ _stream, _clear, _init, or _buffer */
+
+int ogg_sync_pageout(ogg_sync_state *oy, ogg_page *og){
+
+ if(ogg_sync_check(oy))return 0;
+
+ /* all we need to do is verify a page at the head of the stream
+ buffer. If it doesn't verify, we look for the next potential
+ frame */
+
+ for(;;){
+ long ret=ogg_sync_pageseek(oy,og);
+ if(ret>0){
+ /* have a page */
+ return(1);
+ }
+ if(ret==0){
+ /* need more data */
+ return(0);
+ }
+
+ /* head did not start a synced page... skipped some bytes */
+ if(!oy->unsynced){
+ oy->unsynced=1;
+ return(-1);
+ }
+
+ /* loop. keep looking */
+
+ }
+}
+
+/* add the incoming page to the stream state; we decompose the page
+ into packet segments here as well. */
+
+int ogg_stream_pagein(ogg_stream_state *os, ogg_page *og){
+ unsigned char *header=og->header;
+ unsigned char *body=og->body;
+ long bodysize=og->body_len;
+ int segptr=0;
+
+ int version=ogg_page_version(og);
+ int continued=ogg_page_continued(og);
+ int bos=ogg_page_bos(og);
+ int eos=ogg_page_eos(og);
+ ogg_int64_t granulepos=ogg_page_granulepos(og);
+ int serialno=ogg_page_serialno(og);
+ long pageno=ogg_page_pageno(og);
+ int segments=header[26];
+
+ if(ogg_stream_check(os)) return -1;
+
+ /* clean up 'returned data' */
+ {
+ long lr=os->lacing_returned;
+ long br=os->body_returned;
+
+ /* body data */
+ if(br){
+ os->body_fill-=br;
+ if(os->body_fill)
+ memmove(os->body_data,os->body_data+br,os->body_fill);
+ os->body_returned=0;
+ }
+
+ if(lr){
+ /* segment table */
+ if(os->lacing_fill-lr){
+ memmove(os->lacing_vals,os->lacing_vals+lr,
+ (os->lacing_fill-lr)*sizeof(*os->lacing_vals));
+ memmove(os->granule_vals,os->granule_vals+lr,
+ (os->lacing_fill-lr)*sizeof(*os->granule_vals));
+ }
+ os->lacing_fill-=lr;
+ os->lacing_packet-=lr;
+ os->lacing_returned=0;
+ }
+ }
+
+ /* check the serial number */
+ if(serialno!=os->serialno)return(-1);
+ if(version>0)return(-1);
+
+ if(_os_lacing_expand(os,segments+1)) return -1;
+
+ /* are we in sequence? */
+ if(pageno!=os->pageno){
+ int i;
+
+ /* unroll previous partial packet (if any) */
+ for(i=os->lacing_packet;ilacing_fill;i++)
+ os->body_fill-=os->lacing_vals[i]&0xff;
+ os->lacing_fill=os->lacing_packet;
+
+ /* make a note of dropped data in segment table */
+ if(os->pageno!=-1){
+ os->lacing_vals[os->lacing_fill++]=0x400;
+ os->lacing_packet++;
+ }
+ }
+
+ /* are we a 'continued packet' page? If so, we may need to skip
+ some segments */
+ if(continued){
+ if(os->lacing_fill<1 ||
+ os->lacing_vals[os->lacing_fill-1]==0x400){
+ bos=0;
+ for(;segptrbody_data+os->body_fill,body,bodysize);
+ os->body_fill+=bodysize;
+ }
+
+ {
+ int saved=-1;
+ while(segptrlacing_vals[os->lacing_fill]=val;
+ os->granule_vals[os->lacing_fill]=-1;
+
+ if(bos){
+ os->lacing_vals[os->lacing_fill]|=0x100;
+ bos=0;
+ }
+
+ if(val<255)saved=os->lacing_fill;
+
+ os->lacing_fill++;
+ segptr++;
+
+ if(val<255)os->lacing_packet=os->lacing_fill;
+ }
+
+ /* set the granulepos on the last granuleval of the last full packet */
+ if(saved!=-1){
+ os->granule_vals[saved]=granulepos;
+ }
+
+ }
+
+ if(eos){
+ os->e_o_s=1;
+ if(os->lacing_fill>0)
+ os->lacing_vals[os->lacing_fill-1]|=0x200;
+ }
+
+ os->pageno=pageno+1;
+
+ return(0);
+}
+
+/* clear things to an initial state. Good to call, eg, before seeking */
+int ogg_sync_reset(ogg_sync_state *oy){
+ if(ogg_sync_check(oy))return -1;
+
+ oy->fill=0;
+ oy->returned=0;
+ oy->unsynced=0;
+ oy->headerbytes=0;
+ oy->bodybytes=0;
+ return(0);
+}
+
+int ogg_stream_reset(ogg_stream_state *os){
+ if(ogg_stream_check(os)) return -1;
+
+ os->body_fill=0;
+ os->body_returned=0;
+
+ os->lacing_fill=0;
+ os->lacing_packet=0;
+ os->lacing_returned=0;
+
+ os->header_fill=0;
+
+ os->e_o_s=0;
+ os->b_o_s=0;
+ os->pageno=-1;
+ os->packetno=0;
+ os->granulepos=0;
+
+ return(0);
+}
+
+int ogg_stream_reset_serialno(ogg_stream_state *os,int serialno){
+ if(ogg_stream_check(os)) return -1;
+ ogg_stream_reset(os);
+ os->serialno=serialno;
+ return(0);
+}
+
+static int _packetout(ogg_stream_state *os,ogg_packet *op,int adv){
+
+ /* The last part of decode. We have the stream broken into packet
+ segments. Now we need to group them into packets (or return the
+ out of sync markers) */
+
+ int ptr=os->lacing_returned;
+
+ if(os->lacing_packet<=ptr)return(0);
+
+ if(os->lacing_vals[ptr]&0x400){
+ /* we need to tell the codec there's a gap; it might need to
+ handle previous packet dependencies. */
+ os->lacing_returned++;
+ os->packetno++;
+ return(-1);
+ }
+
+ if(!op && !adv)return(1); /* just using peek as an inexpensive way
+ to ask if there's a whole packet
+ waiting */
+
+ /* Gather the whole packet. We'll have no holes or a partial packet */
+ {
+ int size=os->lacing_vals[ptr]&0xff;
+ long bytes=size;
+ int eos=os->lacing_vals[ptr]&0x200; /* last packet of the stream? */
+ int bos=os->lacing_vals[ptr]&0x100; /* first packet of the stream? */
+
+ while(size==255){
+ int val=os->lacing_vals[++ptr];
+ size=val&0xff;
+ if(val&0x200)eos=0x200;
+ bytes+=size;
+ }
+
+ if(op){
+ op->e_o_s=eos;
+ op->b_o_s=bos;
+ op->packet=os->body_data+os->body_returned;
+ op->packetno=os->packetno;
+ op->granulepos=os->granule_vals[ptr];
+ op->bytes=bytes;
+ }
+
+ if(adv){
+ os->body_returned+=bytes;
+ os->lacing_returned=ptr+1;
+ os->packetno++;
+ }
+ }
+ return(1);
+}
+
+int ogg_stream_packetout(ogg_stream_state *os,ogg_packet *op){
+ if(ogg_stream_check(os)) return 0;
+ return _packetout(os,op,1);
+}
+
+int ogg_stream_packetpeek(ogg_stream_state *os,ogg_packet *op){
+ if(ogg_stream_check(os)) return 0;
+ return _packetout(os,op,0);
+}
+
+void ogg_packet_clear(ogg_packet *op) {
+ _ogg_free(op->packet);
+ memset(op, 0, sizeof(*op));
+}
+
+#ifdef _V_SELFTEST
+#include
+
+ogg_stream_state os_en, os_de;
+ogg_sync_state oy;
+
+void checkpacket(ogg_packet *op,long len, int no, long pos){
+ long j;
+ static int sequence=0;
+ static int lastno=0;
+
+ if(op->bytes!=len){
+ fprintf(stderr,"incorrect packet length (%ld != %ld)!\n",op->bytes,len);
+ exit(1);
+ }
+ if(op->granulepos!=pos){
+ fprintf(stderr,"incorrect packet granpos (%ld != %ld)!\n",(long)op->granulepos,pos);
+ exit(1);
+ }
+
+ /* packet number just follows sequence/gap; adjust the input number
+ for that */
+ if(no==0){
+ sequence=0;
+ }else{
+ sequence++;
+ if(no>lastno+1)
+ sequence++;
+ }
+ lastno=no;
+ if(op->packetno!=sequence){
+ fprintf(stderr,"incorrect packet sequence %ld != %d\n",
+ (long)(op->packetno),sequence);
+ exit(1);
+ }
+
+ /* Test data */
+ for(j=0;jbytes;j++)
+ if(op->packet[j]!=((j+no)&0xff)){
+ fprintf(stderr,"body data mismatch (1) at pos %ld: %x!=%lx!\n\n",
+ j,op->packet[j],(j+no)&0xff);
+ exit(1);
+ }
+}
+
+void check_page(unsigned char *data,const int *header,ogg_page *og){
+ long j;
+ /* Test data */
+ for(j=0;jbody_len;j++)
+ if(og->body[j]!=data[j]){
+ fprintf(stderr,"body data mismatch (2) at pos %ld: %x!=%x!\n\n",
+ j,data[j],og->body[j]);
+ exit(1);
+ }
+
+ /* Test header */
+ for(j=0;jheader_len;j++){
+ if(og->header[j]!=header[j]){
+ fprintf(stderr,"header content mismatch at pos %ld:\n",j);
+ for(j=0;jheader[j]);
+ fprintf(stderr,"\n");
+ exit(1);
+ }
+ }
+ if(og->header_len!=header[26]+27){
+ fprintf(stderr,"header length incorrect! (%ld!=%d)\n",
+ og->header_len,header[26]+27);
+ exit(1);
+ }
+}
+
+void print_header(ogg_page *og){
+ int j;
+ fprintf(stderr,"\nHEADER:\n");
+ fprintf(stderr," capture: %c %c %c %c version: %d flags: %x\n",
+ og->header[0],og->header[1],og->header[2],og->header[3],
+ (int)og->header[4],(int)og->header[5]);
+
+ fprintf(stderr," granulepos: %d serialno: %d pageno: %ld\n",
+ (og->header[9]<<24)|(og->header[8]<<16)|
+ (og->header[7]<<8)|og->header[6],
+ (og->header[17]<<24)|(og->header[16]<<16)|
+ (og->header[15]<<8)|og->header[14],
+ ((long)(og->header[21])<<24)|(og->header[20]<<16)|
+ (og->header[19]<<8)|og->header[18]);
+
+ fprintf(stderr," checksum: %02x:%02x:%02x:%02x\n segments: %d (",
+ (int)og->header[22],(int)og->header[23],
+ (int)og->header[24],(int)og->header[25],
+ (int)og->header[26]);
+
+ for(j=27;jheader_len;j++)
+ fprintf(stderr,"%d ",(int)og->header[j]);
+ fprintf(stderr,")\n\n");
+}
+
+void copy_page(ogg_page *og){
+ unsigned char *temp=_ogg_malloc(og->header_len);
+ memcpy(temp,og->header,og->header_len);
+ og->header=temp;
+
+ temp=_ogg_malloc(og->body_len);
+ memcpy(temp,og->body,og->body_len);
+ og->body=temp;
+}
+
+void free_page(ogg_page *og){
+ _ogg_free (og->header);
+ _ogg_free (og->body);
+}
+
+void error(void){
+ fprintf(stderr,"error!\n");
+ exit(1);
+}
+
+/* 17 only */
+const int head1_0[] = {0x4f,0x67,0x67,0x53,0,0x06,
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+ 0x01,0x02,0x03,0x04,0,0,0,0,
+ 0x15,0xed,0xec,0x91,
+ 1,
+ 17};
+
+/* 17, 254, 255, 256, 500, 510, 600 byte, pad */
+const int head1_1[] = {0x4f,0x67,0x67,0x53,0,0x02,
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+ 0x01,0x02,0x03,0x04,0,0,0,0,
+ 0x59,0x10,0x6c,0x2c,
+ 1,
+ 17};
+const int head2_1[] = {0x4f,0x67,0x67,0x53,0,0x04,
+ 0x07,0x18,0x00,0x00,0x00,0x00,0x00,0x00,
+ 0x01,0x02,0x03,0x04,1,0,0,0,
+ 0x89,0x33,0x85,0xce,
+ 13,
+ 254,255,0,255,1,255,245,255,255,0,
+ 255,255,90};
+
+/* nil packets; beginning,middle,end */
+const int head1_2[] = {0x4f,0x67,0x67,0x53,0,0x02,
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+ 0x01,0x02,0x03,0x04,0,0,0,0,
+ 0xff,0x7b,0x23,0x17,
+ 1,
+ 0};
+const int head2_2[] = {0x4f,0x67,0x67,0x53,0,0x04,
+ 0x07,0x28,0x00,0x00,0x00,0x00,0x00,0x00,
+ 0x01,0x02,0x03,0x04,1,0,0,0,
+ 0x5c,0x3f,0x66,0xcb,
+ 17,
+ 17,254,255,0,0,255,1,0,255,245,255,255,0,
+ 255,255,90,0};
+
+/* large initial packet */
+const int head1_3[] = {0x4f,0x67,0x67,0x53,0,0x02,
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+ 0x01,0x02,0x03,0x04,0,0,0,0,
+ 0x01,0x27,0x31,0xaa,
+ 18,
+ 255,255,255,255,255,255,255,255,
+ 255,255,255,255,255,255,255,255,255,10};
+
+const int head2_3[] = {0x4f,0x67,0x67,0x53,0,0x04,
+ 0x07,0x08,0x00,0x00,0x00,0x00,0x00,0x00,
+ 0x01,0x02,0x03,0x04,1,0,0,0,
+ 0x7f,0x4e,0x8a,0xd2,
+ 4,
+ 255,4,255,0};
+
+
+/* continuing packet test */
+const int head1_4[] = {0x4f,0x67,0x67,0x53,0,0x02,
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+ 0x01,0x02,0x03,0x04,0,0,0,0,
+ 0xff,0x7b,0x23,0x17,
+ 1,
+ 0};
+
+const int head2_4[] = {0x4f,0x67,0x67,0x53,0,0x00,
+ 0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
+ 0x01,0x02,0x03,0x04,1,0,0,0,
+ 0xf8,0x3c,0x19,0x79,
+ 255,
+ 255,255,255,255,255,255,255,255,
+ 255,255,255,255,255,255,255,255,
+ 255,255,255,255,255,255,255,255,
+ 255,255,255,255,255,255,255,255,
+ 255,255,255,255,255,255,255,255,
+ 255,255,255,255,255,255,255,255,
+ 255,255,255,255,255,255,255,255,
+ 255,255,255,255,255,255,255,255,
+ 255,255,255,255,255,255,255,255,
+ 255,255,255,255,255,255,255,255,
+ 255,255,255,255,255,255,255,255,
+ 255,255,255,255,255,255,255,255,
+ 255,255,255,255,255,255,255,255,
+ 255,255,255,255,255,255,255,255,
+ 255,255,255,255,255,255,255,255,
+ 255,255,255,255,255,255,255,255,
+ 255,255,255,255,255,255,255,255,
+ 255,255,255,255,255,255,255,255,
+ 255,255,255,255,255,255,255,255,
+ 255,255,255,255,255,255,255,255,
+ 255,255,255,255,255,255,255,255,
+ 255,255,255,255,255,255,255,255,
+ 255,255,255,255,255,255,255,255,
+ 255,255,255,255,255,255,255,255,
+ 255,255,255,255,255,255,255,255,
+ 255,255,255,255,255,255,255,255,
+ 255,255,255,255,255,255,255,255,
+ 255,255,255,255,255,255,255,255,
+ 255,255,255,255,255,255,255,255,
+ 255,255,255,255,255,255,255,255,
+ 255,255,255,255,255,255,255,255,
+ 255,255,255,255,255,255,255};
+
+const int head3_4[] = {0x4f,0x67,0x67,0x53,0,0x05,
+ 0x07,0x0c,0x00,0x00,0x00,0x00,0x00,0x00,
+ 0x01,0x02,0x03,0x04,2,0,0,0,
+ 0x38,0xe6,0xb6,0x28,
+ 6,
+ 255,220,255,4,255,0};
+
+
+/* spill expansion test */
+const int head1_4b[] = {0x4f,0x67,0x67,0x53,0,0x02,
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+ 0x01,0x02,0x03,0x04,0,0,0,0,
+ 0xff,0x7b,0x23,0x17,
+ 1,
+ 0};
+
+const int head2_4b[] = {0x4f,0x67,0x67,0x53,0,0x00,
+ 0x07,0x10,0x00,0x00,0x00,0x00,0x00,0x00,
+ 0x01,0x02,0x03,0x04,1,0,0,0,
+ 0xce,0x8f,0x17,0x1a,
+ 23,
+ 255,255,255,255,255,255,255,255,
+ 255,255,255,255,255,255,255,255,255,10,255,4,255,0,0};
+
+
+const int head3_4b[] = {0x4f,0x67,0x67,0x53,0,0x04,
+ 0x07,0x14,0x00,0x00,0x00,0x00,0x00,0x00,
+ 0x01,0x02,0x03,0x04,2,0,0,0,
+ 0x9b,0xb2,0x50,0xa1,
+ 1,
+ 0};
+
+/* page with the 255 segment limit */
+const int head1_5[] = {0x4f,0x67,0x67,0x53,0,0x02,
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+ 0x01,0x02,0x03,0x04,0,0,0,0,
+ 0xff,0x7b,0x23,0x17,
+ 1,
+ 0};
+
+const int head2_5[] = {0x4f,0x67,0x67,0x53,0,0x00,
+ 0x07,0xfc,0x03,0x00,0x00,0x00,0x00,0x00,
+ 0x01,0x02,0x03,0x04,1,0,0,0,
+ 0xed,0x2a,0x2e,0xa7,
+ 255,
+ 10,10,10,10,10,10,10,10,
+ 10,10,10,10,10,10,10,10,
+ 10,10,10,10,10,10,10,10,
+ 10,10,10,10,10,10,10,10,
+ 10,10,10,10,10,10,10,10,
+ 10,10,10,10,10,10,10,10,
+ 10,10,10,10,10,10,10,10,
+ 10,10,10,10,10,10,10,10,
+ 10,10,10,10,10,10,10,10,
+ 10,10,10,10,10,10,10,10,
+ 10,10,10,10,10,10,10,10,
+ 10,10,10,10,10,10,10,10,
+ 10,10,10,10,10,10,10,10,
+ 10,10,10,10,10,10,10,10,
+ 10,10,10,10,10,10,10,10,
+ 10,10,10,10,10,10,10,10,
+ 10,10,10,10,10,10,10,10,
+ 10,10,10,10,10,10,10,10,
+ 10,10,10,10,10,10,10,10,
+ 10,10,10,10,10,10,10,10,
+ 10,10,10,10,10,10,10,10,
+ 10,10,10,10,10,10,10,10,
+ 10,10,10,10,10,10,10,10,
+ 10,10,10,10,10,10,10,10,
+ 10,10,10,10,10,10,10,10,
+ 10,10,10,10,10,10,10,10,
+ 10,10,10,10,10,10,10,10,
+ 10,10,10,10,10,10,10,10,
+ 10,10,10,10,10,10,10,10,
+ 10,10,10,10,10,10,10,10,
+ 10,10,10,10,10,10,10,10,
+ 10,10,10,10,10,10,10};
+
+const int head3_5[] = {0x4f,0x67,0x67,0x53,0,0x04,
+ 0x07,0x00,0x04,0x00,0x00,0x00,0x00,0x00,
+ 0x01,0x02,0x03,0x04,2,0,0,0,
+ 0x6c,0x3b,0x82,0x3d,
+ 1,
+ 50};
+
+
+/* packet that overspans over an entire page */
+const int head1_6[] = {0x4f,0x67,0x67,0x53,0,0x02,
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+ 0x01,0x02,0x03,0x04,0,0,0,0,
+ 0xff,0x7b,0x23,0x17,
+ 1,
+ 0};
+
+const int head2_6[] = {0x4f,0x67,0x67,0x53,0,0x00,
+ 0x07,0x04,0x00,0x00,0x00,0x00,0x00,0x00,
+ 0x01,0x02,0x03,0x04,1,0,0,0,
+ 0x68,0x22,0x7c,0x3d,
+ 255,
+ 100,
+ 255,255,255,255,255,255,255,255,
+ 255,255,255,255,255,255,255,255,
+ 255,255,255,255,255,255,255,255,
+ 255,255,255,255,255,255,255,255,
+ 255,255,255,255,255,255,255,255,
+ 255,255,255,255,255,255,255,255,
+ 255,255,255,255,255,255,255,255,
+ 255,255,255,255,255,255,255,255,
+ 255,255,255,255,255,255,255,255,
+ 255,255,255,255,255,255,255,255,
+ 255,255,255,255,255,255,255,255,
+ 255,255,255,255,255,255,255,255,
+ 255,255,255,255,255,255,255,255,
+ 255,255,255,255,255,255,255,255,
+ 255,255,255,255,255,255,255,255,
+ 255,255,255,255,255,255,255,255,
+ 255,255,255,255,255,255,255,255,
+ 255,255,255,255,255,255,255,255,
+ 255,255,255,255,255,255,255,255,
+ 255,255,255,255,255,255,255,255,
+ 255,255,255,255,255,255,255,255,
+ 255,255,255,255,255,255,255,255,
+ 255,255,255,255,255,255,255,255,
+ 255,255,255,255,255,255,255,255,
+ 255,255,255,255,255,255,255,255,
+ 255,255,255,255,255,255,255,255,
+ 255,255,255,255,255,255,255,255,
+ 255,255,255,255,255,255,255,255,
+ 255,255,255,255,255,255,255,255,
+ 255,255,255,255,255,255,255,255,
+ 255,255,255,255,255,255,255,255,
+ 255,255,255,255,255,255};
+
+const int head3_6[] = {0x4f,0x67,0x67,0x53,0,0x01,
+ 0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
+ 0x01,0x02,0x03,0x04,2,0,0,0,
+ 0xf4,0x87,0xba,0xf3,
+ 255,
+ 255,255,255,255,255,255,255,255,
+ 255,255,255,255,255,255,255,255,
+ 255,255,255,255,255,255,255,255,
+ 255,255,255,255,255,255,255,255,
+ 255,255,255,255,255,255,255,255,
+ 255,255,255,255,255,255,255,255,
+ 255,255,255,255,255,255,255,255,
+ 255,255,255,255,255,255,255,255,
+ 255,255,255,255,255,255,255,255,
+ 255,255,255,255,255,255,255,255,
+ 255,255,255,255,255,255,255,255,
+ 255,255,255,255,255,255,255,255,
+ 255,255,255,255,255,255,255,255,
+ 255,255,255,255,255,255,255,255,
+ 255,255,255,255,255,255,255,255,
+ 255,255,255,255,255,255,255,255,
+ 255,255,255,255,255,255,255,255,
+ 255,255,255,255,255,255,255,255,
+ 255,255,255,255,255,255,255,255,
+ 255,255,255,255,255,255,255,255,
+ 255,255,255,255,255,255,255,255,
+ 255,255,255,255,255,255,255,255,
+ 255,255,255,255,255,255,255,255,
+ 255,255,255,255,255,255,255,255,
+ 255,255,255,255,255,255,255,255,
+ 255,255,255,255,255,255,255,255,
+ 255,255,255,255,255,255,255,255,
+ 255,255,255,255,255,255,255,255,
+ 255,255,255,255,255,255,255,255,
+ 255,255,255,255,255,255,255,255,
+ 255,255,255,255,255,255,255,255,
+ 255,255,255,255,255,255,255};
+
+const int head4_6[] = {0x4f,0x67,0x67,0x53,0,0x05,
+ 0x07,0x10,0x00,0x00,0x00,0x00,0x00,0x00,
+ 0x01,0x02,0x03,0x04,3,0,0,0,
+ 0xf7,0x2f,0x6c,0x60,
+ 5,
+ 254,255,4,255,0};
+
+/* packet that overspans over an entire page */
+const int head1_7[] = {0x4f,0x67,0x67,0x53,0,0x02,
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+ 0x01,0x02,0x03,0x04,0,0,0,0,
+ 0xff,0x7b,0x23,0x17,
+ 1,
+ 0};
+
+const int head2_7[] = {0x4f,0x67,0x67,0x53,0,0x00,
+ 0x07,0x04,0x00,0x00,0x00,0x00,0x00,0x00,
+ 0x01,0x02,0x03,0x04,1,0,0,0,
+ 0x68,0x22,0x7c,0x3d,
+ 255,
+ 100,
+ 255,255,255,255,255,255,255,255,
+ 255,255,255,255,255,255,255,255,
+ 255,255,255,255,255,255,255,255,
+ 255,255,255,255,255,255,255,255,
+ 255,255,255,255,255,255,255,255,
+ 255,255,255,255,255,255,255,255,
+ 255,255,255,255,255,255,255,255,
+ 255,255,255,255,255,255,255,255,
+ 255,255,255,255,255,255,255,255,
+ 255,255,255,255,255,255,255,255,
+ 255,255,255,255,255,255,255,255,
+ 255,255,255,255,255,255,255,255,
+ 255,255,255,255,255,255,255,255,
+ 255,255,255,255,255,255,255,255,
+ 255,255,255,255,255,255,255,255,
+ 255,255,255,255,255,255,255,255,
+ 255,255,255,255,255,255,255,255,
+ 255,255,255,255,255,255,255,255,
+ 255,255,255,255,255,255,255,255,
+ 255,255,255,255,255,255,255,255,
+ 255,255,255,255,255,255,255,255,
+ 255,255,255,255,255,255,255,255,
+ 255,255,255,255,255,255,255,255,
+ 255,255,255,255,255,255,255,255,
+ 255,255,255,255,255,255,255,255,
+ 255,255,255,255,255,255,255,255,
+ 255,255,255,255,255,255,255,255,
+ 255,255,255,255,255,255,255,255,
+ 255,255,255,255,255,255,255,255,
+ 255,255,255,255,255,255,255,255,
+ 255,255,255,255,255,255,255,255,
+ 255,255,255,255,255,255};
+
+const int head3_7[] = {0x4f,0x67,0x67,0x53,0,0x05,
+ 0x07,0x08,0x00,0x00,0x00,0x00,0x00,0x00,
+ 0x01,0x02,0x03,0x04,2,0,0,0,
+ 0xd4,0xe0,0x60,0xe5,
+ 1,
+ 0};
+
+void test_pack(const int *pl, const int **headers, int byteskip,
+ int pageskip, int packetskip){
+ unsigned char *data=_ogg_malloc(1024*1024); /* for scripted test cases only */
+ long inptr=0;
+ long outptr=0;
+ long deptr=0;
+ long depacket=0;
+ long granule_pos=7,pageno=0;
+ int i,j,packets,pageout=pageskip;
+ int eosflag=0;
+ int bosflag=0;
+
+ int byteskipcount=0;
+
+ ogg_stream_reset(&os_en);
+ ogg_stream_reset(&os_de);
+ ogg_sync_reset(&oy);
+
+ for(packets=0;packetsbyteskip){
+ memcpy(next,og.header,byteskipcount-byteskip);
+ next+=byteskipcount-byteskip;
+ byteskipcount=byteskip;
+ }
+
+ byteskipcount+=og.body_len;
+ if(byteskipcount>byteskip){
+ memcpy(next,og.body,byteskipcount-byteskip);
+ next+=byteskipcount-byteskip;
+ byteskipcount=byteskip;
+ }
+
+ ogg_sync_wrote(&oy,next-buf);
+
+ while(1){
+ int ret=ogg_sync_pageout(&oy,&og_de);
+ if(ret==0)break;
+ if(ret<0)continue;
+ /* got a page. Happy happy. Verify that it's good. */
+
+ fprintf(stderr,"(%d), ",pageout);
+
+ check_page(data+deptr,headers[pageout],&og_de);
+ deptr+=og_de.body_len;
+ pageout++;
+
+ /* submit it to deconstitution */
+ ogg_stream_pagein(&os_de,&og_de);
+
+ /* packets out? */
+ while(ogg_stream_packetpeek(&os_de,&op_de2)>0){
+ ogg_stream_packetpeek(&os_de,NULL);
+ ogg_stream_packetout(&os_de,&op_de); /* just catching them all */
+
+ /* verify peek and out match */
+ if(memcmp(&op_de,&op_de2,sizeof(op_de))){
+ fprintf(stderr,"packetout != packetpeek! pos=%ld\n",
+ depacket);
+ exit(1);
+ }
+
+ /* verify the packet! */
+ /* check data */
+ if(memcmp(data+depacket,op_de.packet,op_de.bytes)){
+ fprintf(stderr,"packet data mismatch in decode! pos=%ld\n",
+ depacket);
+ exit(1);
+ }
+ /* check bos flag */
+ if(bosflag==0 && op_de.b_o_s==0){
+ fprintf(stderr,"b_o_s flag not set on packet!\n");
+ exit(1);
+ }
+ if(bosflag && op_de.b_o_s){
+ fprintf(stderr,"b_o_s flag incorrectly set on packet!\n");
+ exit(1);
+ }
+ bosflag=1;
+ depacket+=op_de.bytes;
+
+ /* check eos flag */
+ if(eosflag){
+ fprintf(stderr,"Multiple decoded packets with eos flag!\n");
+ exit(1);
+ }
+
+ if(op_de.e_o_s)eosflag=1;
+
+ /* check granulepos flag */
+ if(op_de.granulepos!=-1){
+ fprintf(stderr," granule:%ld ",(long)op_de.granulepos);
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ _ogg_free(data);
+ if(headers[pageno]!=NULL){
+ fprintf(stderr,"did not write last page!\n");
+ exit(1);
+ }
+ if(headers[pageout]!=NULL){
+ fprintf(stderr,"did not decode last page!\n");
+ exit(1);
+ }
+ if(inptr!=outptr){
+ fprintf(stderr,"encoded page data incomplete!\n");
+ exit(1);
+ }
+ if(inptr!=deptr){
+ fprintf(stderr,"decoded page data incomplete!\n");
+ exit(1);
+ }
+ if(inptr!=depacket){
+ fprintf(stderr,"decoded packet data incomplete!\n");
+ exit(1);
+ }
+ if(!eosflag){
+ fprintf(stderr,"Never got a packet with EOS set!\n");
+ exit(1);
+ }
+ fprintf(stderr,"ok.\n");
+}
+
+int main(void){
+
+ ogg_stream_init(&os_en,0x04030201);
+ ogg_stream_init(&os_de,0x04030201);
+ ogg_sync_init(&oy);
+
+ /* Exercise each code path in the framing code. Also verify that
+ the checksums are working. */
+
+ {
+ /* 17 only */
+ const int packets[]={17, -1};
+ const int *headret[]={head1_0,NULL};
+
+ fprintf(stderr,"testing single page encoding... ");
+ test_pack(packets,headret,0,0,0);
+ }
+
+ {
+ /* 17, 254, 255, 256, 500, 510, 600 byte, pad */
+ const int packets[]={17, 254, 255, 256, 500, 510, 600, -1};
+ const int *headret[]={head1_1,head2_1,NULL};
+
+ fprintf(stderr,"testing basic page encoding... ");
+ test_pack(packets,headret,0,0,0);
+ }
+
+ {
+ /* nil packets; beginning,middle,end */
+ const int packets[]={0,17, 254, 255, 0, 256, 0, 500, 510, 600, 0, -1};
+ const int *headret[]={head1_2,head2_2,NULL};
+
+ fprintf(stderr,"testing basic nil packets... ");
+ test_pack(packets,headret,0,0,0);
+ }
+
+ {
+ /* large initial packet */
+ const int packets[]={4345,259,255,-1};
+ const int *headret[]={head1_3,head2_3,NULL};
+
+ fprintf(stderr,"testing initial-packet lacing > 4k... ");
+ test_pack(packets,headret,0,0,0);
+ }
+
+ {
+ /* continuing packet test; with page spill expansion, we have to
+ overflow the lacing table. */
+ const int packets[]={0,65500,259,255,-1};
+ const int *headret[]={head1_4,head2_4,head3_4,NULL};
+
+ fprintf(stderr,"testing single packet page span... ");
+ test_pack(packets,headret,0,0,0);
+ }
+
+ {
+ /* spill expand packet test */
+ const int packets[]={0,4345,259,255,0,0,-1};
+ const int *headret[]={head1_4b,head2_4b,head3_4b,NULL};
+
+ fprintf(stderr,"testing page spill expansion... ");
+ test_pack(packets,headret,0,0,0);
+ }
+
+ /* page with the 255 segment limit */
+ {
+
+ const int packets[]={0,10,10,10,10,10,10,10,10,
+ 10,10,10,10,10,10,10,10,
+ 10,10,10,10,10,10,10,10,
+ 10,10,10,10,10,10,10,10,
+ 10,10,10,10,10,10,10,10,
+ 10,10,10,10,10,10,10,10,
+ 10,10,10,10,10,10,10,10,
+ 10,10,10,10,10,10,10,10,
+ 10,10,10,10,10,10,10,10,
+ 10,10,10,10,10,10,10,10,
+ 10,10,10,10,10,10,10,10,
+ 10,10,10,10,10,10,10,10,
+ 10,10,10,10,10,10,10,10,
+ 10,10,10,10,10,10,10,10,
+ 10,10,10,10,10,10,10,10,
+ 10,10,10,10,10,10,10,10,
+ 10,10,10,10,10,10,10,10,
+ 10,10,10,10,10,10,10,10,
+ 10,10,10,10,10,10,10,10,
+ 10,10,10,10,10,10,10,10,
+ 10,10,10,10,10,10,10,10,
+ 10,10,10,10,10,10,10,10,
+ 10,10,10,10,10,10,10,10,
+ 10,10,10,10,10,10,10,10,
+ 10,10,10,10,10,10,10,10,
+ 10,10,10,10,10,10,10,10,
+ 10,10,10,10,10,10,10,10,
+ 10,10,10,10,10,10,10,10,
+ 10,10,10,10,10,10,10,10,
+ 10,10,10,10,10,10,10,10,
+ 10,10,10,10,10,10,10,10,
+ 10,10,10,10,10,10,10,50,-1};
+ const int *headret[]={head1_5,head2_5,head3_5,NULL};
+
+ fprintf(stderr,"testing max packet segments... ");
+ test_pack(packets,headret,0,0,0);
+ }
+
+ {
+ /* packet that overspans over an entire page */
+ const int packets[]={0,100,130049,259,255,-1};
+ const int *headret[]={head1_6,head2_6,head3_6,head4_6,NULL};
+
+ fprintf(stderr,"testing very large packets... ");
+ test_pack(packets,headret,0,0,0);
+ }
+
+ {
+ /* test for the libogg 1.1.1 resync in large continuation bug
+ found by Josh Coalson) */
+ const int packets[]={0,100,130049,259,255,-1};
+ const int *headret[]={head1_6,head2_6,head3_6,head4_6,NULL};
+
+ fprintf(stderr,"testing continuation resync in very large packets... ");
+ test_pack(packets,headret,100,2,3);
+ }
+
+ {
+ /* term only page. why not? */
+ const int packets[]={0,100,64770,-1};
+ const int *headret[]={head1_7,head2_7,head3_7,NULL};
+
+ fprintf(stderr,"testing zero data page (1 nil packet)... ");
+ test_pack(packets,headret,0,0,0);
+ }
+
+
+
+ {
+ /* build a bunch of pages for testing */
+ unsigned char *data=_ogg_malloc(1024*1024);
+ int pl[]={0, 1,1,98,4079, 1,1,2954,2057, 76,34,912,0,234,1000,1000, 1000,300,-1};
+ int inptr=0,i,j;
+ ogg_page og[5];
+
+ ogg_stream_reset(&os_en);
+
+ for(i=0;pl[i]!=-1;i++){
+ ogg_packet op;
+ int len=pl[i];
+
+ op.packet=data+inptr;
+ op.bytes=len;
+ op.e_o_s=(pl[i+1]<0?1:0);
+ op.granulepos=(i+1)*1000;
+
+ for(j=0;j0)error();
+
+ /* Test fractional page inputs: incomplete fixed header */
+ memcpy(ogg_sync_buffer(&oy,og[1].header_len),og[1].header+3,
+ 20);
+ ogg_sync_wrote(&oy,20);
+ if(ogg_sync_pageout(&oy,&og_de)>0)error();
+
+ /* Test fractional page inputs: incomplete header */
+ memcpy(ogg_sync_buffer(&oy,og[1].header_len),og[1].header+23,
+ 5);
+ ogg_sync_wrote(&oy,5);
+ if(ogg_sync_pageout(&oy,&og_de)>0)error();
+
+ /* Test fractional page inputs: incomplete body */
+
+ memcpy(ogg_sync_buffer(&oy,og[1].header_len),og[1].header+28,
+ og[1].header_len-28);
+ ogg_sync_wrote(&oy,og[1].header_len-28);
+ if(ogg_sync_pageout(&oy,&og_de)>0)error();
+
+ memcpy(ogg_sync_buffer(&oy,og[1].body_len),og[1].body,1000);
+ ogg_sync_wrote(&oy,1000);
+ if(ogg_sync_pageout(&oy,&og_de)>0)error();
+
+ memcpy(ogg_sync_buffer(&oy,og[1].body_len),og[1].body+1000,
+ og[1].body_len-1000);
+ ogg_sync_wrote(&oy,og[1].body_len-1000);
+ if(ogg_sync_pageout(&oy,&og_de)<=0)error();
+
+ fprintf(stderr,"ok.\n");
+ }
+
+ /* Test fractional page inputs: page + incomplete capture */
+ {
+ ogg_page og_de;
+ fprintf(stderr,"Testing sync on 1+partial inputs... ");
+ ogg_sync_reset(&oy);
+
+ memcpy(ogg_sync_buffer(&oy,og[1].header_len),og[1].header,
+ og[1].header_len);
+ ogg_sync_wrote(&oy,og[1].header_len);
+
+ memcpy(ogg_sync_buffer(&oy,og[1].body_len),og[1].body,
+ og[1].body_len);
+ ogg_sync_wrote(&oy,og[1].body_len);
+
+ memcpy(ogg_sync_buffer(&oy,og[1].header_len),og[1].header,
+ 20);
+ ogg_sync_wrote(&oy,20);
+ if(ogg_sync_pageout(&oy,&og_de)<=0)error();
+ if(ogg_sync_pageout(&oy,&og_de)>0)error();
+
+ memcpy(ogg_sync_buffer(&oy,og[1].header_len),og[1].header+20,
+ og[1].header_len-20);
+ ogg_sync_wrote(&oy,og[1].header_len-20);
+ memcpy(ogg_sync_buffer(&oy,og[1].body_len),og[1].body,
+ og[1].body_len);
+ ogg_sync_wrote(&oy,og[1].body_len);
+ if(ogg_sync_pageout(&oy,&og_de)<=0)error();
+
+ fprintf(stderr,"ok.\n");
+ }
+
+ /* Test recapture: garbage + page */
+ {
+ ogg_page og_de;
+ fprintf(stderr,"Testing search for capture... ");
+ ogg_sync_reset(&oy);
+
+ /* 'garbage' */
+ memcpy(ogg_sync_buffer(&oy,og[1].body_len),og[1].body,
+ og[1].body_len);
+ ogg_sync_wrote(&oy,og[1].body_len);
+
+ memcpy(ogg_sync_buffer(&oy,og[1].header_len),og[1].header,
+ og[1].header_len);
+ ogg_sync_wrote(&oy,og[1].header_len);
+
+ memcpy(ogg_sync_buffer(&oy,og[1].body_len),og[1].body,
+ og[1].body_len);
+ ogg_sync_wrote(&oy,og[1].body_len);
+
+ memcpy(ogg_sync_buffer(&oy,og[2].header_len),og[2].header,
+ 20);
+ ogg_sync_wrote(&oy,20);
+ if(ogg_sync_pageout(&oy,&og_de)>0)error();
+ if(ogg_sync_pageout(&oy,&og_de)<=0)error();
+ if(ogg_sync_pageout(&oy,&og_de)>0)error();
+
+ memcpy(ogg_sync_buffer(&oy,og[2].header_len),og[2].header+20,
+ og[2].header_len-20);
+ ogg_sync_wrote(&oy,og[2].header_len-20);
+ memcpy(ogg_sync_buffer(&oy,og[2].body_len),og[2].body,
+ og[2].body_len);
+ ogg_sync_wrote(&oy,og[2].body_len);
+ if(ogg_sync_pageout(&oy,&og_de)<=0)error();
+
+ fprintf(stderr,"ok.\n");
+ }
+
+ /* Test recapture: page + garbage + page */
+ {
+ ogg_page og_de;
+ fprintf(stderr,"Testing recapture... ");
+ ogg_sync_reset(&oy);
+
+ memcpy(ogg_sync_buffer(&oy,og[1].header_len),og[1].header,
+ og[1].header_len);
+ ogg_sync_wrote(&oy,og[1].header_len);
+
+ memcpy(ogg_sync_buffer(&oy,og[1].body_len),og[1].body,
+ og[1].body_len);
+ ogg_sync_wrote(&oy,og[1].body_len);
+
+ memcpy(ogg_sync_buffer(&oy,og[2].header_len),og[2].header,
+ og[2].header_len);
+ ogg_sync_wrote(&oy,og[2].header_len);
+
+ memcpy(ogg_sync_buffer(&oy,og[2].header_len),og[2].header,
+ og[2].header_len);
+ ogg_sync_wrote(&oy,og[2].header_len);
+
+ if(ogg_sync_pageout(&oy,&og_de)<=0)error();
+
+ memcpy(ogg_sync_buffer(&oy,og[2].body_len),og[2].body,
+ og[2].body_len-5);
+ ogg_sync_wrote(&oy,og[2].body_len-5);
+
+ memcpy(ogg_sync_buffer(&oy,og[3].header_len),og[3].header,
+ og[3].header_len);
+ ogg_sync_wrote(&oy,og[3].header_len);
+
+ memcpy(ogg_sync_buffer(&oy,og[3].body_len),og[3].body,
+ og[3].body_len);
+ ogg_sync_wrote(&oy,og[3].body_len);
+
+ if(ogg_sync_pageout(&oy,&og_de)>0)error();
+ if(ogg_sync_pageout(&oy,&og_de)<=0)error();
+
+ fprintf(stderr,"ok.\n");
+ }
+
+ /* Free page data that was previously copied */
+ {
+ for(i=0;i<5;i++){
+ free_page(&og[i]);
+ }
+ }
+ }
+
+ return(0);
+}
+
+#endif
diff --git a/Sources/libvorbis/AUTHORS b/Sources/libvorbis/AUTHORS
new file mode 100644
index 000000000..0da10363c
--- /dev/null
+++ b/Sources/libvorbis/AUTHORS
@@ -0,0 +1,3 @@
+Monty
+
+and the rest of the Xiph.org Foundation.
diff --git a/Sources/libvorbis/CHANGES b/Sources/libvorbis/CHANGES
new file mode 100644
index 000000000..d566f3f37
--- /dev/null
+++ b/Sources/libvorbis/CHANGES
@@ -0,0 +1,152 @@
+libvorbis 1.3.5 (unreleased) -- "Xiph.Org libVorbis I 20150105 (⛄⛄⛄⛄)"
+
+* Tolerate single-entry codebooks.
+* Fix decoder crash with invalid input.
+* Fix encoder crash with non-positive sample rates.
+# Fix issues in vorbisfile's seek bisection code.
+* Spec errata.
+* Reject multiple headers of the same type.
+* Various build fixes and code cleanup.
+
+libvorbis 1.3.4 (2014-01-22) -- "Xiph.Org libVorbis I 20140122 (Turpakäräjiin)"
+
+* Reduce codebook footprint in library code.
+* Various build and documentation fixes.
+
+libvorbis 1.3.3 (2012-02-03) -- "Xiph.Org libVorbis I 20120203 (Omnipresent)"
+
+* vorbis: additional proofing against invalid/malicious
+ streams in decode (see SVN for details).
+* vorbis: fix a memory leak in vorbis_commentheader_out().
+* updates, corrections and clarifications in the Vorbis I specification
+ document
+* win32: fixed project configuration which referenced two CRT versions
+ in output binaries.
+* build warning fixes
+
+libvorbis 1.3.2 (2010-11-01) -- "Xiph.Org libVorbis I 20101101 (Schaufenugget)"
+
+ * vorbis: additional proofing against invalid/malicious
+ streams in floor, residue, and bos/eos packet trimming
+ code (see SVN for details).
+ * vorbis: Added programming documentation tree for the
+ low-level calls
+ * vorbisfile: Correct handling of serial numbers array
+ element [0] on non-seekable streams
+ * vorbisenc: Back out an [old] AoTuV HF weighting that was
+ first enabled in 1.3.0; there are a few samples where I
+ really don't like the effect it causes.
+ * vorbis: return correct timestamp for granule positions
+ with high bit set.
+ * vorbisfile: the [undocumented] half-rate decode api made no
+ attempt to keep the pcm offset tracking consistent in seeks.
+ Fix and add a testing mode to seeking_example.c to torture
+ test seeking in halfrate mode. Also remove requirement that
+ halfrate mode only work with seekable files.
+ * vorbisfile: Fix a chaining bug in raw_seeks where seeking
+ out of the current link would fail due to not
+ reinitializing the decode machinery.
+ * vorbisfile: improve seeking strategy. Reduces the
+ necessary number of seek callbacks in an open or seek
+ operation by well over 2/3.
+
+libvorbis 1.3.1 (2010-02-26) -- "Xiph.Org libVorbis I 20100325 (Everywhere)"
+
+ * tweak + minor arithmetic fix in floor1 fit
+ * revert noise norm to conservative 1.2.3 behavior pending
+ more listening testing
+
+libvorbis 1.3.0 (2010-02-25) -- unreleased staging snapshot
+
+ * Optimized surround support for 5.1 encoding at 44.1/48kHz
+ * Added encoder control call to disable channel coupling
+ * Correct an overflow bug in very low-bitrate encoding on 32 bit
+ machines that caused inflated bitrates
+ * Numerous API hardening, leak and build fixes
+ * Correct bug in 22kHz compand setup that could cause a crash
+ * Correct bug in 16kHz codebooks that could cause unstable pure
+ tones at high bitrates
+
+libvorbis 1.2.3 (2009-07-09) -- "Xiph.Org libVorbis I 20090709"
+
+ * correct a vorbisfile bug that prevented proper playback of
+ Vorbis files where all audio in a logical stream is in a
+ single page
+ * Additional decode setup hardening against malicious streams
+ * Add 'OV_EXCLUDE_STATIC_CALLBACKS' define for developers who
+ wish to avoid unused symbol warnings from the static callbacks
+ defined in vorbisfile.h
+
+libvorbis 1.2.2 (2009-06-24) -- "Xiph.Org libVorbis I 20090624"
+
+ * define VENDOR and ENCODER strings
+ * seek correctly in files bigger than 2 GB (Windows)
+ * fix regression from CVE-2008-1420; 1.0b1 files work again
+ * mark all tables as constant to reduce memory occupation
+ * additional decoder hardening against malicious streams
+ * substantially reduce amount of seeking performed by Vorbisfile
+ * Multichannel decode bugfix
+ * build system updates
+ * minor specification clarifications/fixes
+
+libvorbis 1.2.1 (unreleased) -- "Xiph.Org libVorbis I 20080501"
+
+ * Improved robustness with corrupt streams.
+ * New ov_read_filter() vorbisfile call allows filtering decoded
+ audio as floats before converting to integer samples.
+ * Fix an encoder bug with multichannel streams.
+ * Replaced RTP payload format draft with RFC 5215.
+ * Bare bones self test under 'make check'.
+ * Fix a problem encoding some streams between 14 and 28 kHz.
+ * Fix a numerical instability in the edge extrapolation filter.
+ * Build system improvements.
+ * Specification correction.
+
+libvorbis 1.2.0 (2007-07-25) -- "Xiph.Org libVorbis I 20070622"
+
+ * new ov_fopen() convenience call that avoids the common
+ stdio conflicts with ov_open() and MSVC runtimes.
+ * libvorbisfile now handles multiplexed streams
+ * improve robustness to corrupt input streams
+ * fix a minor encoder bug
+ * updated RTP draft
+ * build system updates
+ * minor corrections to the specification
+
+libvorbis 1.1.2 (2005-11-27) -- "Xiph.Org libVorbis I 20050304"
+
+ * fix a serious encoder bug with gcc 4 optimized builds
+ * documentation and spec fixes
+ * updated VS2003 and XCode builds
+ * new draft RTP encapsulation spec
+
+libvorbis 1.1.1 (2005-06-27) -- "Xiph.Org libVorbis I 20050304"
+
+ * bug fix to the bitrate management encoder interface
+ * bug fix to properly set packetno field in the encoder
+ * new draft RTP encapsulation spec
+ * library API documentation improvements
+
+libvorbis 1.1.0 (2004-09-22) -- "Xiph.Org libVorbis I 20040629"
+
+ * merges tuning improvements from Aoyumi's aoTuV with fixups
+ * new managed bitrate (CBR) mode support
+ * new vorbis_encoder_ctl() interface
+ * extensive documentation updates
+ * application/ogg mimetype is now official
+ * autotools cleanup from Thomas Vander Stichele
+ * SymbianOS build support from Colin Ward at CSIRO
+ * various bugfixes
+ * various packaging improvements
+
+libvorbis 1.0.1 (2003-11-17) -- "Xiph.Org libVorbis I 20030909"
+
+ * numerous bug fixes
+ * specification corrections
+ * new crosslap and halfrate APIs for game use
+ * packaging and build updates
+
+libvorbis 1.0.0 (2002-07-19) -- "Xiph.Org libVorbis I 20020717"
+
+ * first stable release
+
diff --git a/Sources/libvorbis/COPYING b/Sources/libvorbis/COPYING
new file mode 100644
index 000000000..8f1d18cc2
--- /dev/null
+++ b/Sources/libvorbis/COPYING
@@ -0,0 +1,28 @@
+Copyright (c) 2002-2015 Xiph.org Foundation
+
+Redistribution and use in source and binary forms, with or without
+modification, are permitted provided that the following conditions
+are met:
+
+- Redistributions of source code must retain the above copyright
+notice, this list of conditions and the following disclaimer.
+
+- Redistributions in binary form must reproduce the above copyright
+notice, this list of conditions and the following disclaimer in the
+documentation and/or other materials provided with the distribution.
+
+- Neither the name of the Xiph.org Foundation nor the names of its
+contributors may be used to endorse or promote products derived from
+this software without specific prior written permission.
+
+THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION
+OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
diff --git a/Sources/libvorbis/README b/Sources/libvorbis/README
new file mode 100644
index 000000000..343be9a45
--- /dev/null
+++ b/Sources/libvorbis/README
@@ -0,0 +1,134 @@
+********************************************************************
+* *
+* THIS FILE IS PART OF THE OggVorbis SOFTWARE CODEC SOURCE CODE. *
+* USE, DISTRIBUTION AND REPRODUCTION OF THIS LIBRARY SOURCE IS *
+* GOVERNED BY A BSD-STYLE SOURCE LICENSE INCLUDED WITH THIS SOURCE *
+* IN 'COPYING'. PLEASE READ THESE TERMS BEFORE DISTRIBUTING. *
+* *
+* THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2015 *
+* by the Xiph.org Foundation, http://www.xiph.org/ *
+* *
+********************************************************************
+
+Vorbis is a general purpose audio and music encoding format
+contemporary to MPEG-4's AAC and TwinVQ, the next generation beyond
+MPEG audio layer 3. Unlike the MPEG sponsored formats (and other
+proprietary formats such as RealAudio G2 and Windows' flavor of the
+month), the Vorbis CODEC specification belongs to the public domain.
+All the technical details are published and documented, and any
+software entity may make full use of the format without license
+fee, royalty or patent concerns.
+
+This package contains:
+
+* libvorbis, a BSD-style license software implementation of
+ the Vorbis specification by the Xiph.Org Foundation
+ (http://www.xiph.org/)
+
+* libvorbisfile, a BSD-style license convenience library
+ built on Vorbis designed to simplify common uses
+
+* libvorbisenc, a BSD-style license library that provides a simple,
+ programmatic encoding setup interface
+
+* example code making use of libogg, libvorbis, libvorbisfile and
+ libvorbisenc
+
+WHAT'S HERE:
+
+This source distribution includes libvorbis and an example
+encoder/player to demonstrate use of libvorbis as well as
+documentation on the Ogg Vorbis audio coding format.
+
+You'll need libogg (distributed separately) to compile this library.
+A more comprehensive set of utilities is available in the vorbis-tools
+package.
+
+Directory:
+
+./lib The source for the libraries, a BSD-license implementation
+ of the public domain Ogg Vorbis audio encoding format.
+
+./include Library API headers
+
+./debian Rules/spec files for building Debian .deb packages
+
+./doc Vorbis documentation
+
+./examples Example code illustrating programmatic use of libvorbis,
+ libvorbisfile and libvorbisenc
+
+./mac Codewarrior project files and build tweaks for MacOS.
+
+./macosx Project files for MacOS X.
+
+./win32 Win32 projects files and build automation
+
+./vq Internal utilities for training/building new LSP/residue
+ and auxiliary codebooks.
+
+CONTACT:
+
+The Ogg homepage is located at 'http://www.xiph.org/ogg/'.
+Vorbis's homepage is located at 'http://www.xiph.org/vorbis/'.
+Up to date technical documents, contact information, source code and
+pre-built utilities may be found there.
+
+The user website for Ogg Vorbis software and audio is http://vorbis.com/
+
+BUILDING FROM TRUNK:
+
+Development source is under subversion revision control at
+https://svn.xiph.org/trunk/vorbis/. You will also need the
+newest versions of autoconf, automake, libtool and pkg-config in
+order to compile Vorbis from development source. A configure script
+is provided for you in the source tarball distributions.
+
+ [update or checkout latest source]
+ ./autogen.sh
+ make
+
+and as root if desired:
+
+ make install
+
+This will install the Vorbis libraries (static and shared) into
+/usr/local/lib, includes into /usr/local/include and API manpages
+(once we write some) into /usr/local/man.
+
+Documentation building requires xsltproc and pdfxmltex.
+
+BUILDING FROM TARBALL DISTRIBUTIONS:
+
+ ./configure
+ make
+
+and optionally (as root):
+ make install
+
+BUILDING RPMS:
+
+after normal configuring:
+
+ make dist
+ rpm -ta libvorbis-.tar.gz
+
+BUILDING ON MACOS 9:
+
+Vorbis on MacOS 9 is built using Metroworks CodeWarrior. To build it,
+first verify that the Ogg libraries are already built following the
+instructions in the Ogg module README. Open vorbis/mac/libvorbis.mcp,
+switch to the "Targets" pane, select everything, and make the project.
+Do the same thing to build libvorbisenc.mcp, and libvorbisfile.mcp (in
+that order). In vorbis/mac/Output you will now have both debug and final
+versions of Vorbis shared libraries to link your projects against.
+
+To build a project using Ogg Vorbis, add access paths to your
+CodeWarrior project for the ogg/include, ogg/mac/Output,
+vorbis/include, and vorbis/mac/Output folders. Be sure that
+"interpret DOS and Unix paths" is turned on in your project; it can
+be found in the "access paths" pane in your project settings. Now
+simply add the shared libraries you need to your project (OggLib and
+VorbisLib at least) and #include "ogg/ogg.h" and "vorbis/codec.h"
+wherever you need to access Ogg and Vorbis functionality.
+
diff --git a/Sources/libvorbis/include/vorbis/codec.h b/Sources/libvorbis/include/vorbis/codec.h
new file mode 100644
index 000000000..999aa3351
--- /dev/null
+++ b/Sources/libvorbis/include/vorbis/codec.h
@@ -0,0 +1,243 @@
+/********************************************************************
+ * *
+ * THIS FILE IS PART OF THE OggVorbis SOFTWARE CODEC SOURCE CODE. *
+ * USE, DISTRIBUTION AND REPRODUCTION OF THIS LIBRARY SOURCE IS *
+ * GOVERNED BY A BSD-STYLE SOURCE LICENSE INCLUDED WITH THIS SOURCE *
+ * IN 'COPYING'. PLEASE READ THESE TERMS BEFORE DISTRIBUTING. *
+ * *
+ * THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2001 *
+ * by the Xiph.Org Foundation http://www.xiph.org/ *
+
+ ********************************************************************
+
+ function: libvorbis codec headers
+ last mod: $Id: codec.h 17021 2010-03-24 09:29:41Z xiphmont $
+
+ ********************************************************************/
+
+#ifndef _vorbis_codec_h_
+#define _vorbis_codec_h_
+
+#ifdef __cplusplus
+extern "C"
+{
+#endif /* __cplusplus */
+
+#include
+
+typedef struct vorbis_info{
+ int version;
+ int channels;
+ long rate;
+
+ /* The below bitrate declarations are *hints*.
+ Combinations of the three values carry the following implications:
+
+ all three set to the same value:
+ implies a fixed rate bitstream
+ only nominal set:
+ implies a VBR stream that averages the nominal bitrate. No hard
+ upper/lower limit
+ upper and or lower set:
+ implies a VBR bitstream that obeys the bitrate limits. nominal
+ may also be set to give a nominal rate.
+ none set:
+ the coder does not care to speculate.
+ */
+
+ long bitrate_upper;
+ long bitrate_nominal;
+ long bitrate_lower;
+ long bitrate_window;
+
+ void *codec_setup;
+} vorbis_info;
+
+/* vorbis_dsp_state buffers the current vorbis audio
+ analysis/synthesis state. The DSP state belongs to a specific
+ logical bitstream ****************************************************/
+typedef struct vorbis_dsp_state{
+ int analysisp;
+ vorbis_info *vi;
+
+ float **pcm;
+ float **pcmret;
+ int pcm_storage;
+ int pcm_current;
+ int pcm_returned;
+
+ int preextrapolate;
+ int eofflag;
+
+ long lW;
+ long W;
+ long nW;
+ long centerW;
+
+ ogg_int64_t granulepos;
+ ogg_int64_t sequence;
+
+ ogg_int64_t glue_bits;
+ ogg_int64_t time_bits;
+ ogg_int64_t floor_bits;
+ ogg_int64_t res_bits;
+
+ void *backend_state;
+} vorbis_dsp_state;
+
+typedef struct vorbis_block{
+ /* necessary stream state for linking to the framing abstraction */
+ float **pcm; /* this is a pointer into local storage */
+ oggpack_buffer opb;
+
+ long lW;
+ long W;
+ long nW;
+ int pcmend;
+ int mode;
+
+ int eofflag;
+ ogg_int64_t granulepos;
+ ogg_int64_t sequence;
+ vorbis_dsp_state *vd; /* For read-only access of configuration */
+
+ /* local storage to avoid remallocing; it's up to the mapping to
+ structure it */
+ void *localstore;
+ long localtop;
+ long localalloc;
+ long totaluse;
+ struct alloc_chain *reap;
+
+ /* bitmetrics for the frame */
+ long glue_bits;
+ long time_bits;
+ long floor_bits;
+ long res_bits;
+
+ void *internal;
+
+} vorbis_block;
+
+/* vorbis_block is a single block of data to be processed as part of
+the analysis/synthesis stream; it belongs to a specific logical
+bitstream, but is independent from other vorbis_blocks belonging to
+that logical bitstream. *************************************************/
+
+struct alloc_chain{
+ void *ptr;
+ struct alloc_chain *next;
+};
+
+/* vorbis_info contains all the setup information specific to the
+ specific compression/decompression mode in progress (eg,
+ psychoacoustic settings, channel setup, options, codebook
+ etc). vorbis_info and substructures are in backends.h.
+*********************************************************************/
+
+/* the comments are not part of vorbis_info so that vorbis_info can be
+ static storage */
+typedef struct vorbis_comment{
+ /* unlimited user comment fields. libvorbis writes 'libvorbis'
+ whatever vendor is set to in encode */
+ char **user_comments;
+ int *comment_lengths;
+ int comments;
+ char *vendor;
+
+} vorbis_comment;
+
+
+/* libvorbis encodes in two abstraction layers; first we perform DSP
+ and produce a packet (see docs/analysis.txt). The packet is then
+ coded into a framed OggSquish bitstream by the second layer (see
+ docs/framing.txt). Decode is the reverse process; we sync/frame
+ the bitstream and extract individual packets, then decode the
+ packet back into PCM audio.
+
+ The extra framing/packetizing is used in streaming formats, such as
+ files. Over the net (such as with UDP), the framing and
+ packetization aren't necessary as they're provided by the transport
+ and the streaming layer is not used */
+
+/* Vorbis PRIMITIVES: general ***************************************/
+
+extern void vorbis_info_init(vorbis_info *vi);
+extern void vorbis_info_clear(vorbis_info *vi);
+extern int vorbis_info_blocksize(vorbis_info *vi,int zo);
+extern void vorbis_comment_init(vorbis_comment *vc);
+extern void vorbis_comment_add(vorbis_comment *vc, const char *comment);
+extern void vorbis_comment_add_tag(vorbis_comment *vc,
+ const char *tag, const char *contents);
+extern char *vorbis_comment_query(vorbis_comment *vc, const char *tag, int count);
+extern int vorbis_comment_query_count(vorbis_comment *vc, const char *tag);
+extern void vorbis_comment_clear(vorbis_comment *vc);
+
+extern int vorbis_block_init(vorbis_dsp_state *v, vorbis_block *vb);
+extern int vorbis_block_clear(vorbis_block *vb);
+extern void vorbis_dsp_clear(vorbis_dsp_state *v);
+extern double vorbis_granule_time(vorbis_dsp_state *v,
+ ogg_int64_t granulepos);
+
+extern const char *vorbis_version_string(void);
+
+/* Vorbis PRIMITIVES: analysis/DSP layer ****************************/
+
+extern int vorbis_analysis_init(vorbis_dsp_state *v,vorbis_info *vi);
+extern int vorbis_commentheader_out(vorbis_comment *vc, ogg_packet *op);
+extern int vorbis_analysis_headerout(vorbis_dsp_state *v,
+ vorbis_comment *vc,
+ ogg_packet *op,
+ ogg_packet *op_comm,
+ ogg_packet *op_code);
+extern float **vorbis_analysis_buffer(vorbis_dsp_state *v,int vals);
+extern int vorbis_analysis_wrote(vorbis_dsp_state *v,int vals);
+extern int vorbis_analysis_blockout(vorbis_dsp_state *v,vorbis_block *vb);
+extern int vorbis_analysis(vorbis_block *vb,ogg_packet *op);
+
+extern int vorbis_bitrate_addblock(vorbis_block *vb);
+extern int vorbis_bitrate_flushpacket(vorbis_dsp_state *vd,
+ ogg_packet *op);
+
+/* Vorbis PRIMITIVES: synthesis layer *******************************/
+extern int vorbis_synthesis_idheader(ogg_packet *op);
+extern int vorbis_synthesis_headerin(vorbis_info *vi,vorbis_comment *vc,
+ ogg_packet *op);
+
+extern int vorbis_synthesis_init(vorbis_dsp_state *v,vorbis_info *vi);
+extern int vorbis_synthesis_restart(vorbis_dsp_state *v);
+extern int vorbis_synthesis(vorbis_block *vb,ogg_packet *op);
+extern int vorbis_synthesis_trackonly(vorbis_block *vb,ogg_packet *op);
+extern int vorbis_synthesis_blockin(vorbis_dsp_state *v,vorbis_block *vb);
+extern int vorbis_synthesis_pcmout(vorbis_dsp_state *v,float ***pcm);
+extern int vorbis_synthesis_lapout(vorbis_dsp_state *v,float ***pcm);
+extern int vorbis_synthesis_read(vorbis_dsp_state *v,int samples);
+extern long vorbis_packet_blocksize(vorbis_info *vi,ogg_packet *op);
+
+extern int vorbis_synthesis_halfrate(vorbis_info *v,int flag);
+extern int vorbis_synthesis_halfrate_p(vorbis_info *v);
+
+/* Vorbis ERRORS and return codes ***********************************/
+
+#define OV_FALSE -1
+#define OV_EOF -2
+#define OV_HOLE -3
+
+#define OV_EREAD -128
+#define OV_EFAULT -129
+#define OV_EIMPL -130
+#define OV_EINVAL -131
+#define OV_ENOTVORBIS -132
+#define OV_EBADHEADER -133
+#define OV_EVERSION -134
+#define OV_ENOTAUDIO -135
+#define OV_EBADPACKET -136
+#define OV_EBADLINK -137
+#define OV_ENOSEEK -138
+
+#ifdef __cplusplus
+}
+#endif /* __cplusplus */
+
+#endif
+
diff --git a/Sources/libvorbis/include/vorbis/vorbisenc.h b/Sources/libvorbis/include/vorbis/vorbisenc.h
new file mode 100644
index 000000000..02332b50c
--- /dev/null
+++ b/Sources/libvorbis/include/vorbis/vorbisenc.h
@@ -0,0 +1,436 @@
+/********************************************************************
+ * *
+ * THIS FILE IS PART OF THE OggVorbis SOFTWARE CODEC SOURCE CODE. *
+ * USE, DISTRIBUTION AND REPRODUCTION OF THIS LIBRARY SOURCE IS *
+ * GOVERNED BY A BSD-STYLE SOURCE LICENSE INCLUDED WITH THIS SOURCE *
+ * IN 'COPYING'. PLEASE READ THESE TERMS BEFORE DISTRIBUTING. *
+ * *
+ * THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2001 *
+ * by the Xiph.Org Foundation http://www.xiph.org/ *
+ * *
+ ********************************************************************
+
+ function: vorbis encode-engine setup
+ last mod: $Id: vorbisenc.h 17021 2010-03-24 09:29:41Z xiphmont $
+
+ ********************************************************************/
+
+/** \file
+ * Libvorbisenc is a convenient API for setting up an encoding
+ * environment using libvorbis. Libvorbisenc encapsulates the
+ * actions needed to set up the encoder properly.
+ */
+
+#ifndef _OV_ENC_H_
+#define _OV_ENC_H_
+
+#ifdef __cplusplus
+extern "C"
+{
+#endif /* __cplusplus */
+
+#include "codec.h"
+
+/**
+ * This is the primary function within libvorbisenc for setting up managed
+ * bitrate modes.
+ *
+ * Before this function is called, the \ref vorbis_info
+ * struct should be initialized by using vorbis_info_init() from the libvorbis
+ * API. After encoding, vorbis_info_clear() should be called.
+ *
+ * The max_bitrate, nominal_bitrate, and min_bitrate settings are used to set
+ * constraints for the encoded file. This function uses these settings to
+ * select the appropriate encoding mode and set it up.
+ *
+ * \param vi Pointer to an initialized \ref vorbis_info struct.
+ * \param channels The number of channels to be encoded.
+ * \param rate The sampling rate of the source audio.
+ * \param max_bitrate Desired maximum bitrate (limit). -1 indicates unset.
+ * \param nominal_bitrate Desired average, or central, bitrate. -1 indicates unset.
+ * \param min_bitrate Desired minimum bitrate. -1 indicates unset.
+ *
+ * \return Zero for success, and negative values for failure.
+ *
+ * \retval 0 Success.
+ * \retval OV_EFAULT Internal logic fault; indicates a bug or heap/stack corruption.
+ * \retval OV_EINVAL Invalid setup request, eg, out of range argument.
+ * \retval OV_EIMPL Unimplemented mode; unable to comply with bitrate request.
+ */
+extern int vorbis_encode_init(vorbis_info *vi,
+ long channels,
+ long rate,
+
+ long max_bitrate,
+ long nominal_bitrate,
+ long min_bitrate);
+
+/**
+ * This function performs step-one of a three-step bitrate-managed encode
+ * setup. It functions similarly to the one-step setup performed by \ref
+ * vorbis_encode_init but allows an application to make further encode setup
+ * tweaks using \ref vorbis_encode_ctl before finally calling \ref
+ * vorbis_encode_setup_init to complete the setup process.
+ *
+ * Before this function is called, the \ref vorbis_info struct should be
+ * initialized by using vorbis_info_init() from the libvorbis API. After
+ * encoding, vorbis_info_clear() should be called.
+ *
+ * The max_bitrate, nominal_bitrate, and min_bitrate settings are used to set
+ * constraints for the encoded file. This function uses these settings to
+ * select the appropriate encoding mode and set it up.
+ *
+ * \param vi Pointer to an initialized vorbis_info struct.
+ * \param channels The number of channels to be encoded.
+ * \param rate The sampling rate of the source audio.
+ * \param max_bitrate Desired maximum bitrate (limit). -1 indicates unset.
+ * \param nominal_bitrate Desired average, or central, bitrate. -1 indicates unset.
+ * \param min_bitrate Desired minimum bitrate. -1 indicates unset.
+ *
+ * \return Zero for success, and negative for failure.
+ *
+ * \retval 0 Success
+ * \retval OV_EFAULT Internal logic fault; indicates a bug or heap/stack corruption.
+ * \retval OV_EINVAL Invalid setup request, eg, out of range argument.
+ * \retval OV_EIMPL Unimplemented mode; unable to comply with bitrate request.
+ */
+extern int vorbis_encode_setup_managed(vorbis_info *vi,
+ long channels,
+ long rate,
+
+ long max_bitrate,
+ long nominal_bitrate,
+ long min_bitrate);
+
+/**
+ * This function performs step-one of a three-step variable bitrate
+ * (quality-based) encode setup. It functions similarly to the one-step setup
+ * performed by \ref vorbis_encode_init_vbr() but allows an application to
+ * make further encode setup tweaks using \ref vorbis_encode_ctl() before
+ * finally calling \ref vorbis_encode_setup_init to complete the setup
+ * process.
+ *
+ * Before this function is called, the \ref vorbis_info struct should be
+ * initialized by using \ref vorbis_info_init() from the libvorbis API. After
+ * encoding, vorbis_info_clear() should be called.
+ *
+ * \param vi Pointer to an initialized vorbis_info struct.
+ * \param channels The number of channels to be encoded.
+ * \param rate The sampling rate of the source audio.
+ * \param quality Desired quality level, currently from -0.1 to 1.0 (lo to hi).
+ *
+ * \return Zero for success, and negative values for failure.
+ *
+ * \retval 0 Success
+ * \retval OV_EFAULT Internal logic fault; indicates a bug or heap/stack corruption.
+ * \retval OV_EINVAL Invalid setup request, eg, out of range argument.
+ * \retval OV_EIMPL Unimplemented mode; unable to comply with quality level request.
+ */
+extern int vorbis_encode_setup_vbr(vorbis_info *vi,
+ long channels,
+ long rate,
+
+ float quality
+ );
+
+/**
+ * This is the primary function within libvorbisenc for setting up variable
+ * bitrate ("quality" based) modes.
+ *
+ *
+ * Before this function is called, the vorbis_info struct should be
+ * initialized by using vorbis_info_init() from the libvorbis API. After
+ * encoding, vorbis_info_clear() should be called.
+ *
+ * \param vi Pointer to an initialized vorbis_info struct.
+ * \param channels The number of channels to be encoded.
+ * \param rate The sampling rate of the source audio.
+ * \param base_quality Desired quality level, currently from -0.1 to 1.0 (lo to hi).
+ *
+ *
+ * \return Zero for success, or a negative number for failure.
+ *
+ * \retval 0 Success
+ * \retval OV_EFAULT Internal logic fault; indicates a bug or heap/stack corruption.
+ * \retval OV_EINVAL Invalid setup request, eg, out of range argument.
+ * \retval OV_EIMPL Unimplemented mode; unable to comply with quality level request.
+ */
+extern int vorbis_encode_init_vbr(vorbis_info *vi,
+ long channels,
+ long rate,
+
+ float base_quality
+ );
+
+/**
+ * This function performs the last stage of three-step encoding setup, as
+ * described in the API overview under managed bitrate modes.
+ *
+ * Before this function is called, the \ref vorbis_info struct should be
+ * initialized by using vorbis_info_init() from the libvorbis API, one of
+ * \ref vorbis_encode_setup_managed() or \ref vorbis_encode_setup_vbr() called to
+ * initialize the high-level encoding setup, and \ref vorbis_encode_ctl()
+ * called if necessary to make encoding setup changes.
+ * vorbis_encode_setup_init() finalizes the highlevel encoding structure into
+ * a complete encoding setup after which the application may make no further
+ * setup changes.
+ *
+ * After encoding, vorbis_info_clear() should be called.
+ *
+ * \param vi Pointer to an initialized \ref vorbis_info struct.
+ *
+ * \return Zero for success, and negative values for failure.
+ *
+ * \retval 0 Success.
+ * \retval OV_EFAULT Internal logic fault; indicates a bug or heap/stack corruption.
+ *
+ * \retval OV_EINVAL Attempt to use vorbis_encode_setup_init() without first
+ * calling one of vorbis_encode_setup_managed() or vorbis_encode_setup_vbr() to
+ * initialize the high-level encoding setup
+ *
+ */
+extern int vorbis_encode_setup_init(vorbis_info *vi);
+
+/**
+ * This function implements a generic interface to miscellaneous encoder
+ * settings similar to the classic UNIX 'ioctl()' system call. Applications
+ * may use vorbis_encode_ctl() to query or set bitrate management or quality
+ * mode details by using one of several \e request arguments detailed below.
+ * vorbis_encode_ctl() must be called after one of
+ * vorbis_encode_setup_managed() or vorbis_encode_setup_vbr(). When used
+ * to modify settings, \ref vorbis_encode_ctl() must be called before \ref
+ * vorbis_encode_setup_init().
+ *
+ * \param vi Pointer to an initialized vorbis_info struct.
+ *
+ * \param number Specifies the desired action; See \ref encctlcodes "the list
+ * of available requests".
+ *
+ * \param arg void * pointing to a data structure matching the request
+ * argument.
+ *
+ * \retval 0 Success. Any further return information (such as the result of a
+ * query) is placed into the storage pointed to by *arg.
+ *
+ * \retval OV_EINVAL Invalid argument, or an attempt to modify a setting after
+ * calling vorbis_encode_setup_init().
+ *
+ * \retval OV_EIMPL Unimplemented or unknown request
+ */
+extern int vorbis_encode_ctl(vorbis_info *vi,int number,void *arg);
+
+/**
+ * \deprecated This is a deprecated interface. Please use vorbis_encode_ctl()
+ * with the \ref ovectl_ratemanage2_arg struct and \ref
+ * OV_ECTL_RATEMANAGE2_GET and \ref OV_ECTL_RATEMANAGE2_SET calls in new code.
+ *
+ * The \ref ovectl_ratemanage_arg structure is used with vorbis_encode_ctl()
+ * and the \ref OV_ECTL_RATEMANAGE_GET, \ref OV_ECTL_RATEMANAGE_SET, \ref
+ * OV_ECTL_RATEMANAGE_AVG, \ref OV_ECTL_RATEMANAGE_HARD calls in order to
+ * query and modify specifics of the encoder's bitrate management
+ * configuration.
+*/
+struct ovectl_ratemanage_arg {
+ int management_active; /**< nonzero if bitrate management is active*/
+/** hard lower limit (in kilobits per second) below which the stream bitrate
+ will never be allowed for any given bitrate_hard_window seconds of time.*/
+ long bitrate_hard_min;
+/** hard upper limit (in kilobits per second) above which the stream bitrate
+ will never be allowed for any given bitrate_hard_window seconds of time.*/
+ long bitrate_hard_max;
+/** the window period (in seconds) used to regulate the hard bitrate minimum
+ and maximum*/
+ double bitrate_hard_window;
+/** soft lower limit (in kilobits per second) below which the average bitrate
+ tracker will start nudging the bitrate higher.*/
+ long bitrate_av_lo;
+/** soft upper limit (in kilobits per second) above which the average bitrate
+ tracker will start nudging the bitrate lower.*/
+ long bitrate_av_hi;
+/** the window period (in seconds) used to regulate the average bitrate
+ minimum and maximum.*/
+ double bitrate_av_window;
+/** Regulates the relative centering of the average and hard windows; in
+ libvorbis 1.0 and 1.0.1, the hard window regulation overlapped but
+ followed the average window regulation. In libvorbis 1.1 a bit-reservoir
+ interface replaces the old windowing interface; the older windowing
+ interface is simulated and this field has no effect.*/
+ double bitrate_av_window_center;
+};
+
+/**
+ * \name struct ovectl_ratemanage2_arg
+ *
+ * The ovectl_ratemanage2_arg structure is used with vorbis_encode_ctl() and
+ * the OV_ECTL_RATEMANAGE2_GET and OV_ECTL_RATEMANAGE2_SET calls in order to
+ * query and modify specifics of the encoder's bitrate management
+ * configuration.
+ *
+*/
+struct ovectl_ratemanage2_arg {
+ int management_active; /**< nonzero if bitrate management is active */
+/** Lower allowed bitrate limit in kilobits per second */
+ long bitrate_limit_min_kbps;
+/** Upper allowed bitrate limit in kilobits per second */
+ long bitrate_limit_max_kbps;
+ long bitrate_limit_reservoir_bits; /**struct ovectl_ratemanage2_arg *
+ *
+ * Used to query the current encoder bitrate management setting. Also used to
+ * initialize fields of an ovectl_ratemanage2_arg structure for use with
+ * \ref OV_ECTL_RATEMANAGE2_SET.
+ */
+#define OV_ECTL_RATEMANAGE2_GET 0x14
+
+/**
+ * Set the current encoder bitrate management settings.
+ *
+ * Argument: struct ovectl_ratemanage2_arg *
+ *
+ * Used to set the current encoder bitrate management settings to the values
+ * listed in the ovectl_ratemanage2_arg. Passing a NULL pointer will disable
+ * bitrate management.
+*/
+#define OV_ECTL_RATEMANAGE2_SET 0x15
+
+/**
+ * Returns the current encoder hard-lowpass setting (kHz) in the double
+ * pointed to by arg.
+ *
+ * Argument: double *
+*/
+#define OV_ECTL_LOWPASS_GET 0x20
+
+/**
+ * Sets the encoder hard-lowpass to the value (kHz) pointed to by arg. Valid
+ * lowpass settings range from 2 to 99.
+ *
+ * Argument: double *
+*/
+#define OV_ECTL_LOWPASS_SET 0x21
+
+/**
+ * Returns the current encoder impulse block setting in the double pointed
+ * to by arg.
+ *
+ * Argument: double *
+*/
+#define OV_ECTL_IBLOCK_GET 0x30
+
+/**
+ * Sets the impulse block bias to the the value pointed to by arg.
+ *
+ * Argument: double *
+ *
+ * Valid range is -15.0 to 0.0 [default]. A negative impulse block bias will
+ * direct to encoder to use more bits when incoding short blocks that contain
+ * strong impulses, thus improving the accuracy of impulse encoding.
+ */
+#define OV_ECTL_IBLOCK_SET 0x31
+
+/**
+ * Returns the current encoder coupling setting in the int pointed
+ * to by arg.
+ *
+ * Argument: int *
+*/
+#define OV_ECTL_COUPLING_GET 0x40
+
+/**
+ * Enables/disables channel coupling in multichannel encoding according to arg.
+ *
+ * Argument: int *
+ *
+ * Zero disables channel coupling for multichannel inputs, nonzer enables
+ * channel coupling. Setting has no effect on monophonic encoding or
+ * multichannel counts that do not offer coupling. At present, coupling is
+ * available for stereo and 5.1 encoding.
+ */
+#define OV_ECTL_COUPLING_SET 0x41
+
+ /* deprecated rate management supported only for compatibility */
+
+/**
+ * Old interface to querying bitrate management settings.
+ *
+ * Deprecated after move to bit-reservoir style management in 1.1 rendered
+ * this interface partially obsolete.
+
+ * \deprecated Please use \ref OV_ECTL_RATEMANAGE2_GET instead.
+ *
+ * Argument: struct ovectl_ratemanage_arg *
+ */
+#define OV_ECTL_RATEMANAGE_GET 0x10
+/**
+ * Old interface to modifying bitrate management settings.
+ *
+ * deprecated after move to bit-reservoir style management in 1.1 rendered
+ * this interface partially obsolete.
+ *
+ * \deprecated Please use \ref OV_ECTL_RATEMANAGE2_SET instead.
+ *
+ * Argument: struct ovectl_ratemanage_arg *
+ */
+#define OV_ECTL_RATEMANAGE_SET 0x11
+/**
+ * Old interface to setting average-bitrate encoding mode.
+ *
+ * Deprecated after move to bit-reservoir style management in 1.1 rendered
+ * this interface partially obsolete.
+ *
+ * \deprecated Please use \ref OV_ECTL_RATEMANAGE2_SET instead.
+ *
+ * Argument: struct ovectl_ratemanage_arg *
+ */
+#define OV_ECTL_RATEMANAGE_AVG 0x12
+/**
+ * Old interface to setting bounded-bitrate encoding modes.
+ *
+ * deprecated after move to bit-reservoir style management in 1.1 rendered
+ * this interface partially obsolete.
+ *
+ * \deprecated Please use \ref OV_ECTL_RATEMANAGE2_SET instead.
+ *
+ * Argument: struct ovectl_ratemanage_arg *
+ */
+#define OV_ECTL_RATEMANAGE_HARD 0x13
+
+/*@}*/
+
+
+
+#ifdef __cplusplus
+}
+#endif /* __cplusplus */
+
+#endif
diff --git a/Sources/libvorbis/include/vorbis/vorbisfile.h b/Sources/libvorbis/include/vorbis/vorbisfile.h
new file mode 100644
index 000000000..9271331e7
--- /dev/null
+++ b/Sources/libvorbis/include/vorbis/vorbisfile.h
@@ -0,0 +1,206 @@
+/********************************************************************
+ * *
+ * THIS FILE IS PART OF THE OggVorbis SOFTWARE CODEC SOURCE CODE. *
+ * USE, DISTRIBUTION AND REPRODUCTION OF THIS LIBRARY SOURCE IS *
+ * GOVERNED BY A BSD-STYLE SOURCE LICENSE INCLUDED WITH THIS SOURCE *
+ * IN 'COPYING'. PLEASE READ THESE TERMS BEFORE DISTRIBUTING. *
+ * *
+ * THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2007 *
+ * by the Xiph.Org Foundation http://www.xiph.org/ *
+ * *
+ ********************************************************************
+
+ function: stdio-based convenience library for opening/seeking/decoding
+ last mod: $Id: vorbisfile.h 17182 2010-04-29 03:48:32Z xiphmont $
+
+ ********************************************************************/
+
+#ifndef _OV_FILE_H_
+#define _OV_FILE_H_
+
+#ifdef __cplusplus
+extern "C"
+{
+#endif /* __cplusplus */
+
+#include
+#include "codec.h"
+
+/* The function prototypes for the callbacks are basically the same as for
+ * the stdio functions fread, fseek, fclose, ftell.
+ * The one difference is that the FILE * arguments have been replaced with
+ * a void * - this is to be used as a pointer to whatever internal data these
+ * functions might need. In the stdio case, it's just a FILE * cast to a void *
+ *
+ * If you use other functions, check the docs for these functions and return
+ * the right values. For seek_func(), you *MUST* return -1 if the stream is
+ * unseekable
+ */
+typedef struct {
+ size_t (*read_func) (void *ptr, size_t size, size_t nmemb, void *datasource);
+ int (*seek_func) (void *datasource, ogg_int64_t offset, int whence);
+ int (*close_func) (void *datasource);
+ long (*tell_func) (void *datasource);
+} ov_callbacks;
+
+#ifndef OV_EXCLUDE_STATIC_CALLBACKS
+
+/* a few sets of convenient callbacks, especially for use under
+ * Windows where ov_open_callbacks() should always be used instead of
+ * ov_open() to avoid problems with incompatible crt.o version linking
+ * issues. */
+
+static int _ov_header_fseek_wrap(FILE *f,ogg_int64_t off,int whence){
+ if(f==NULL)return(-1);
+
+#ifdef __MINGW32__
+ return fseeko64(f,off,whence);
+#elif defined (_WIN32)
+ return _fseeki64(f,off,whence);
+#else
+ return fseek(f,off,whence);
+#endif
+}
+
+/* These structs below (OV_CALLBACKS_DEFAULT etc) are defined here as
+ * static data. That means that every file which includes this header
+ * will get its own copy of these structs whether it uses them or
+ * not unless it #defines OV_EXCLUDE_STATIC_CALLBACKS.
+ * These static symbols are essential on platforms such as Windows on
+ * which several different versions of stdio support may be linked to
+ * by different DLLs, and we need to be certain we know which one
+ * we're using (the same one as the main application).
+ */
+
+static ov_callbacks OV_CALLBACKS_DEFAULT = {
+ (size_t (*)(void *, size_t, size_t, void *)) fread,
+ (int (*)(void *, ogg_int64_t, int)) _ov_header_fseek_wrap,
+ (int (*)(void *)) fclose,
+ (long (*)(void *)) ftell
+};
+
+static ov_callbacks OV_CALLBACKS_NOCLOSE = {
+ (size_t (*)(void *, size_t, size_t, void *)) fread,
+ (int (*)(void *, ogg_int64_t, int)) _ov_header_fseek_wrap,
+ (int (*)(void *)) NULL,
+ (long (*)(void *)) ftell
+};
+
+static ov_callbacks OV_CALLBACKS_STREAMONLY = {
+ (size_t (*)(void *, size_t, size_t, void *)) fread,
+ (int (*)(void *, ogg_int64_t, int)) NULL,
+ (int (*)(void *)) fclose,
+ (long (*)(void *)) NULL
+};
+
+static ov_callbacks OV_CALLBACKS_STREAMONLY_NOCLOSE = {
+ (size_t (*)(void *, size_t, size_t, void *)) fread,
+ (int (*)(void *, ogg_int64_t, int)) NULL,
+ (int (*)(void *)) NULL,
+ (long (*)(void *)) NULL
+};
+
+#endif
+
+#define NOTOPEN 0
+#define PARTOPEN 1
+#define OPENED 2
+#define STREAMSET 3
+#define INITSET 4
+
+typedef struct OggVorbis_File {
+ void *datasource; /* Pointer to a FILE *, etc. */
+ int seekable;
+ ogg_int64_t offset;
+ ogg_int64_t end;
+ ogg_sync_state oy;
+
+ /* If the FILE handle isn't seekable (eg, a pipe), only the current
+ stream appears */
+ int links;
+ ogg_int64_t *offsets;
+ ogg_int64_t *dataoffsets;
+ long *serialnos;
+ ogg_int64_t *pcmlengths; /* overloaded to maintain binary
+ compatibility; x2 size, stores both
+ beginning and end values */
+ vorbis_info *vi;
+ vorbis_comment *vc;
+
+ /* Decoding working state local storage */
+ ogg_int64_t pcm_offset;
+ int ready_state;
+ long current_serialno;
+ int current_link;
+
+ double bittrack;
+ double samptrack;
+
+ ogg_stream_state os; /* take physical pages, weld into a logical
+ stream of packets */
+ vorbis_dsp_state vd; /* central working state for the packet->PCM decoder */
+ vorbis_block vb; /* local working space for packet->PCM decode */
+
+ ov_callbacks callbacks;
+
+} OggVorbis_File;
+
+
+extern int ov_clear(OggVorbis_File *vf);
+extern int ov_fopen(const char *path,OggVorbis_File *vf);
+extern int ov_open(FILE *f,OggVorbis_File *vf,const char *initial,long ibytes);
+extern int ov_open_callbacks(void *datasource, OggVorbis_File *vf,
+ const char *initial, long ibytes, ov_callbacks callbacks);
+
+extern int ov_test(FILE *f,OggVorbis_File *vf,const char *initial,long ibytes);
+extern int ov_test_callbacks(void *datasource, OggVorbis_File *vf,
+ const char *initial, long ibytes, ov_callbacks callbacks);
+extern int ov_test_open(OggVorbis_File *vf);
+
+extern long ov_bitrate(OggVorbis_File *vf,int i);
+extern long ov_bitrate_instant(OggVorbis_File *vf);
+extern long ov_streams(OggVorbis_File *vf);
+extern long ov_seekable(OggVorbis_File *vf);
+extern long ov_serialnumber(OggVorbis_File *vf,int i);
+
+extern ogg_int64_t ov_raw_total(OggVorbis_File *vf,int i);
+extern ogg_int64_t ov_pcm_total(OggVorbis_File *vf,int i);
+extern double ov_time_total(OggVorbis_File *vf,int i);
+
+extern int ov_raw_seek(OggVorbis_File *vf,ogg_int64_t pos);
+extern int ov_pcm_seek(OggVorbis_File *vf,ogg_int64_t pos);
+extern int ov_pcm_seek_page(OggVorbis_File *vf,ogg_int64_t pos);
+extern int ov_time_seek(OggVorbis_File *vf,double pos);
+extern int ov_time_seek_page(OggVorbis_File *vf,double pos);
+
+extern int ov_raw_seek_lap(OggVorbis_File *vf,ogg_int64_t pos);
+extern int ov_pcm_seek_lap(OggVorbis_File *vf,ogg_int64_t pos);
+extern int ov_pcm_seek_page_lap(OggVorbis_File *vf,ogg_int64_t pos);
+extern int ov_time_seek_lap(OggVorbis_File *vf,double pos);
+extern int ov_time_seek_page_lap(OggVorbis_File *vf,double pos);
+
+extern ogg_int64_t ov_raw_tell(OggVorbis_File *vf);
+extern ogg_int64_t ov_pcm_tell(OggVorbis_File *vf);
+extern double ov_time_tell(OggVorbis_File *vf);
+
+extern vorbis_info *ov_info(OggVorbis_File *vf,int link);
+extern vorbis_comment *ov_comment(OggVorbis_File *vf,int link);
+
+extern long ov_read_float(OggVorbis_File *vf,float ***pcm_channels,int samples,
+ int *bitstream);
+extern long ov_read_filter(OggVorbis_File *vf,char *buffer,int length,
+ int bigendianp,int word,int sgned,int *bitstream,
+ void (*filter)(float **pcm,long channels,long samples,void *filter_param),void *filter_param);
+extern long ov_read(OggVorbis_File *vf,char *buffer,int length,
+ int bigendianp,int word,int sgned,int *bitstream);
+extern int ov_crosslap(OggVorbis_File *vf1,OggVorbis_File *vf2);
+
+extern int ov_halfrate(OggVorbis_File *vf,int flag);
+extern int ov_halfrate_p(OggVorbis_File *vf);
+
+#ifdef __cplusplus
+}
+#endif /* __cplusplus */
+
+#endif
+
diff --git a/Sources/libvorbis/lib/analysis.c b/Sources/libvorbis/lib/analysis.c
new file mode 100644
index 000000000..01aa6f30d
--- /dev/null
+++ b/Sources/libvorbis/lib/analysis.c
@@ -0,0 +1,120 @@
+/********************************************************************
+ * *
+ * THIS FILE IS PART OF THE OggVorbis SOFTWARE CODEC SOURCE CODE. *
+ * USE, DISTRIBUTION AND REPRODUCTION OF THIS LIBRARY SOURCE IS *
+ * GOVERNED BY A BSD-STYLE SOURCE LICENSE INCLUDED WITH THIS SOURCE *
+ * IN 'COPYING'. PLEASE READ THESE TERMS BEFORE DISTRIBUTING. *
+ * *
+ * THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2007 *
+ * by the Xiph.Org Foundation http://www.xiph.org/ *
+ * *
+ ********************************************************************
+
+ function: single-block PCM analysis mode dispatch
+ last mod: $Id: analysis.c 16226 2009-07-08 06:43:49Z xiphmont $
+
+ ********************************************************************/
+
+#include
+#include
+#include
+#include
+#include "vorbis/codec.h"
+#include "codec_internal.h"
+#include "registry.h"
+#include "scales.h"
+#include "os.h"
+#include "misc.h"
+
+/* decides between modes, dispatches to the appropriate mapping. */
+int vorbis_analysis(vorbis_block *vb, ogg_packet *op){
+ int ret,i;
+ vorbis_block_internal *vbi=vb->internal;
+
+ vb->glue_bits=0;
+ vb->time_bits=0;
+ vb->floor_bits=0;
+ vb->res_bits=0;
+
+ /* first things first. Make sure encode is ready */
+ for(i=0;ipacketblob[i]);
+
+ /* we only have one mapping type (0), and we let the mapping code
+ itself figure out what soft mode to use. This allows easier
+ bitrate management */
+
+ if((ret=_mapping_P[0]->forward(vb)))
+ return(ret);
+
+ if(op){
+ if(vorbis_bitrate_managed(vb))
+ /* The app is using a bitmanaged mode... but not using the
+ bitrate management interface. */
+ return(OV_EINVAL);
+
+ op->packet=oggpack_get_buffer(&vb->opb);
+ op->bytes=oggpack_bytes(&vb->opb);
+ op->b_o_s=0;
+ op->e_o_s=vb->eofflag;
+ op->granulepos=vb->granulepos;
+ op->packetno=vb->sequence; /* for sake of completeness */
+ }
+ return(0);
+}
+
+#ifdef ANALYSIS
+int analysis_noisy=1;
+
+/* there was no great place to put this.... */
+void _analysis_output_always(char *base,int i,float *v,int n,int bark,int dB,ogg_int64_t off){
+ int j;
+ FILE *of;
+ char buffer[80];
+
+ sprintf(buffer,"%s_%d.m",base,i);
+ of=fopen(buffer,"w");
+
+ if(!of)perror("failed to open data dump file");
+
+ for(j=0;j
+#include "scales.h"
+int main(){
+ int i;
+ double rate;
+ for(i=64;i<32000;i*=2){
+ rate=48000.f;
+ fprintf(stderr,"rate=%gHz, block=%d, f(1)=%.2gHz bark(1)=%.2g (of %.2g)\n",
+ rate,i,rate/2 / (i/2),toBARK(rate/2 /(i/2)),toBARK(rate/2));
+
+ rate=44100.f;
+ fprintf(stderr,"rate=%gHz, block=%d, f(1)=%.2gHz bark(1)=%.2g (of %.2g)\n",
+ rate,i,rate/2 / (i/2),toBARK(rate/2 /(i/2)),toBARK(rate/2));
+
+ rate=32000.f;
+ fprintf(stderr,"rate=%gHz, block=%d, f(1)=%.2gHz bark(1)=%.2g (of %.2g)\n",
+ rate,i,rate/2 / (i/2),toBARK(rate/2 /(i/2)),toBARK(rate/2));
+
+ rate=22050.f;
+ fprintf(stderr,"rate=%gHz, block=%d, f(1)=%.2gHz bark(1)=%.2g (of %.2g)\n",
+ rate,i,rate/2 / (i/2),toBARK(rate/2 /(i/2)),toBARK(rate/2));
+
+ rate=16000.f;
+ fprintf(stderr,"rate=%gHz, block=%d, f(1)=%.2gHz bark(1)=%.2g (of %.2g)\n",
+ rate,i,rate/2 / (i/2),toBARK(rate/2 /(i/2)),toBARK(rate/2));
+
+ rate=11025.f;
+ fprintf(stderr,"rate=%gHz, block=%d, f(1)=%.2gHz bark(1)=%.2g (of %.2g)\n",
+ rate,i,rate/2 / (i/2),toBARK(rate/2 /(i/2)),toBARK(rate/2));
+
+ rate=8000.f;
+ fprintf(stderr,"rate=%gHz, block=%d, f(1)=%.2gHz bark(1)=%.2g (of %.2g)\n\n",
+ rate,i,rate/2 / (i/2),toBARK(rate/2 /(i/2)),toBARK(rate/2));
+
+
+ }
+ {
+ float i;
+ int j;
+ for(i=0.,j=0;i<28;i+=1,j++){
+ fprintf(stderr,"(%d) bark=%f %gHz (%d of 128)\n",
+ j,i,fromBARK(i),(int)(fromBARK(i)/22050.*128.));
+ }
+ }
+ return(0);
+}
+
diff --git a/Sources/libvorbis/lib/bitrate.c b/Sources/libvorbis/lib/bitrate.c
new file mode 100644
index 000000000..3a71b1dc2
--- /dev/null
+++ b/Sources/libvorbis/lib/bitrate.c
@@ -0,0 +1,253 @@
+/********************************************************************
+ * *
+ * THIS FILE IS PART OF THE OggVorbis SOFTWARE CODEC SOURCE CODE. *
+ * USE, DISTRIBUTION AND REPRODUCTION OF THIS LIBRARY SOURCE IS *
+ * GOVERNED BY A BSD-STYLE SOURCE LICENSE INCLUDED WITH THIS SOURCE *
+ * IN 'COPYING'. PLEASE READ THESE TERMS BEFORE DISTRIBUTING. *
+ * *
+ * THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2009 *
+ * by the Xiph.Org Foundation http://www.xiph.org/ *
+ * *
+ ********************************************************************
+
+ function: bitrate tracking and management
+ last mod: $Id: bitrate.c 16227 2009-07-08 06:58:46Z xiphmont $
+
+ ********************************************************************/
+
+#include
+#include
+#include
+#include
+#include "vorbis/codec.h"
+#include "codec_internal.h"
+#include "os.h"
+#include "misc.h"
+#include "bitrate.h"
+
+/* compute bitrate tracking setup */
+void vorbis_bitrate_init(vorbis_info *vi,bitrate_manager_state *bm){
+ codec_setup_info *ci=vi->codec_setup;
+ bitrate_manager_info *bi=&ci->bi;
+
+ memset(bm,0,sizeof(*bm));
+
+ if(bi && (bi->reservoir_bits>0)){
+ long ratesamples=vi->rate;
+ int halfsamples=ci->blocksizes[0]>>1;
+
+ bm->short_per_long=ci->blocksizes[1]/ci->blocksizes[0];
+ bm->managed=1;
+
+ bm->avg_bitsper= rint(1.*bi->avg_rate*halfsamples/ratesamples);
+ bm->min_bitsper= rint(1.*bi->min_rate*halfsamples/ratesamples);
+ bm->max_bitsper= rint(1.*bi->max_rate*halfsamples/ratesamples);
+
+ bm->avgfloat=PACKETBLOBS/2;
+
+ /* not a necessary fix, but one that leads to a more balanced
+ typical initialization */
+ {
+ long desired_fill=bi->reservoir_bits*bi->reservoir_bias;
+ bm->minmax_reservoir=desired_fill;
+ bm->avg_reservoir=desired_fill;
+ }
+
+ }
+}
+
+void vorbis_bitrate_clear(bitrate_manager_state *bm){
+ memset(bm,0,sizeof(*bm));
+ return;
+}
+
+int vorbis_bitrate_managed(vorbis_block *vb){
+ vorbis_dsp_state *vd=vb->vd;
+ private_state *b=vd->backend_state;
+ bitrate_manager_state *bm=&b->bms;
+
+ if(bm && bm->managed)return(1);
+ return(0);
+}
+
+/* finish taking in the block we just processed */
+int vorbis_bitrate_addblock(vorbis_block *vb){
+ vorbis_block_internal *vbi=vb->internal;
+ vorbis_dsp_state *vd=vb->vd;
+ private_state *b=vd->backend_state;
+ bitrate_manager_state *bm=&b->bms;
+ vorbis_info *vi=vd->vi;
+ codec_setup_info *ci=vi->codec_setup;
+ bitrate_manager_info *bi=&ci->bi;
+
+ int choice=rint(bm->avgfloat);
+ long this_bits=oggpack_bytes(vbi->packetblob[choice])*8;
+ long min_target_bits=(vb->W?bm->min_bitsper*bm->short_per_long:bm->min_bitsper);
+ long max_target_bits=(vb->W?bm->max_bitsper*bm->short_per_long:bm->max_bitsper);
+ int samples=ci->blocksizes[vb->W]>>1;
+ long desired_fill=bi->reservoir_bits*bi->reservoir_bias;
+ if(!bm->managed){
+ /* not a bitrate managed stream, but for API simplicity, we'll
+ buffer the packet to keep the code path clean */
+
+ if(bm->vb)return(-1); /* one has been submitted without
+ being claimed */
+ bm->vb=vb;
+ return(0);
+ }
+
+ bm->vb=vb;
+
+ /* look ahead for avg floater */
+ if(bm->avg_bitsper>0){
+ double slew=0.;
+ long avg_target_bits=(vb->W?bm->avg_bitsper*bm->short_per_long:bm->avg_bitsper);
+ double slewlimit= 15./bi->slew_damp;
+
+ /* choosing a new floater:
+ if we're over target, we slew down
+ if we're under target, we slew up
+
+ choose slew as follows: look through packetblobs of this frame
+ and set slew as the first in the appropriate direction that
+ gives us the slew we want. This may mean no slew if delta is
+ already favorable.
+
+ Then limit slew to slew max */
+
+ if(bm->avg_reservoir+(this_bits-avg_target_bits)>desired_fill){
+ while(choice>0 && this_bits>avg_target_bits &&
+ bm->avg_reservoir+(this_bits-avg_target_bits)>desired_fill){
+ choice--;
+ this_bits=oggpack_bytes(vbi->packetblob[choice])*8;
+ }
+ }else if(bm->avg_reservoir+(this_bits-avg_target_bits)avg_reservoir+(this_bits-avg_target_bits)packetblob[choice])*8;
+ }
+ }
+
+ slew=rint(choice-bm->avgfloat)/samples*vi->rate;
+ if(slew<-slewlimit)slew=-slewlimit;
+ if(slew>slewlimit)slew=slewlimit;
+ choice=rint(bm->avgfloat+= slew/vi->rate*samples);
+ this_bits=oggpack_bytes(vbi->packetblob[choice])*8;
+ }
+
+
+
+ /* enforce min(if used) on the current floater (if used) */
+ if(bm->min_bitsper>0){
+ /* do we need to force the bitrate up? */
+ if(this_bitsminmax_reservoir-(min_target_bits-this_bits)<0){
+ choice++;
+ if(choice>=PACKETBLOBS)break;
+ this_bits=oggpack_bytes(vbi->packetblob[choice])*8;
+ }
+ }
+ }
+
+ /* enforce max (if used) on the current floater (if used) */
+ if(bm->max_bitsper>0){
+ /* do we need to force the bitrate down? */
+ if(this_bits>max_target_bits){
+ while(bm->minmax_reservoir+(this_bits-max_target_bits)>bi->reservoir_bits){
+ choice--;
+ if(choice<0)break;
+ this_bits=oggpack_bytes(vbi->packetblob[choice])*8;
+ }
+ }
+ }
+
+ /* Choice of packetblobs now made based on floater, and min/max
+ requirements. Now boundary check extreme choices */
+
+ if(choice<0){
+ /* choosing a smaller packetblob is insufficient to trim bitrate.
+ frame will need to be truncated */
+ long maxsize=(max_target_bits+(bi->reservoir_bits-bm->minmax_reservoir))/8;
+ bm->choice=choice=0;
+
+ if(oggpack_bytes(vbi->packetblob[choice])>maxsize){
+
+ oggpack_writetrunc(vbi->packetblob[choice],maxsize*8);
+ this_bits=oggpack_bytes(vbi->packetblob[choice])*8;
+ }
+ }else{
+ long minsize=(min_target_bits-bm->minmax_reservoir+7)/8;
+ if(choice>=PACKETBLOBS)
+ choice=PACKETBLOBS-1;
+
+ bm->choice=choice;
+
+ /* prop up bitrate according to demand. pad this frame out with zeroes */
+ minsize-=oggpack_bytes(vbi->packetblob[choice]);
+ while(minsize-->0)oggpack_write(vbi->packetblob[choice],0,8);
+ this_bits=oggpack_bytes(vbi->packetblob[choice])*8;
+
+ }
+
+ /* now we have the final packet and the final packet size. Update statistics */
+ /* min and max reservoir */
+ if(bm->min_bitsper>0 || bm->max_bitsper>0){
+
+ if(max_target_bits>0 && this_bits>max_target_bits){
+ bm->minmax_reservoir+=(this_bits-max_target_bits);
+ }else if(min_target_bits>0 && this_bitsminmax_reservoir+=(this_bits-min_target_bits);
+ }else{
+ /* inbetween; we want to take reservoir toward but not past desired_fill */
+ if(bm->minmax_reservoir>desired_fill){
+ if(max_target_bits>0){ /* logical bulletproofing against initialization state */
+ bm->minmax_reservoir+=(this_bits-max_target_bits);
+ if(bm->minmax_reservoirminmax_reservoir=desired_fill;
+ }else{
+ bm->minmax_reservoir=desired_fill;
+ }
+ }else{
+ if(min_target_bits>0){ /* logical bulletproofing against initialization state */
+ bm->minmax_reservoir+=(this_bits-min_target_bits);
+ if(bm->minmax_reservoir>desired_fill)bm->minmax_reservoir=desired_fill;
+ }else{
+ bm->minmax_reservoir=desired_fill;
+ }
+ }
+ }
+ }
+
+ /* avg reservoir */
+ if(bm->avg_bitsper>0){
+ long avg_target_bits=(vb->W?bm->avg_bitsper*bm->short_per_long:bm->avg_bitsper);
+ bm->avg_reservoir+=this_bits-avg_target_bits;
+ }
+
+ return(0);
+}
+
+int vorbis_bitrate_flushpacket(vorbis_dsp_state *vd,ogg_packet *op){
+ private_state *b=vd->backend_state;
+ bitrate_manager_state *bm=&b->bms;
+ vorbis_block *vb=bm->vb;
+ int choice=PACKETBLOBS/2;
+ if(!vb)return 0;
+
+ if(op){
+ vorbis_block_internal *vbi=vb->internal;
+
+ if(vorbis_bitrate_managed(vb))
+ choice=bm->choice;
+
+ op->packet=oggpack_get_buffer(vbi->packetblob[choice]);
+ op->bytes=oggpack_bytes(vbi->packetblob[choice]);
+ op->b_o_s=0;
+ op->e_o_s=vb->eofflag;
+ op->granulepos=vb->granulepos;
+ op->packetno=vb->sequence; /* for sake of completeness */
+ }
+
+ bm->vb=0;
+ return(1);
+}
diff --git a/Sources/libvorbis/lib/bitrate.h b/Sources/libvorbis/lib/bitrate.h
new file mode 100644
index 000000000..db48fcb64
--- /dev/null
+++ b/Sources/libvorbis/lib/bitrate.h
@@ -0,0 +1,59 @@
+/********************************************************************
+ * *
+ * THIS FILE IS PART OF THE OggVorbis SOFTWARE CODEC SOURCE CODE. *
+ * USE, DISTRIBUTION AND REPRODUCTION OF THIS LIBRARY SOURCE IS *
+ * GOVERNED BY A BSD-STYLE SOURCE LICENSE INCLUDED WITH THIS SOURCE *
+ * IN 'COPYING'. PLEASE READ THESE TERMS BEFORE DISTRIBUTING. *
+ * *
+ * THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2007 *
+ * by the Xiph.Org Foundation http://www.xiph.org/ *
+ * *
+ ********************************************************************
+
+ function: bitrate tracking and management
+ last mod: $Id: bitrate.h 13293 2007-07-24 00:09:47Z xiphmont $
+
+ ********************************************************************/
+
+#ifndef _V_BITRATE_H_
+#define _V_BITRATE_H_
+
+#include "vorbis/codec.h"
+#include "codec_internal.h"
+#include "os.h"
+
+/* encode side bitrate tracking */
+typedef struct bitrate_manager_state {
+ int managed;
+
+ long avg_reservoir;
+ long minmax_reservoir;
+ long avg_bitsper;
+ long min_bitsper;
+ long max_bitsper;
+
+ long short_per_long;
+ double avgfloat;
+
+ vorbis_block *vb;
+ int choice;
+} bitrate_manager_state;
+
+typedef struct bitrate_manager_info{
+ long avg_rate;
+ long min_rate;
+ long max_rate;
+ long reservoir_bits;
+ double reservoir_bias;
+
+ double slew_damp;
+
+} bitrate_manager_info;
+
+extern void vorbis_bitrate_init(vorbis_info *vi,bitrate_manager_state *bs);
+extern void vorbis_bitrate_clear(bitrate_manager_state *bs);
+extern int vorbis_bitrate_managed(vorbis_block *vb);
+extern int vorbis_bitrate_addblock(vorbis_block *vb);
+extern int vorbis_bitrate_flushpacket(vorbis_dsp_state *vd, ogg_packet *op);
+
+#endif
diff --git a/Sources/libvorbis/lib/block.c b/Sources/libvorbis/lib/block.c
new file mode 100644
index 000000000..345c04276
--- /dev/null
+++ b/Sources/libvorbis/lib/block.c
@@ -0,0 +1,1047 @@
+/********************************************************************
+ * *
+ * THIS FILE IS PART OF THE OggVorbis SOFTWARE CODEC SOURCE CODE. *
+ * USE, DISTRIBUTION AND REPRODUCTION OF THIS LIBRARY SOURCE IS *
+ * GOVERNED BY A BSD-STYLE SOURCE LICENSE INCLUDED WITH THIS SOURCE *
+ * IN 'COPYING'. PLEASE READ THESE TERMS BEFORE DISTRIBUTING. *
+ * *
+ * THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2015 *
+ * by the Xiph.Org Foundation http://www.xiph.org/ *
+ * *
+ ********************************************************************
+
+ function: PCM data vector blocking, windowing and dis/reassembly
+ last mod: $Id: block.c 19457 2015-03-03 00:15:29Z giles $
+
+ Handle windowing, overlap-add, etc of the PCM vectors. This is made
+ more amusing by Vorbis' current two allowed block sizes.
+
+ ********************************************************************/
+
+#include
+#include
+#include
+#include
+#include "vorbis/codec.h"
+#include "codec_internal.h"
+
+#include "window.h"
+#include "mdct.h"
+#include "lpc.h"
+#include "registry.h"
+#include "misc.h"
+
+/* pcm accumulator examples (not exhaustive):
+
+ <-------------- lW ---------------->
+ <--------------- W ---------------->
+: .....|..... _______________ |
+: .''' | '''_--- | |\ |
+:.....''' |_____--- '''......| | \_______|
+:.................|__________________|_______|__|______|
+ |<------ Sl ------>| > Sr < |endW
+ |beginSl |endSl | |endSr
+ |beginW |endlW |beginSr
+
+
+ |< lW >|
+ <--------------- W ---------------->
+ | | .. ______________ |
+ | | ' `/ | ---_ |
+ |___.'___/`. | ---_____|
+ |_______|__|_______|_________________|
+ | >|Sl|< |<------ Sr ----->|endW
+ | | |endSl |beginSr |endSr
+ |beginW | |endlW
+ mult[0] |beginSl mult[n]
+
+ <-------------- lW ----------------->
+ |<--W-->|
+: .............. ___ | |
+: .''' |`/ \ | |
+:.....''' |/`....\|...|
+:.........................|___|___|___|
+ |Sl |Sr |endW
+ | | |endSr
+ | |beginSr
+ | |endSl
+ |beginSl
+ |beginW
+*/
+
+/* block abstraction setup *********************************************/
+
+#ifndef WORD_ALIGN
+#define WORD_ALIGN 8
+#endif
+
+int vorbis_block_init(vorbis_dsp_state *v, vorbis_block *vb){
+ int i;
+ memset(vb,0,sizeof(*vb));
+ vb->vd=v;
+ vb->localalloc=0;
+ vb->localstore=NULL;
+ if(v->analysisp){
+ vorbis_block_internal *vbi=
+ vb->internal=_ogg_calloc(1,sizeof(vorbis_block_internal));
+ vbi->ampmax=-9999;
+
+ for(i=0;ipacketblob[i]=&vb->opb;
+ }else{
+ vbi->packetblob[i]=
+ _ogg_calloc(1,sizeof(oggpack_buffer));
+ }
+ oggpack_writeinit(vbi->packetblob[i]);
+ }
+ }
+
+ return(0);
+}
+
+void *_vorbis_block_alloc(vorbis_block *vb,long bytes){
+ bytes=(bytes+(WORD_ALIGN-1)) & ~(WORD_ALIGN-1);
+ if(bytes+vb->localtop>vb->localalloc){
+ /* can't just _ogg_realloc... there are outstanding pointers */
+ if(vb->localstore){
+ struct alloc_chain *link=_ogg_malloc(sizeof(*link));
+ vb->totaluse+=vb->localtop;
+ link->next=vb->reap;
+ link->ptr=vb->localstore;
+ vb->reap=link;
+ }
+ /* highly conservative */
+ vb->localalloc=bytes;
+ vb->localstore=_ogg_malloc(vb->localalloc);
+ vb->localtop=0;
+ }
+ {
+ void *ret=(void *)(((char *)vb->localstore)+vb->localtop);
+ vb->localtop+=bytes;
+ return ret;
+ }
+}
+
+/* reap the chain, pull the ripcord */
+void _vorbis_block_ripcord(vorbis_block *vb){
+ /* reap the chain */
+ struct alloc_chain *reap=vb->reap;
+ while(reap){
+ struct alloc_chain *next=reap->next;
+ _ogg_free(reap->ptr);
+ memset(reap,0,sizeof(*reap));
+ _ogg_free(reap);
+ reap=next;
+ }
+ /* consolidate storage */
+ if(vb->totaluse){
+ vb->localstore=_ogg_realloc(vb->localstore,vb->totaluse+vb->localalloc);
+ vb->localalloc+=vb->totaluse;
+ vb->totaluse=0;
+ }
+
+ /* pull the ripcord */
+ vb->localtop=0;
+ vb->reap=NULL;
+}
+
+int vorbis_block_clear(vorbis_block *vb){
+ int i;
+ vorbis_block_internal *vbi=vb->internal;
+
+ _vorbis_block_ripcord(vb);
+ if(vb->localstore)_ogg_free(vb->localstore);
+
+ if(vbi){
+ for(i=0;ipacketblob[i]);
+ if(i!=PACKETBLOBS/2)_ogg_free(vbi->packetblob[i]);
+ }
+ _ogg_free(vbi);
+ }
+ memset(vb,0,sizeof(*vb));
+ return(0);
+}
+
+/* Analysis side code, but directly related to blocking. Thus it's
+ here and not in analysis.c (which is for analysis transforms only).
+ The init is here because some of it is shared */
+
+static int _vds_shared_init(vorbis_dsp_state *v,vorbis_info *vi,int encp){
+ int i;
+ codec_setup_info *ci=vi->codec_setup;
+ private_state *b=NULL;
+ int hs;
+
+ if(ci==NULL||
+ ci->modes<=0||
+ ci->blocksizes[0]<64||
+ ci->blocksizes[1]blocksizes[0]){
+ return 1;
+ }
+ hs=ci->halfrate_flag;
+
+ memset(v,0,sizeof(*v));
+ b=v->backend_state=_ogg_calloc(1,sizeof(*b));
+
+ v->vi=vi;
+ b->modebits=ov_ilog(ci->modes-1);
+
+ b->transform[0]=_ogg_calloc(VI_TRANSFORMB,sizeof(*b->transform[0]));
+ b->transform[1]=_ogg_calloc(VI_TRANSFORMB,sizeof(*b->transform[1]));
+
+ /* MDCT is tranform 0 */
+
+ b->transform[0][0]=_ogg_calloc(1,sizeof(mdct_lookup));
+ b->transform[1][0]=_ogg_calloc(1,sizeof(mdct_lookup));
+ mdct_init(b->transform[0][0],ci->blocksizes[0]>>hs);
+ mdct_init(b->transform[1][0],ci->blocksizes[1]>>hs);
+
+ /* Vorbis I uses only window type 0 */
+ /* note that the correct computation below is technically:
+ b->window[0]=ov_ilog(ci->blocksizes[0]-1)-6;
+ b->window[1]=ov_ilog(ci->blocksizes[1]-1)-6;
+ but since blocksizes are always powers of two,
+ the below is equivalent.
+ */
+ b->window[0]=ov_ilog(ci->blocksizes[0])-7;
+ b->window[1]=ov_ilog(ci->blocksizes[1])-7;
+
+ if(encp){ /* encode/decode differ here */
+
+ /* analysis always needs an fft */
+ drft_init(&b->fft_look[0],ci->blocksizes[0]);
+ drft_init(&b->fft_look[1],ci->blocksizes[1]);
+
+ /* finish the codebooks */
+ if(!ci->fullbooks){
+ ci->fullbooks=_ogg_calloc(ci->books,sizeof(*ci->fullbooks));
+ for(i=0;ibooks;i++)
+ vorbis_book_init_encode(ci->fullbooks+i,ci->book_param[i]);
+ }
+
+ b->psy=_ogg_calloc(ci->psys,sizeof(*b->psy));
+ for(i=0;ipsys;i++){
+ _vp_psy_init(b->psy+i,
+ ci->psy_param[i],
+ &ci->psy_g_param,
+ ci->blocksizes[ci->psy_param[i]->blockflag]/2,
+ vi->rate);
+ }
+
+ v->analysisp=1;
+ }else{
+ /* finish the codebooks */
+ if(!ci->fullbooks){
+ ci->fullbooks=_ogg_calloc(ci->books,sizeof(*ci->fullbooks));
+ for(i=0;ibooks;i++){
+ if(ci->book_param[i]==NULL)
+ goto abort_books;
+ if(vorbis_book_init_decode(ci->fullbooks+i,ci->book_param[i]))
+ goto abort_books;
+ /* decode codebooks are now standalone after init */
+ vorbis_staticbook_destroy(ci->book_param[i]);
+ ci->book_param[i]=NULL;
+ }
+ }
+ }
+
+ /* initialize the storage vectors. blocksize[1] is small for encode,
+ but the correct size for decode */
+ v->pcm_storage=ci->blocksizes[1];
+ v->pcm=_ogg_malloc(vi->channels*sizeof(*v->pcm));
+ v->pcmret=_ogg_malloc(vi->channels*sizeof(*v->pcmret));
+ {
+ int i;
+ for(i=0;ichannels;i++)
+ v->pcm[i]=_ogg_calloc(v->pcm_storage,sizeof(*v->pcm[i]));
+ }
+
+ /* all 1 (large block) or 0 (small block) */
+ /* explicitly set for the sake of clarity */
+ v->lW=0; /* previous window size */
+ v->W=0; /* current window size */
+
+ /* all vector indexes */
+ v->centerW=ci->blocksizes[1]/2;
+
+ v->pcm_current=v->centerW;
+
+ /* initialize all the backend lookups */
+ b->flr=_ogg_calloc(ci->floors,sizeof(*b->flr));
+ b->residue=_ogg_calloc(ci->residues,sizeof(*b->residue));
+
+ for(i=0;ifloors;i++)
+ b->flr[i]=_floor_P[ci->floor_type[i]]->
+ look(v,ci->floor_param[i]);
+
+ for(i=0;iresidues;i++)
+ b->residue[i]=_residue_P[ci->residue_type[i]]->
+ look(v,ci->residue_param[i]);
+
+ return 0;
+ abort_books:
+ for(i=0;ibooks;i++){
+ if(ci->book_param[i]!=NULL){
+ vorbis_staticbook_destroy(ci->book_param[i]);
+ ci->book_param[i]=NULL;
+ }
+ }
+ vorbis_dsp_clear(v);
+ return -1;
+}
+
+/* arbitrary settings and spec-mandated numbers get filled in here */
+int vorbis_analysis_init(vorbis_dsp_state *v,vorbis_info *vi){
+ private_state *b=NULL;
+
+ if(_vds_shared_init(v,vi,1))return 1;
+ b=v->backend_state;
+ b->psy_g_look=_vp_global_look(vi);
+
+ /* Initialize the envelope state storage */
+ b->ve=_ogg_calloc(1,sizeof(*b->ve));
+ _ve_envelope_init(b->ve,vi);
+
+ vorbis_bitrate_init(vi,&b->bms);
+
+ /* compressed audio packets start after the headers
+ with sequence number 3 */
+ v->sequence=3;
+
+ return(0);
+}
+
+void vorbis_dsp_clear(vorbis_dsp_state *v){
+ int i;
+ if(v){
+ vorbis_info *vi=v->vi;
+ codec_setup_info *ci=(vi?vi->codec_setup:NULL);
+ private_state *b=v->backend_state;
+
+ if(b){
+
+ if(b->ve){
+ _ve_envelope_clear(b->ve);
+ _ogg_free(b->ve);
+ }
+
+ if(b->transform[0]){
+ mdct_clear(b->transform[0][0]);
+ _ogg_free(b->transform[0][0]);
+ _ogg_free(b->transform[0]);
+ }
+ if(b->transform[1]){
+ mdct_clear(b->transform[1][0]);
+ _ogg_free(b->transform[1][0]);
+ _ogg_free(b->transform[1]);
+ }
+
+ if(b->flr){
+ if(ci)
+ for(i=0;ifloors;i++)
+ _floor_P[ci->floor_type[i]]->
+ free_look(b->flr[i]);
+ _ogg_free(b->flr);
+ }
+ if(b->residue){
+ if(ci)
+ for(i=0;iresidues;i++)
+ _residue_P[ci->residue_type[i]]->
+ free_look(b->residue[i]);
+ _ogg_free(b->residue);
+ }
+ if(b->psy){
+ if(ci)
+ for(i=0;ipsys;i++)
+ _vp_psy_clear(b->psy+i);
+ _ogg_free(b->psy);
+ }
+
+ if(b->psy_g_look)_vp_global_free(b->psy_g_look);
+ vorbis_bitrate_clear(&b->bms);
+
+ drft_clear(&b->fft_look[0]);
+ drft_clear(&b->fft_look[1]);
+
+ }
+
+ if(v->pcm){
+ if(vi)
+ for(i=0;ichannels;i++)
+ if(v->pcm[i])_ogg_free(v->pcm[i]);
+ _ogg_free(v->pcm);
+ if(v->pcmret)_ogg_free(v->pcmret);
+ }
+
+ if(b){
+ /* free header, header1, header2 */
+ if(b->header)_ogg_free(b->header);
+ if(b->header1)_ogg_free(b->header1);
+ if(b->header2)_ogg_free(b->header2);
+ _ogg_free(b);
+ }
+
+ memset(v,0,sizeof(*v));
+ }
+}
+
+float **vorbis_analysis_buffer(vorbis_dsp_state *v, int vals){
+ int i;
+ vorbis_info *vi=v->vi;
+ private_state *b=v->backend_state;
+
+ /* free header, header1, header2 */
+ if(b->header)_ogg_free(b->header);b->header=NULL;
+ if(b->header1)_ogg_free(b->header1);b->header1=NULL;
+ if(b->header2)_ogg_free(b->header2);b->header2=NULL;
+
+ /* Do we have enough storage space for the requested buffer? If not,
+ expand the PCM (and envelope) storage */
+
+ if(v->pcm_current+vals>=v->pcm_storage){
+ v->pcm_storage=v->pcm_current+vals*2;
+
+ for(i=0;ichannels;i++){
+ v->pcm[i]=_ogg_realloc(v->pcm[i],v->pcm_storage*sizeof(*v->pcm[i]));
+ }
+ }
+
+ for(i=0;ichannels;i++)
+ v->pcmret[i]=v->pcm[i]+v->pcm_current;
+
+ return(v->pcmret);
+}
+
+static void _preextrapolate_helper(vorbis_dsp_state *v){
+ int i;
+ int order=16;
+ float *lpc=alloca(order*sizeof(*lpc));
+ float *work=alloca(v->pcm_current*sizeof(*work));
+ long j;
+ v->preextrapolate=1;
+
+ if(v->pcm_current-v->centerW>order*2){ /* safety */
+ for(i=0;ivi->channels;i++){
+ /* need to run the extrapolation in reverse! */
+ for(j=0;jpcm_current;j++)
+ work[j]=v->pcm[i][v->pcm_current-j-1];
+
+ /* prime as above */
+ vorbis_lpc_from_data(work,lpc,v->pcm_current-v->centerW,order);
+
+#if 0
+ if(v->vi->channels==2){
+ if(i==0)
+ _analysis_output("predataL",0,work,v->pcm_current-v->centerW,0,0,0);
+ else
+ _analysis_output("predataR",0,work,v->pcm_current-v->centerW,0,0,0);
+ }else{
+ _analysis_output("predata",0,work,v->pcm_current-v->centerW,0,0,0);
+ }
+#endif
+
+ /* run the predictor filter */
+ vorbis_lpc_predict(lpc,work+v->pcm_current-v->centerW-order,
+ order,
+ work+v->pcm_current-v->centerW,
+ v->centerW);
+
+ for(j=0;jpcm_current;j++)
+ v->pcm[i][v->pcm_current-j-1]=work[j];
+
+ }
+ }
+}
+
+
+/* call with val<=0 to set eof */
+
+int vorbis_analysis_wrote(vorbis_dsp_state *v, int vals){
+ vorbis_info *vi=v->vi;
+ codec_setup_info *ci=vi->codec_setup;
+
+ if(vals<=0){
+ int order=32;
+ int i;
+ float *lpc=alloca(order*sizeof(*lpc));
+
+ /* if it wasn't done earlier (very short sample) */
+ if(!v->preextrapolate)
+ _preextrapolate_helper(v);
+
+ /* We're encoding the end of the stream. Just make sure we have
+ [at least] a few full blocks of zeroes at the end. */
+ /* actually, we don't want zeroes; that could drop a large
+ amplitude off a cliff, creating spread spectrum noise that will
+ suck to encode. Extrapolate for the sake of cleanliness. */
+
+ vorbis_analysis_buffer(v,ci->blocksizes[1]*3);
+ v->eofflag=v->pcm_current;
+ v->pcm_current+=ci->blocksizes[1]*3;
+
+ for(i=0;ichannels;i++){
+ if(v->eofflag>order*2){
+ /* extrapolate with LPC to fill in */
+ long n;
+
+ /* make a predictor filter */
+ n=v->eofflag;
+ if(n>ci->blocksizes[1])n=ci->blocksizes[1];
+ vorbis_lpc_from_data(v->pcm[i]+v->eofflag-n,lpc,n,order);
+
+ /* run the predictor filter */
+ vorbis_lpc_predict(lpc,v->pcm[i]+v->eofflag-order,order,
+ v->pcm[i]+v->eofflag,v->pcm_current-v->eofflag);
+ }else{
+ /* not enough data to extrapolate (unlikely to happen due to
+ guarding the overlap, but bulletproof in case that
+ assumtion goes away). zeroes will do. */
+ memset(v->pcm[i]+v->eofflag,0,
+ (v->pcm_current-v->eofflag)*sizeof(*v->pcm[i]));
+
+ }
+ }
+ }else{
+
+ if(v->pcm_current+vals>v->pcm_storage)
+ return(OV_EINVAL);
+
+ v->pcm_current+=vals;
+
+ /* we may want to reverse extrapolate the beginning of a stream
+ too... in case we're beginning on a cliff! */
+ /* clumsy, but simple. It only runs once, so simple is good. */
+ if(!v->preextrapolate && v->pcm_current-v->centerW>ci->blocksizes[1])
+ _preextrapolate_helper(v);
+
+ }
+ return(0);
+}
+
+/* do the deltas, envelope shaping, pre-echo and determine the size of
+ the next block on which to continue analysis */
+int vorbis_analysis_blockout(vorbis_dsp_state *v,vorbis_block *vb){
+ int i;
+ vorbis_info *vi=v->vi;
+ codec_setup_info *ci=vi->codec_setup;
+ private_state *b=v->backend_state;
+ vorbis_look_psy_global *g=b->psy_g_look;
+ long beginW=v->centerW-ci->blocksizes[v->W]/2,centerNext;
+ vorbis_block_internal *vbi=(vorbis_block_internal *)vb->internal;
+
+ /* check to see if we're started... */
+ if(!v->preextrapolate)return(0);
+
+ /* check to see if we're done... */
+ if(v->eofflag==-1)return(0);
+
+ /* By our invariant, we have lW, W and centerW set. Search for
+ the next boundary so we can determine nW (the next window size)
+ which lets us compute the shape of the current block's window */
+
+ /* we do an envelope search even on a single blocksize; we may still
+ be throwing more bits at impulses, and envelope search handles
+ marking impulses too. */
+ {
+ long bp=_ve_envelope_search(v);
+ if(bp==-1){
+
+ if(v->eofflag==0)return(0); /* not enough data currently to search for a
+ full long block */
+ v->nW=0;
+ }else{
+
+ if(ci->blocksizes[0]==ci->blocksizes[1])
+ v->nW=0;
+ else
+ v->nW=bp;
+ }
+ }
+
+ centerNext=v->centerW+ci->blocksizes[v->W]/4+ci->blocksizes[v->nW]/4;
+
+ {
+ /* center of next block + next block maximum right side. */
+
+ long blockbound=centerNext+ci->blocksizes[v->nW]/2;
+ if(v->pcm_currentlW=v->lW;
+ vb->W=v->W;
+ vb->nW=v->nW;
+
+ if(v->W){
+ if(!v->lW || !v->nW){
+ vbi->blocktype=BLOCKTYPE_TRANSITION;
+ /*fprintf(stderr,"-");*/
+ }else{
+ vbi->blocktype=BLOCKTYPE_LONG;
+ /*fprintf(stderr,"_");*/
+ }
+ }else{
+ if(_ve_envelope_mark(v)){
+ vbi->blocktype=BLOCKTYPE_IMPULSE;
+ /*fprintf(stderr,"|");*/
+
+ }else{
+ vbi->blocktype=BLOCKTYPE_PADDING;
+ /*fprintf(stderr,".");*/
+
+ }
+ }
+
+ vb->vd=v;
+ vb->sequence=v->sequence++;
+ vb->granulepos=v->granulepos;
+ vb->pcmend=ci->blocksizes[v->W];
+
+ /* copy the vectors; this uses the local storage in vb */
+
+ /* this tracks 'strongest peak' for later psychoacoustics */
+ /* moved to the global psy state; clean this mess up */
+ if(vbi->ampmax>g->ampmax)g->ampmax=vbi->ampmax;
+ g->ampmax=_vp_ampmax_decay(g->ampmax,v);
+ vbi->ampmax=g->ampmax;
+
+ vb->pcm=_vorbis_block_alloc(vb,sizeof(*vb->pcm)*vi->channels);
+ vbi->pcmdelay=_vorbis_block_alloc(vb,sizeof(*vbi->pcmdelay)*vi->channels);
+ for(i=0;ichannels;i++){
+ vbi->pcmdelay[i]=
+ _vorbis_block_alloc(vb,(vb->pcmend+beginW)*sizeof(*vbi->pcmdelay[i]));
+ memcpy(vbi->pcmdelay[i],v->pcm[i],(vb->pcmend+beginW)*sizeof(*vbi->pcmdelay[i]));
+ vb->pcm[i]=vbi->pcmdelay[i]+beginW;
+
+ /* before we added the delay
+ vb->pcm[i]=_vorbis_block_alloc(vb,vb->pcmend*sizeof(*vb->pcm[i]));
+ memcpy(vb->pcm[i],v->pcm[i]+beginW,ci->blocksizes[v->W]*sizeof(*vb->pcm[i]));
+ */
+
+ }
+
+ /* handle eof detection: eof==0 means that we've not yet received EOF
+ eof>0 marks the last 'real' sample in pcm[]
+ eof<0 'no more to do'; doesn't get here */
+
+ if(v->eofflag){
+ if(v->centerW>=v->eofflag){
+ v->eofflag=-1;
+ vb->eofflag=1;
+ return(1);
+ }
+ }
+
+ /* advance storage vectors and clean up */
+ {
+ int new_centerNext=ci->blocksizes[1]/2;
+ int movementW=centerNext-new_centerNext;
+
+ if(movementW>0){
+
+ _ve_envelope_shift(b->ve,movementW);
+ v->pcm_current-=movementW;
+
+ for(i=0;ichannels;i++)
+ memmove(v->pcm[i],v->pcm[i]+movementW,
+ v->pcm_current*sizeof(*v->pcm[i]));
+
+
+ v->lW=v->W;
+ v->W=v->nW;
+ v->centerW=new_centerNext;
+
+ if(v->eofflag){
+ v->eofflag-=movementW;
+ if(v->eofflag<=0)v->eofflag=-1;
+ /* do not add padding to end of stream! */
+ if(v->centerW>=v->eofflag){
+ v->granulepos+=movementW-(v->centerW-v->eofflag);
+ }else{
+ v->granulepos+=movementW;
+ }
+ }else{
+ v->granulepos+=movementW;
+ }
+ }
+ }
+
+ /* done */
+ return(1);
+}
+
+int vorbis_synthesis_restart(vorbis_dsp_state *v){
+ vorbis_info *vi=v->vi;
+ codec_setup_info *ci;
+ int hs;
+
+ if(!v->backend_state)return -1;
+ if(!vi)return -1;
+ ci=vi->codec_setup;
+ if(!ci)return -1;
+ hs=ci->halfrate_flag;
+
+ v->centerW=ci->blocksizes[1]>>(hs+1);
+ v->pcm_current=v->centerW>>hs;
+
+ v->pcm_returned=-1;
+ v->granulepos=-1;
+ v->sequence=-1;
+ v->eofflag=0;
+ ((private_state *)(v->backend_state))->sample_count=-1;
+
+ return(0);
+}
+
+int vorbis_synthesis_init(vorbis_dsp_state *v,vorbis_info *vi){
+ if(_vds_shared_init(v,vi,0)){
+ vorbis_dsp_clear(v);
+ return 1;
+ }
+ vorbis_synthesis_restart(v);
+ return 0;
+}
+
+/* Unlike in analysis, the window is only partially applied for each
+ block. The time domain envelope is not yet handled at the point of
+ calling (as it relies on the previous block). */
+
+int vorbis_synthesis_blockin(vorbis_dsp_state *v,vorbis_block *vb){
+ vorbis_info *vi=v->vi;
+ codec_setup_info *ci=vi->codec_setup;
+ private_state *b=v->backend_state;
+ int hs=ci->halfrate_flag;
+ int i,j;
+
+ if(!vb)return(OV_EINVAL);
+ if(v->pcm_current>v->pcm_returned && v->pcm_returned!=-1)return(OV_EINVAL);
+
+ v->lW=v->W;
+ v->W=vb->W;
+ v->nW=-1;
+
+ if((v->sequence==-1)||
+ (v->sequence+1 != vb->sequence)){
+ v->granulepos=-1; /* out of sequence; lose count */
+ b->sample_count=-1;
+ }
+
+ v->sequence=vb->sequence;
+
+ if(vb->pcm){ /* no pcm to process if vorbis_synthesis_trackonly
+ was called on block */
+ int n=ci->blocksizes[v->W]>>(hs+1);
+ int n0=ci->blocksizes[0]>>(hs+1);
+ int n1=ci->blocksizes[1]>>(hs+1);
+
+ int thisCenter;
+ int prevCenter;
+
+ v->glue_bits+=vb->glue_bits;
+ v->time_bits+=vb->time_bits;
+ v->floor_bits+=vb->floor_bits;
+ v->res_bits+=vb->res_bits;
+
+ if(v->centerW){
+ thisCenter=n1;
+ prevCenter=0;
+ }else{
+ thisCenter=0;
+ prevCenter=n1;
+ }
+
+ /* v->pcm is now used like a two-stage double buffer. We don't want
+ to have to constantly shift *or* adjust memory usage. Don't
+ accept a new block until the old is shifted out */
+
+ for(j=0;jchannels;j++){
+ /* the overlap/add section */
+ if(v->lW){
+ if(v->W){
+ /* large/large */
+ const float *w=_vorbis_window_get(b->window[1]-hs);
+ float *pcm=v->pcm[j]+prevCenter;
+ float *p=vb->pcm[j];
+ for(i=0;iwindow[0]-hs);
+ float *pcm=v->pcm[j]+prevCenter+n1/2-n0/2;
+ float *p=vb->pcm[j];
+ for(i=0;iW){
+ /* small/large */
+ const float *w=_vorbis_window_get(b->window[0]-hs);
+ float *pcm=v->pcm[j]+prevCenter;
+ float *p=vb->pcm[j]+n1/2-n0/2;
+ for(i=0;iwindow[0]-hs);
+ float *pcm=v->pcm[j]+prevCenter;
+ float *p=vb->pcm[j];
+ for(i=0;ipcm[j]+thisCenter;
+ float *p=vb->pcm[j]+n;
+ for(i=0;icenterW)
+ v->centerW=0;
+ else
+ v->centerW=n1;
+
+ /* deal with initial packet state; we do this using the explicit
+ pcm_returned==-1 flag otherwise we're sensitive to first block
+ being short or long */
+
+ if(v->pcm_returned==-1){
+ v->pcm_returned=thisCenter;
+ v->pcm_current=thisCenter;
+ }else{
+ v->pcm_returned=prevCenter;
+ v->pcm_current=prevCenter+
+ ((ci->blocksizes[v->lW]/4+
+ ci->blocksizes[v->W]/4)>>hs);
+ }
+
+ }
+
+ /* track the frame number... This is for convenience, but also
+ making sure our last packet doesn't end with added padding. If
+ the last packet is partial, the number of samples we'll have to
+ return will be past the vb->granulepos.
+
+ This is not foolproof! It will be confused if we begin
+ decoding at the last page after a seek or hole. In that case,
+ we don't have a starting point to judge where the last frame
+ is. For this reason, vorbisfile will always try to make sure
+ it reads the last two marked pages in proper sequence */
+
+ if(b->sample_count==-1){
+ b->sample_count=0;
+ }else{
+ b->sample_count+=ci->blocksizes[v->lW]/4+ci->blocksizes[v->W]/4;
+ }
+
+ if(v->granulepos==-1){
+ if(vb->granulepos!=-1){ /* only set if we have a position to set to */
+
+ v->granulepos=vb->granulepos;
+
+ /* is this a short page? */
+ if(b->sample_count>v->granulepos){
+ /* corner case; if this is both the first and last audio page,
+ then spec says the end is cut, not beginning */
+ long extra=b->sample_count-vb->granulepos;
+
+ /* we use ogg_int64_t for granule positions because a
+ uint64 isn't universally available. Unfortunately,
+ that means granposes can be 'negative' and result in
+ extra being negative */
+ if(extra<0)
+ extra=0;
+
+ if(vb->eofflag){
+ /* trim the end */
+ /* no preceding granulepos; assume we started at zero (we'd
+ have to in a short single-page stream) */
+ /* granulepos could be -1 due to a seek, but that would result
+ in a long count, not short count */
+
+ /* Guard against corrupt/malicious frames that set EOP and
+ a backdated granpos; don't rewind more samples than we
+ actually have */
+ if(extra > (v->pcm_current - v->pcm_returned)<pcm_current - v->pcm_returned)<pcm_current-=extra>>hs;
+ }else{
+ /* trim the beginning */
+ v->pcm_returned+=extra>>hs;
+ if(v->pcm_returned>v->pcm_current)
+ v->pcm_returned=v->pcm_current;
+ }
+
+ }
+
+ }
+ }else{
+ v->granulepos+=ci->blocksizes[v->lW]/4+ci->blocksizes[v->W]/4;
+ if(vb->granulepos!=-1 && v->granulepos!=vb->granulepos){
+
+ if(v->granulepos>vb->granulepos){
+ long extra=v->granulepos-vb->granulepos;
+
+ if(extra)
+ if(vb->eofflag){
+ /* partial last frame. Strip the extra samples off */
+
+ /* Guard against corrupt/malicious frames that set EOP and
+ a backdated granpos; don't rewind more samples than we
+ actually have */
+ if(extra > (v->pcm_current - v->pcm_returned)<pcm_current - v->pcm_returned)<pcm_current-=extra>>hs;
+ } /* else {Shouldn't happen *unless* the bitstream is out of
+ spec. Either way, believe the bitstream } */
+ } /* else {Shouldn't happen *unless* the bitstream is out of
+ spec. Either way, believe the bitstream } */
+ v->granulepos=vb->granulepos;
+ }
+ }
+
+ /* Update, cleanup */
+
+ if(vb->eofflag)v->eofflag=1;
+ return(0);
+
+}
+
+/* pcm==NULL indicates we just want the pending samples, no more */
+int vorbis_synthesis_pcmout(vorbis_dsp_state *v,float ***pcm){
+ vorbis_info *vi=v->vi;
+
+ if(v->pcm_returned>-1 && v->pcm_returnedpcm_current){
+ if(pcm){
+ int i;
+ for(i=0;ichannels;i++)
+ v->pcmret[i]=v->pcm[i]+v->pcm_returned;
+ *pcm=v->pcmret;
+ }
+ return(v->pcm_current-v->pcm_returned);
+ }
+ return(0);
+}
+
+int vorbis_synthesis_read(vorbis_dsp_state *v,int n){
+ if(n && v->pcm_returned+n>v->pcm_current)return(OV_EINVAL);
+ v->pcm_returned+=n;
+ return(0);
+}
+
+/* intended for use with a specific vorbisfile feature; we want access
+ to the [usually synthetic/postextrapolated] buffer and lapping at
+ the end of a decode cycle, specifically, a half-short-block worth.
+ This funtion works like pcmout above, except it will also expose
+ this implicit buffer data not normally decoded. */
+int vorbis_synthesis_lapout(vorbis_dsp_state *v,float ***pcm){
+ vorbis_info *vi=v->vi;
+ codec_setup_info *ci=vi->codec_setup;
+ int hs=ci->halfrate_flag;
+
+ int n=ci->blocksizes[v->W]>>(hs+1);
+ int n0=ci->blocksizes[0]>>(hs+1);
+ int n1=ci->blocksizes[1]>>(hs+1);
+ int i,j;
+
+ if(v->pcm_returned<0)return 0;
+
+ /* our returned data ends at pcm_returned; because the synthesis pcm
+ buffer is a two-fragment ring, that means our data block may be
+ fragmented by buffering, wrapping or a short block not filling
+ out a buffer. To simplify things, we unfragment if it's at all
+ possibly needed. Otherwise, we'd need to call lapout more than
+ once as well as hold additional dsp state. Opt for
+ simplicity. */
+
+ /* centerW was advanced by blockin; it would be the center of the
+ *next* block */
+ if(v->centerW==n1){
+ /* the data buffer wraps; swap the halves */
+ /* slow, sure, small */
+ for(j=0;jchannels;j++){
+ float *p=v->pcm[j];
+ for(i=0;ipcm_current-=n1;
+ v->pcm_returned-=n1;
+ v->centerW=0;
+ }
+
+ /* solidify buffer into contiguous space */
+ if((v->lW^v->W)==1){
+ /* long/short or short/long */
+ for(j=0;jchannels;j++){
+ float *s=v->pcm[j];
+ float *d=v->pcm[j]+(n1-n0)/2;
+ for(i=(n1+n0)/2-1;i>=0;--i)
+ d[i]=s[i];
+ }
+ v->pcm_returned+=(n1-n0)/2;
+ v->pcm_current+=(n1-n0)/2;
+ }else{
+ if(v->lW==0){
+ /* short/short */
+ for(j=0;jchannels;j++){
+ float *s=v->pcm[j];
+ float *d=v->pcm[j]+n1-n0;
+ for(i=n0-1;i>=0;--i)
+ d[i]=s[i];
+ }
+ v->pcm_returned+=n1-n0;
+ v->pcm_current+=n1-n0;
+ }
+ }
+
+ if(pcm){
+ int i;
+ for(i=0;ichannels;i++)
+ v->pcmret[i]=v->pcm[i]+v->pcm_returned;
+ *pcm=v->pcmret;
+ }
+
+ return(n1+n-v->pcm_returned);
+
+}
+
+const float *vorbis_window(vorbis_dsp_state *v,int W){
+ vorbis_info *vi=v->vi;
+ codec_setup_info *ci=vi->codec_setup;
+ int hs=ci->halfrate_flag;
+ private_state *b=v->backend_state;
+
+ if(b->window[W]-1<0)return NULL;
+ return _vorbis_window_get(b->window[W]-hs);
+}
diff --git a/Sources/libvorbis/lib/books/coupled/res_books_51.h b/Sources/libvorbis/lib/books/coupled/res_books_51.h
new file mode 100644
index 000000000..93910ff48
--- /dev/null
+++ b/Sources/libvorbis/lib/books/coupled/res_books_51.h
@@ -0,0 +1,12274 @@
+/********************************************************************
+ * *
+ * THIS FILE IS PART OF THE OggVorbis SOFTWARE CODEC SOURCE CODE. *
+ * USE, DISTRIBUTION AND REPRODUCTION OF THIS LIBRARY SOURCE IS *
+ * GOVERNED BY A BSD-STYLE SOURCE LICENSE INCLUDED WITH THIS SOURCE *
+ * IN 'COPYING'. PLEASE READ THESE TERMS BEFORE DISTRIBUTING. *
+ * *
+ * THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2010 *
+ * by the Xiph.Org Foundation http://www.xiph.org/ *
+ * *
+ ********************************************************************
+ *
+ * function: static codebooks for 5.1 surround
+ * last modified: $Id: res_books_51.h 19057 2014-01-22 12:32:31Z xiphmont $
+ *
+ ********************************************************************/
+
+static const long _vq_quantlist__44p0_l0_0[] = {
+ 6,
+ 5,
+ 7,
+ 4,
+ 8,
+ 3,
+ 9,
+ 2,
+ 10,
+ 1,
+ 11,
+ 0,
+ 12,
+};
+
+static const char _vq_lengthlist__44p0_l0_0[] = {
+ 1, 3, 4, 7, 7, 8, 8, 9, 9, 9,10,10,10, 5, 6, 5,
+ 8, 7, 9, 8, 9, 9,10, 9,11,10, 5, 5, 7, 7, 8, 8,
+ 9, 9, 9, 9,10,10,11, 8, 9, 8,10, 9,10, 9,10, 9,
+ 11,10,11,10, 8, 8, 9, 9,10, 9,10, 9,11,10,11,10,
+ 11,10,11,11,11,11,11,11,11,11,11,11,11,11,10,11,
+ 11,11,12,11,11,11,11,11,11,10,12,12,12,12,12,12,
+ 12,11,12,12,12,11,11,11,12,12,12,12,12,12,12,11,
+ 12,11,12,11,11,13,12,12,12,13,12,12,12,12,11,12,
+ 11,11,13,13,13,12,12,12,12,12,12,11,11,11,10,13,
+ 13,13,12,13,12,13,11,13,10,12,11,11,13,13,12,13,
+ 12,12,12,12,11,12,11,11,11,
+};
+
+static const static_codebook _44p0_l0_0 = {
+ 2, 169,
+ (char *)_vq_lengthlist__44p0_l0_0,
+ 1, -526516224, 1616117760, 4, 0,
+ (long *)_vq_quantlist__44p0_l0_0,
+ 0
+};
+
+static const long _vq_quantlist__44p0_l0_1[] = {
+ 2,
+ 1,
+ 3,
+ 0,
+ 4,
+};
+
+static const char _vq_lengthlist__44p0_l0_1[] = {
+ 1, 4, 4, 6, 6, 5, 5, 5, 7, 5, 5, 5, 5, 6, 7, 7,
+ 6, 7, 7, 7, 6, 7, 7, 7, 7,
+};
+
+static const static_codebook _44p0_l0_1 = {
+ 2, 25,
+ (char *)_vq_lengthlist__44p0_l0_1,
+ 1, -533725184, 1611661312, 3, 0,
+ (long *)_vq_quantlist__44p0_l0_1,
+ 0
+};
+
+static const long _vq_quantlist__44p0_l1_0[] = {
+ 1,
+ 0,
+ 2,
+};
+
+static const char _vq_lengthlist__44p0_l1_0[] = {
+ 1, 4, 4, 4, 4, 4, 4, 4, 4,
+};
+
+static const static_codebook _44p0_l1_0 = {
+ 2, 9,
+ (char *)_vq_lengthlist__44p0_l1_0,
+ 1, -516716544, 1630767104, 2, 0,
+ (long *)_vq_quantlist__44p0_l1_0,
+ 0
+};
+
+static const char _huff_lengthlist__44p0_lfe[] = {
+ 1, 3, 2, 3,
+};
+
+static const static_codebook _huff_book__44p0_lfe = {
+ 2, 4,
+ (char *)_huff_lengthlist__44p0_lfe,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
+static const char _huff_lengthlist__44p0_long[] = {
+ 2, 3, 6, 7,10,14,16, 3, 2, 5, 7,11,14,17, 6, 5,
+ 5, 7,10,12,14, 7, 7, 6, 6, 7, 9,13,10,11, 9, 6,
+ 6, 9,11,15,15,13,10, 9,10,12,18,18,16,14,12,13,
+ 16,
+};
+
+static const static_codebook _huff_book__44p0_long = {
+ 2, 49,
+ (char *)_huff_lengthlist__44p0_long,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
+static const long _vq_quantlist__44p0_p1_0[] = {
+ 1,
+ 0,
+ 2,
+};
+
+static const char _vq_lengthlist__44p0_p1_0[] = {
+ 1, 2, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0,
+};
+
+static const static_codebook _44p0_p1_0 = {
+ 5, 243,
+ (char *)_vq_lengthlist__44p0_p1_0,
+ 1, -535822336, 1611661312, 2, 0,
+ (long *)_vq_quantlist__44p0_p1_0,
+ 0
+};
+
+static const long _vq_quantlist__44p0_p2_0[] = {
+ 1,
+ 0,
+ 2,
+};
+
+static const char _vq_lengthlist__44p0_p2_0[] = {
+ 1, 5, 5, 0, 7, 7, 0, 8, 8, 0, 9, 9, 0,12,12, 0,
+ 8, 8, 0, 9, 9, 0,12,12, 0, 8, 8, 0, 6, 6, 0,11,
+ 11, 0,12,12, 0,12,12, 0,15,15, 0,11,11, 0,12,12,
+ 0,15,15, 0,12,12, 0, 5, 5, 0, 5, 5, 0, 6, 6, 0,
+ 7, 7, 0,11,11, 0, 6, 6, 0, 7, 7, 0,10,11, 0, 6,
+ 6, 0, 7, 7, 0,11,11, 0,12,12, 0,11,11, 0,15,15,
+ 0,10,10, 0,12,12, 0,15,15, 0,12,12, 0, 6, 6, 0,
+ 12,12, 0,12,12, 0,12,12, 0,15,15, 0,11,11, 0,12,
+ 12, 0,15,15, 0,12,12, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 8, 8, 0,12,12, 0,12,12, 0,12,12, 0,15,
+ 15, 0,12,12, 0,11,12, 0,15,16, 0,11,11, 0, 6, 6,
+ 0,11,12, 0,12,12, 0,12,12, 0,16,15, 0,12,12, 0,
+ 13,12, 0,15,14, 0,12,12, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0,
+};
+
+static const static_codebook _44p0_p2_0 = {
+ 5, 243,
+ (char *)_vq_lengthlist__44p0_p2_0,
+ 1, -533200896, 1614282752, 2, 0,
+ (long *)_vq_quantlist__44p0_p2_0,
+ 0
+};
+
+static const long _vq_quantlist__44p0_p2_1[] = {
+ 1,
+ 0,
+ 2,
+};
+
+static const char _vq_lengthlist__44p0_p2_1[] = {
+ 1, 3, 3, 0, 9, 9, 0, 9, 9, 0,10,10, 0, 9, 9, 0,
+ 10,10, 0,10,10, 0, 9, 9, 0,10,10, 0, 7, 7, 0, 7,
+ 7, 0, 6, 6, 0, 8, 8, 0, 7, 7, 0, 8, 8, 0, 8, 9,
+ 0, 8, 8, 0, 8, 8, 0, 7, 7, 0, 9, 9, 0, 8, 8, 0,
+ 10,10, 0, 9, 9, 0,10,10, 0,10,10, 0, 9, 9, 0,10,
+ 10, 0, 9, 9, 0,11,11, 0,11,11, 0,12,12, 0,11,11,
+ 0,12,12, 0,13,13, 0,12,12, 0,13,12, 0, 8, 8, 0,
+ 12,12, 0,12,12, 0,13,13, 0,12,12, 0,13,13, 0,13,
+ 13, 0,13,13, 0,13,13, 0, 7, 7, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 9, 9, 0,11,11, 0,12,12, 0,13,13, 0,12,
+ 12, 0,13,13, 0,13,13, 0,12,12, 0,12,12, 0, 8, 8,
+ 0,12,12, 0,12,12, 0,13,13, 0,13,13, 0,13,14, 0,
+ 14,13, 0,13,13, 0,13,13, 0, 7, 7, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0,
+};
+
+static const static_codebook _44p0_p2_1 = {
+ 5, 243,
+ (char *)_vq_lengthlist__44p0_p2_1,
+ 1, -535822336, 1611661312, 2, 0,
+ (long *)_vq_quantlist__44p0_p2_1,
+ 0
+};
+
+static const long _vq_quantlist__44p0_p3_0[] = {
+ 1,
+ 0,
+ 2,
+};
+
+static const char _vq_lengthlist__44p0_p3_0[] = {
+ 1, 6, 6, 7, 8, 8, 7, 8, 8, 7, 9, 9,10,12,11, 9,
+ 8, 8, 7, 9, 9,11,12,12, 9, 9, 9, 6, 7, 7,10,11,
+ 11,10,11,11,10,11,11,13,13,14,12,12,12,11,11,11,
+ 14,14,14,12,12,12, 6, 5, 5, 9, 6, 5, 9, 6, 6, 9,
+ 7, 7,12,10,10,11, 6, 6,10, 7, 7,13,10,10,12, 7,
+ 7, 7, 8, 8,12,10,10,12,10,10,11,10,10,15,13,13,
+ 13, 9, 9,12,11,11,16,13,13,15,11,11, 8, 7, 7,12,
+ 12,12,12,11,11,12,11,11,14,14,14,14,12,12,12,12,
+ 12,16,15,15,14,12,12, 0,10,10, 0,12,12, 0,12,12,
+ 0,11,11, 0,14,14, 0,11,11, 0,12,12, 0,15,15, 0,
+ 11,11, 8, 8, 8,13,11,11,13,10,10,13,11,11,15,13,
+ 13,14,11,11,12,10,10,16,14,14,14,10,10, 9, 7, 7,
+ 13,11,11,13,11,11,12,11,11,16,14,14,14,12,12,13,
+ 12,12,15,14,14,15,13,12, 0,11,11, 0,12,12, 0,12,
+ 12, 0,12,12, 0,15,15, 0,12,12, 0,13,12, 0,14,15,
+ 0,12,12,
+};
+
+static const static_codebook _44p0_p3_0 = {
+ 5, 243,
+ (char *)_vq_lengthlist__44p0_p3_0,
+ 1, -531365888, 1616117760, 2, 0,
+ (long *)_vq_quantlist__44p0_p3_0,
+ 0
+};
+
+static const long _vq_quantlist__44p0_p3_1[] = {
+ 2,
+ 1,
+ 3,
+ 0,
+ 4,
+};
+
+static const char _vq_lengthlist__44p0_p3_1[] = {
+ 2, 4, 4, 8, 8,10,12,12,11,11, 9,11,11,12,13,11,
+ 12,12,11,11,11,12,12,12,12,10,13,12,13,13,11,12,
+ 12,13,13,11,12,12,13,13,11,12,13,13,13,11,13,13,
+ 13,13,10,13,13,12,13,11,12,12,14,14,11,13,12,12,
+ 12,11,12,12,13,13,11,13,13,12,12,11,13,13,13,13,
+ 11,12,12,13,13,11,13,13,12,12,11,12,12,13,13,11,
+ 13,13,12,12,11,13,13,13,13,11,12,12,14,14,11,13,
+ 13,12,12,11,12,12,13,13,11,13,13,12,12,11,10,10,
+ 10,10,12,10,10,11,11,11, 8, 8,11,11,13,10,10,10,
+ 10,12,10,10,10,10,13,11,11,11,11,13,10,10,11,11,
+ 13,11,11,12,12,13,11,11,11,11,13,11,11,12,12,13,
+ 11,11,12,12,13,10,10,11,11,13,11,11,11,11,13,11,
+ 10,11,11,13,11,11,11,11,13,11,11,11,11,13,10,10,
+ 11,11,13,11,11,11,11,12,10,11,11,11,13,11,11,11,
+ 11,13,11,11,11,11,13,10,10,11,11,13,11,11,11,11,
+ 13,11,11,11,11,13,11,11,11,11,11,10,10,10,10,12,
+ 10,10, 9, 9,12,12,12,11,11,13,12,12, 9, 9,13,12,
+ 12,10,10,12,12,12,12,12,13,13,13,14,14,13,12,12,
+ 11,11,13,13,13,12,12,13,12,12,11,11,13,12,13,11,
+ 11,13,13,13,14,14,13,12,12,10,10,13,13,13,11,11,
+ 13,12,12,10,10,13,13,13,11,11,13,13,13,14,14,13,
+ 12,12,10,10,13,13,13,11,11,13,12,13,10,10,13,13,
+ 13,11,11,13,13,13,14,14,13,12,12,10,10,13,13,13,
+ 11,11,13,13,12,10,10,14,12,12, 8, 8,14,12,12, 9,
+ 9,14,11,11, 9, 9,14,12,12, 8, 8,14,11,11, 7, 7,
+ 14,13,13,10,10,15,12,12,10,10,15,13,13,10,10,15,
+ 12,12, 9, 9,15,13,13,10,10,15,13,13,10,10,15,12,
+ 12,10,10,15,13,13,10,10,14,12,12, 9, 9,14,13,13,
+ 9, 9,14,13,13, 9, 9,15,12,12, 9, 9,15,13,13, 9,
+ 9,14,12,12, 9, 9,14,13,13, 9, 9,14,13,13, 9, 9,
+ 15,12,12, 9, 9,14,13,13, 9, 9,14,12,12, 9, 9,14,
+ 13,13, 9, 9,13,12,12, 8, 8,13,13,13, 8, 8,14,13,
+ 13, 9, 9,13,13,13, 7, 7,14,13,13, 8, 8,14,14,14,
+ 10,10,14,14,14,11,11,14,14,14, 9, 9,14,14,14,10,
+ 10,14,14,14, 9, 9,14,14,14,10, 9,15,14,14,11,11,
+ 14,14,14, 9, 9,14,14,14,10,10,14,14,14, 9, 9,14,
+ 14,14, 9, 9,15,14,14,11,11,14,14,14, 8, 8,14,14,
+ 14, 9, 9,14,14,14, 8, 8,14,14,14, 9, 9,15,14,14,
+ 11,11,14,14,14, 8, 8,14,14,14, 9, 9,14,14,14, 8,
+ 8,12,12,12,13,13,16,15,15,11,11,16,15,16,12,12,
+ 17,16,16,11,11,17,15,15,12,11,16,16,16,12,13,16,
+ 15,15,13,13,16,16,16,12,12,16,16,15,13,13,16,16,
+ 16,12,12,16,16,16,13,13,17,16,16,14,14,17,17,16,
+ 12,12,17,16,16,13,13,17,17,16,12,13,16,16,17,13,
+ 12,17,16,16,14,13,17,16,16,12,12,17,16,16,12,12,
+ 17,16,17,12,12,17,17,17,13,13,16,16,16,13,14,17,
+ 17,16,12,12,16,16,16,13,13,17,17,17,12,12,13,14,
+ 14,10,10,16,14,14,12,12,16,15,15,14,14,16,14,14,
+ 12,12,15,14,14,13,13,17,15,15,14,13,16,16,15,15,
+ 15,16,15,15,14,14,16,15,15,14,14,17,15,15,14,14,
+ 16,15,15,14,14,16,16,15,15,15,17,15,15,13,13,16,
+ 15,15,14,14,17,15,15,13,13,17,15,15,14,14,16,15,
+ 15,15,15,16,14,14,13,13,16,15,15,14,14,16,14,14,
+ 13,13,17,15,15,14,14,16,16,15,15,15,17,14,14,13,
+ 13,16,15,15,14,14,17,14,14,13,13,13,11,11,10,10,
+ 16,14,14,13,13,15,14,14,13,13,16,14,14,12,12,16,
+ 14,14,12,12,15,15,15,14,14,16,14,14,14,14,16,15,
+ 14,14,14,16,14,14,14,14,16,15,15,14,13,16,15,15,
+ 14,14,16,14,14,14,14,17,15,15,14,14,16,14,14,14,
+ 14,16,15,15,13,14,16,15,15,14,14,16,14,14,14,14,
+ 16,15,15,13,13,16,14,14,13,13,16,15,15,13,13,16,
+ 15,15,14,14,16,14,14,14,14,17,15,15,13,13,16,15,
+ 14,13,13,17,15,15,13,13,14,14,14, 9, 9,14,14,14,
+ 17,17,14,15,15,18,18,14,14,14,18,19,14,14,14,18,
+ 18,15,15,15,19,18,15,16,15,18,20,15,15,15,18,19,
+ 15,15,15,19,19,15,15,15,18,20,15,15,15,18,19,15,
+ 15,16,20,18,15,15,15,18,18,15,15,15,19,19,15,15,
+ 15,18,19,15,15,15,18,19,15,15,15,19,19,14,15,14,
+ 19,19,15,15,15,20,19,15,14,14,19,18,14,15,15,18,
+ 19,15,15,16,20,20,14,14,14,18,19,15,15,15,19,18,
+ 14,14,14,18,18,14,12,12, 9, 9,13,14,14,18,18,14,
+ 13,13,18,19,14,14,14,18,18,14,14,14,18,18,15,15,
+ 15,19,19,15,14,14,19,18,14,15,15,19,18,15,14,14,
+ 18,18,15,15,15,19,18,14,15,15,19,19,15,14,14,19,
+ 18,14,15,15,19,18,15,14,14,19,18,14,15,15,19,18,
+ 15,15,15,21,18,15,14,14,19,18,14,15,15,18,19,14,
+ 15,14,20,19,14,15,15,18,19,14,15,15,19,19,15,14,
+ 14,19,20,14,15,15,18,18,14,14,14,19,19,14,15,15,
+ 19,18,12,12,12,13,13,16,15,15,11,11,16,15,15,12,
+ 12,16,16,16,11,11,16,15,15,11,11,16,16,16,13,13,
+ 17,16,16,13,13,17,17,17,12,12,16,16,16,13,13,17,
+ 16,17,13,12,15,16,16,12,12,16,15,15,13,13,17,16,
+ 16,12,12,16,16,15,12,12,16,16,16,12,12,17,17,16,
+ 13,12,16,16,16,13,13,17,16,16,12,12,17,16,16,12,
+ 12,17,17,16,12,12,16,17,16,12,12,17,15,15,13,13,
+ 17,16,16,12,12,16,16,16,12,12,16,16,16,12,12,13,
+ 13,13, 9, 9,15,14,14,13,13,16,15,14,14,14,16,14,
+ 14,13,13,15,14,14,13,13,17,15,15,14,14,16,15,15,
+ 15,15,16,15,15,14,14,16,15,15,15,15,17,15,15,14,
+ 14,16,15,15,14,14,16,15,15,15,15,17,14,15,14,14,
+ 16,15,15,14,14,17,15,15,13,14,17,15,15,14,14,16,
+ 15,15,15,15,17,14,14,13,13,16,15,15,14,14,17,14,
+ 14,13,13,17,15,15,14,14,16,15,16,15,15,17,14,14,
+ 13,13,16,15,15,14,14,18,14,14,13,13,13,11,11,11,
+ 11,15,14,14,12,12,15,14,14,13,13,16,14,14,12,12,
+ 16,13,14,12,12,16,15,15,13,13,16,14,14,14,14,16,
+ 15,15,13,13,16,14,14,13,13,16,14,15,13,13,15,15,
+ 15,13,13,16,14,14,14,13,16,14,14,13,13,16,14,14,
+ 13,13,16,15,15,13,13,16,15,15,13,13,16,14,14,14,
+ 14,16,15,15,12,12,16,14,14,13,13,16,15,15,12,12,
+ 16,15,15,13,13,16,14,14,14,14,17,15,14,12,12,16,
+ 14,14,13,13,16,15,15,12,12,14,14,14, 8, 8,14,14,
+ 14,17,18,14,15,15,17,18,14,14,14,17,18,14,14,14,
+ 18,18,14,15,15,18,18,14,16,15,19,19,15,15,15,18,
+ 19,15,16,15,20,19,15,15,15,18,18,14,15,15,18,19,
+ 15,16,16,20,19,15,15,15,19,17,14,15,15,20,18,14,
+ 15,15,18,18,14,15,15,18,19,14,15,15,19,20,14,14,
+ 14,18,18,14,15,15,18,19,14,14,14,18,19,14,15,15,
+ 19,18,15,16,16,20,21,14,14,15,19,19,14,15,15,19,
+ 19,14,14,14,19,18,13,12,12, 9, 9,13,14,14,18,19,
+ 14,14,14,18,19,14,14,14,18,18,14,14,14,18,18,14,
+ 15,15,19,19,15,14,14,19,18,15,15,15,19,19,15,14,
+ 14,19,20,14,15,15,18,19,14,15,15,20,18,15,14,14,
+ 18,18,14,15,15,18,18,14,14,14,19,19,14,15,15,18,
+ 18,14,15,15,19,18,15,14,14,19,19,14,15,15,19,18,
+ 15,14,14,19,18,14,14,15,18,19,14,15,15,19,18,15,
+ 14,14,18,19,14,15,14,19,20,14,14,14,19,19,14,15,
+ 15,19,19,12,12,12,13,13,16,16,16,11,11,16,16,16,
+ 12,12,17,16,16,11,11,17,15,15,11,11,16,16,16,13,
+ 13,17,15,16,13,13,16,16,16,12,12,17,16,16,13,13,
+ 17,17,16,12,12,17,17,16,13,13,17,16,16,13,13,17,
+ 17,17,12,12,17,16,16,13,13,17,17,17,12,12,16,16,
+ 16,12,12,17,15,15,13,13,17,16,16,11,11,17,16,16,
+ 12,12,16,16,16,11,11,16,17,16,12,12,17,16,16,13,
+ 13,17,17,16,12,12,17,17,16,12,12,17,16,16,11,11,
+ 13,14,14, 9, 9,16,14,14,13,13,16,14,15,14,14,16,
+ 14,14,12,12,16,14,14,13,13,17,15,15,14,14,16,15,
+ 15,15,15,17,15,15,14,14,16,15,15,14,14,17,15,15,
+ 14,14,16,15,15,14,14,16,15,15,15,16,17,14,15,14,
+ 14,16,15,15,14,14,17,15,15,14,14,16,15,15,14,14,
+ 16,15,15,15,15,17,14,14,13,13,16,15,15,14,14,16,
+ 14,14,13,13,17,15,15,14,14,16,16,15,15,15,17,14,
+ 14,13,13,16,15,15,14,14,17,14,14,13,13,13,11,11,
+ 10,10,16,14,14,12,12,15,13,13,13,12,16,14,14,11,
+ 11,16,14,14,11,11,16,14,15,13,14,16,14,14,13,13,
+ 16,15,15,13,13,16,14,14,13,13,16,15,15,13,13,16,
+ 15,15,13,13,17,14,14,14,14,17,15,15,13,13,16,14,
+ 15,13,13,16,15,15,13,13,16,15,15,13,13,16,14,14,
+ 13,13,17,15,15,12,12,16,14,14,12,12,16,15,15,12,
+ 12,16,15,15,13,13,16,14,14,13,13,17,15,15,12,12,
+ 17,14,14,12,12,16,15,15,12,12,13,14,14, 8, 8,13,
+ 14,14,18,18,13,15,15,17,18,14,14,14,18,19,14,14,
+ 14,19,18,14,15,15,19,18,15,15,16,21,18,15,15,15,
+ 19,19,14,16,16,19,19,14,15,15,18,19,14,15,15,19,
+ 20,14,16,16,19,18,15,15,15,18,19,14,15,15,19,18,
+ 15,15,15,18,18,15,15,15,20,18,15,16,16,20,19,14,
+ 15,14,18,19,14,15,16,19,20,14,15,15,19,18,15,15,
+ 15,19,18,15,16,16,20,19,15,14,14,18,18,14,15,15,
+ 19,19,14,15,15,18,18,13,12,12, 8, 8,13,14,14,19,
+ 18,14,13,13,20,18,14,14,14,19,18,14,13,13,18,19,
+ 14,15,15,20,19,15,14,14,19,19,14,15,15,19,18,15,
+ 14,14,20,20,15,15,15,19,18,14,15,15,19,18,15,14,
+ 14,19,18,14,15,15,20,19,14,14,14,20,19,14,15,15,
+ 19,18,15,15,15,18,18,15,14,14,18,18,14,15,15,19,
+ 19,14,14,14,19,19,14,15,15,19,19,15,15,15,19,18,
+ 15,14,14,20,19,15,15,15,19,19,14,14,14,20,19,14,
+ 15,15,20,20,12,12,12,13,13,17,16,16,11,11,16,16,
+ 15,12,12,17,16,16,11,11,17,15,15,11,11,17,17,17,
+ 13,13,17,16,16,13,13,17,17,17,12,12,17,16,16,13,
+ 13,17,17,16,12,13,16,17,16,13,13,17,16,15,13,13,
+ 17,16,16,12,12,17,16,16,12,13,17,16,17,12,12,17,
+ 17,17,12,12,17,16,15,13,13,17,16,16,12,12,17,16,
+ 16,12,12,17,16,16,11,11,16,16,16,12,12,17,15,15,
+ 13,13,17,16,15,11,11,16,16,16,12,12,17,16,16,11,
+ 11,13,14,14, 9, 9,16,14,14,13,13,16,14,15,14,14,
+ 16,14,14,12,12,16,14,14,13,13,17,15,15,14,15,16,
+ 15,15,15,15,17,15,15,14,14,16,15,15,15,14,16,15,
+ 15,14,14,16,15,15,14,14,16,15,16,15,15,17,15,14,
+ 14,14,16,15,15,14,14,17,15,15,13,13,16,15,15,14,
+ 14,16,16,16,15,15,17,14,14,13,13,16,15,15,14,14,
+ 18,14,15,13,13,16,15,15,14,14,16,16,15,15,15,16,
+ 14,14,13,13,16,15,15,14,14,17,14,15,13,13,13,11,
+ 11,10,10,15,14,14,12,12,15,14,14,13,13,16,14,14,
+ 12,12,16,13,14,12,12,16,14,15,14,13,16,14,14,14,
+ 14,16,15,15,13,13,16,14,14,13,13,16,15,15,13,13,
+ 15,15,15,13,13,16,14,14,14,14,17,15,15,13,13,16,
+ 14,14,13,13,16,15,15,13,13,16,15,15,13,13,16,14,
+ 14,13,13,17,15,15,12,12,16,14,14,12,12,16,14,15,
+ 12,12,16,15,15,13,13,16,14,14,13,13,17,15,15,12,
+ 12,16,14,14,12,12,16,15,15,12,12,14,14,14, 8, 8,
+ 14,14,14,17,17,14,15,15,18,18,14,14,14,18,17,14,
+ 14,14,18,18,14,15,15,18,20,15,16,15,19,18,15,15,
+ 15,19,18,15,15,16,19,18,15,15,15,18,18,14,15,15,
+ 18,18,15,16,16,18,19,15,15,15,18,18,15,15,15,19,
+ 20,15,15,15,18,18,15,15,15,18,18,15,16,16,19,19,
+ 15,14,15,19,19,15,15,15,19,20,14,14,15,18,18,15,
+ 15,15,19,19,15,16,16,19,19,15,15,14,18,19,15,15,
+ 15,20,20,15,15,14,18,18,13,12,12, 8, 8,13,14,14,
+ 18,18,14,14,14,18,18,14,14,14,18,20,14,14,14,18,
+ 18,14,15,15,19,18,15,14,14,18,19,15,15,15,18,19,
+ 15,14,14,18,19,15,15,15,18,18,14,15,14,18,19,15,
+ 14,14,21,19,15,15,15,19,18,14,14,14,19,18,14,15,
+ 15,19,18,15,15,15,20,19,15,14,14,20,18,14,15,15,
+ 18,19,14,14,14,19,18,14,15,15,18,19,15,15,15,18,
+ 19,15,14,14,19,19,15,15,15,19,19,14,14,14,19,20,
+ 14,15,15,18,19,
+};
+
+static const static_codebook _44p0_p3_1 = {
+ 5, 3125,
+ (char *)_vq_lengthlist__44p0_p3_1,
+ 1, -533725184, 1611661312, 3, 0,
+ (long *)_vq_quantlist__44p0_p3_1,
+ 0
+};
+
+static const long _vq_quantlist__44p0_p4_0[] = {
+ 2,
+ 1,
+ 3,
+ 0,
+ 4,
+};
+
+static const char _vq_lengthlist__44p0_p4_0[] = {
+ 2, 6, 6,14,14, 6, 8, 8,14,14, 7, 7, 7,14,14, 0,
+ 13,13,15,16, 0,13,13,15,15, 7, 8, 8,15,15, 9,10,
+ 10,16,16, 9, 8, 8,14,15, 0,13,13,17,17, 0,13,13,
+ 16,16, 8, 8, 8,15,15,12,11,11,16,16, 9, 8, 8,14,
+ 14, 0,13,13,17,17, 0,13,13,15,15, 0,14,14,16,16,
+ 0, 0, 0,18,19, 0,12,12,16,15, 0,16,16, 0,20, 0,
+ 14,14,16,16, 0,14,14,17,17, 0, 0, 0,19,19, 0,12,
+ 12,15,15, 0,18,17,21,21, 0,14,14,16,16, 5, 7, 7,
+ 12,13, 9,10, 9,14,14,11,10,10,14,14, 0, 0, 0,18,
+ 17, 0,20,21,18,18, 9,10,10,14,14,12,12,12,17,16,
+ 12,10,10,14,14, 0,20,20,18,17, 0,21,21,17,17,11,
+ 10,10,14,14,15,13,13,18,18,13,11,11,14,14, 0,20,
+ 0,18,18, 0,20,21,18,17, 0,21, 0,18,19, 0, 0, 0,
+ 0,21, 0,21,20,16,17, 0, 0, 0,21,21, 0, 0, 0,20,
+ 18, 0,20, 0,17,18, 0, 0, 0, 0, 0, 0, 0,20,16,17,
+ 0, 0, 0,20, 0, 0, 0, 0,18,18, 6, 6, 6,13,13, 8,
+ 5, 5,11,11, 9, 6, 6,13,13, 0, 9, 9,12,12, 0,10,
+ 10,14,14, 9, 7, 7,13,13,12, 9, 9,13,13,10, 6, 6,
+ 13,13, 0,10,10,14,14, 0,10,10,13,13, 9, 7, 7,13,
+ 13,13,10,10,13,13,11, 6, 6,13,13, 0,10,10,15,15,
+ 0,10,10,13,13, 0,12,11,15,15, 0,20,19,17,16, 0,
+ 9, 9,13,13, 0,13,13,20,19, 0,11,11,13,13, 0,11,
+ 11,15,15, 0,20,19,17,17, 0,10,10,13,13, 0,14,15,
+ 0,21, 0,12,12,13,13, 0,10,10,12,12, 0,11,11,15,
+ 15, 0,11,11,15,15, 0,15,15,20,20, 0,16,16, 0, 0,
+ 0,11,11,15,15, 0,14,14,17,17, 0,11,11,15,15, 0,
+ 15,15,20,21, 0,16,16,21,21, 0,12,12,15,15, 0,15,
+ 15,18,20, 0,11,11,16,15, 0,15,15,21,21, 0,16,16,
+ 0,21, 0,16,16, 0, 0, 0, 0, 0, 0, 0, 0,14,14,21,
+ 21, 0,17,18, 0, 0, 0,16,17,20, 0, 0,16,16, 0, 0,
+ 0, 0, 0, 0, 0, 0,15,15,20,20, 0,19,18, 0,21, 0,
+ 18,17, 0, 0, 0,10,10,11,11, 0,10,10,10,10, 0,11,
+ 11,12,12, 0,11,11, 9, 9, 0,13,13,12,12, 0,11,11,
+ 12,12, 0,13,13,12,12, 0,10,10,12,12, 0,12,12,13,
+ 13, 0,12,12,12,12, 0,11,11,12,12, 0,13,13,12,12,
+ 0,10,10,12,12, 0,13,13,13,13, 0,12,12,12,12, 0,
+ 14,13,13,13, 0,19,21,15,15, 0,12,11,12,12, 0,16,
+ 15,19,19, 0,13,13,11,11, 0,13,13,13,13, 0, 0,21,
+ 15,16, 0,12,12,12,12, 0,16,16,19,21, 0,13,13,12,
+ 12, 7, 7, 7,16,16,11, 9, 9,16,16,12, 9, 9,16,16,
+ 0,13,13,16,16, 0,14,14,17,16,11, 9, 9,16,16,14,
+ 12,11,17,17,13, 8, 9,15,15, 0,13,13,19,19, 0,13,
+ 13,16,15,12,10,10,17,17,15,12,12,19,18,14, 9, 9,
+ 17,16, 0,14,14,18, 0, 0,14,13,16,16, 0,14,15,18,
+ 17, 0,21, 0,19,21, 0,12,12,16,16, 0,16,16, 0, 0,
+ 0,14,14,16,16, 0,14,14,18,18, 0, 0,21,20, 0, 0,
+ 13,13,16,17, 0,18,18, 0, 0, 0,15,14,17,16, 8, 7,
+ 7,14,14,11,10,10,15,15,13,10,10,15,15, 0,21,20,
+ 19,19, 0,21, 0,17,18,11,10,10,15,16,14,12,12,18,
+ 18,14,11,11,15,14, 0,21,20,18,19, 0, 0,21,18,18,
+ 12,11,11,16,16,16,14,14,18,20,14,11,11,16,15, 0,
+ 20,20,19,19, 0, 0,20,18,18, 0,21, 0,18,19, 0, 0,
+ 0, 0, 0, 0,20,20,17,18, 0, 0, 0,20,20, 0, 0, 0,
+ 19,19, 0, 0, 0,20,18, 0, 0, 0, 0, 0, 0, 0,21,18,
+ 18, 0,21,21, 0,21, 0, 0, 0,19,20,11, 9, 9,14,14,
+ 13,10,10,14,14,13,11,11,15,15, 0,13,13,13,13, 0,
+ 14,14,16,16,13,11,11,15,15,16,12,12,15,15,14,10,
+ 10,14,14, 0,14,14,16,16, 0,14,14,15,15,13,10,10,
+ 15,15,17,13,14,15,16,15,10,10,15,15, 0,14,14,17,
+ 16, 0,14,14,15,15, 0,15,15,17,17, 0, 0,21,18,18,
+ 0,13,13,15,15, 0,16,16,21,20, 0,14,14,15,14, 0,
+ 15,14,16,17, 0, 0,20,20,19, 0,13,13,15,15, 0,19,
+ 18, 0, 0, 0,15,15,15,15, 0,11,11,14,14, 0,12,12,
+ 16,16, 0,12,12,16,16, 0,15,16,21,21, 0,16,17,21,
+ 0, 0,12,12,17,16, 0,14,14,18,19, 0,11,11,16,16,
+ 0,15,15,20,21, 0,16,16,21, 0, 0,12,12,17,16, 0,
+ 15,15,19,19, 0,12,12,16,17, 0,16,15, 0, 0, 0,16,
+ 16, 0, 0, 0,17,17, 0,21, 0, 0, 0, 0, 0, 0,14,15,
+ 20, 0, 0,17,17, 0, 0, 0,17,17, 0, 0, 0,17,16, 0,
+ 0, 0, 0, 0, 0, 0, 0,15,15, 0, 0, 0,18,18, 0, 0,
+ 0,18,17, 0, 0, 0,11,11,14,14, 0,12,12,15,15, 0,
+ 12,12,15,15, 0,13,13,14,14, 0,14,14,17,17, 0,12,
+ 12,16,16, 0,14,14,16,16, 0,11,11,15,15, 0,13,13,
+ 16,17, 0,13,13,16,16, 0,12,12,15,15, 0,14,14,17,
+ 16, 0,11,11,15,15, 0,14,14,17,17, 0,13,13,16,16,
+ 0,15,15,17,18, 0,21,20,20,21, 0,12,12,15,15, 0,
+ 16,16,20,21, 0,14,14,15,15, 0,14,14,17,17, 0, 0,
+ 0,18,19, 0,12,13,15,15, 0,18,17,21, 0, 0,14,15,
+ 15,15, 8, 8, 8,16,16,12,10,10,16,16,13, 9, 9,16,
+ 16, 0,14,14,18,17, 0,14,14,16,17,12,10,10,18,17,
+ 14,12,11,18,18,14, 9, 9,16,16, 0,13,13,18,18, 0,
+ 13,13,17,16,12, 9, 9,16,17,17,13,13,17,17,14, 9,
+ 9,15,15, 0,14,14,20,19, 0,13,13,16,16, 0,15,15,
+ 19,18, 0, 0, 0,20,19, 0,12,13,17,17, 0,16,16,20,
+ 0, 0,14,14,16,17, 0,14,14,19,18, 0, 0, 0,20,20,
+ 0,13,13,16,16, 0,18,17, 0, 0, 0,15,15,16,16, 9,
+ 7, 7,14,14,12,10,10,15,15,13,10,10,15,15, 0,21,
+ 0,18,19, 0,20,21,19,18,12,10,10,16,15,15,13,13,
+ 18,18,14,11,11,15,15, 0, 0, 0,19,18, 0, 0,21,18,
+ 18,13,11,11,15,15,16,14,14,17,19,15,11,11,15,15,
+ 0,21,21,20,18, 0, 0,21,18,18, 0, 0,21,21,19, 0,
+ 0, 0, 0, 0, 0,19,20,18,17, 0, 0, 0,21,21, 0,21,
+ 0,20,18, 0, 0,21,19,19, 0, 0, 0, 0, 0, 0,20,21,
+ 17,17, 0, 0, 0, 0, 0, 0,21, 0,18,20, 0,10,10,14,
+ 14, 0,11,11,15,15, 0,11,11,15,15, 0,14,14,15,15,
+ 0,15,15,16,16, 0,11,12,16,16, 0,13,13,16,16, 0,
+ 11,11,15,15, 0,14,14,17,17, 0,14,14,15,15, 0,11,
+ 11,16,15, 0,14,14,15,15, 0,11,11,15,15, 0,15,15,
+ 17,17, 0,14,14,15,15, 0,16,16,18,18, 0, 0, 0,20,
+ 19, 0,14,13,16,15, 0,17,17,21, 0, 0,15,15,15,15,
+ 0,16,15,17,16, 0,20, 0,20,18, 0,13,14,15,15, 0,
+ 19,18, 0,21, 0,15,15,15,15, 0,11,11,14,14, 0,12,
+ 12,16,16, 0,12,12,16,16, 0,16,15,20,21, 0,17,16,
+ 0, 0, 0,12,12,16,16, 0,14,14,18,18, 0,11,11,16,
+ 16, 0,15,15,21,20, 0,16,16, 0, 0, 0,12,12,16,17,
+ 0,15,14,19,19, 0,11,12,16,16, 0,15,15,21, 0, 0,
+ 16,16, 0, 0, 0,16,17, 0, 0, 0, 0, 0, 0, 0, 0,15,
+ 15,21, 0, 0,17,17, 0, 0, 0,17,17, 0, 0, 0,17,16,
+ 0, 0, 0, 0, 0, 0, 0, 0,15,15, 0,20, 0,19,20, 0,
+ 0, 0,17,17, 0, 0, 0,12,12,15,15, 0,12,12,15,15,
+ 0,12,12,16,16, 0,13,13,15,15, 0,15,15,17,17, 0,
+ 13,13,17,16, 0,14,14,17,17, 0,11,11,16,16, 0,14,
+ 14,17,17, 0,13,13,16,16, 0,12,12,16,16, 0,15,15,
+ 16,17, 0,11,11,15,16, 0,14,14,17,17, 0,13,14,16,
+ 16, 0,15,15,18,18, 0,21,20,20,19, 0,13,13,16,17,
+ 0,16,16, 0, 0, 0,14,14,16,16, 0,15,15,18,18, 0,
+ 0, 0,20,19, 0,13,13,16,16, 0,17,17, 0, 0, 0,14,
+ 14,16,16, 0,11,11,16,16, 0,13,13,18,17, 0,13,13,
+ 17,17, 0,16,16,17,17, 0,16,16,17,18, 0,12,12,17,
+ 17, 0,15,15,18,18, 0,12,12,16,16, 0,16,16,19,19,
+ 0,15,15,16,17, 0,12,12,17,17, 0,17,17,18,18, 0,
+ 12,12,17,17, 0,16,16,19,19, 0,15,16,17,17, 0,16,
+ 16,18,17, 0, 0, 0,21,21, 0,13,13,16,16, 0,17,17,
+ 0,20, 0,15,15,16,17, 0,16,16,19,18, 0, 0,21,20,
+ 21, 0,14,14,17,16, 0,20, 0, 0, 0, 0,15,16,16,17,
+ 0, 9, 9,14,14, 0,13,13,16,16, 0,14,14,15,15, 0,
+ 0,20,19,19, 0, 0, 0,19,19, 0,12,12,15,15, 0,15,
+ 16,19,18, 0,14,14,15,15, 0,21, 0,18,18, 0,20, 0,
+ 17,18, 0,13,13,16,16, 0,17,17,17,19, 0,14,14,16,
+ 15, 0,21,20,20,19, 0, 0, 0,19,19, 0, 0, 0,19,18,
+ 0, 0, 0, 0, 0, 0,20,20,17,18, 0, 0, 0,21,21, 0,
+ 0, 0,18,18, 0,21, 0,18,19, 0, 0, 0, 0, 0, 0,20,
+ 21,18,18, 0, 0, 0,20,21, 0, 0, 0,19,19, 0,18,18,
+ 15,15, 0,20,21,17,17, 0,19,21,17,17, 0, 0, 0,17,
+ 18, 0, 0, 0,20,19, 0,19,19,17,17, 0, 0, 0,18,18,
+ 0,19,20,16,17, 0, 0,21,20,20, 0,19,20,19,18, 0,
+ 19,20,16,16, 0, 0, 0,18,19, 0,19,20,17,17, 0, 0,
+ 21, 0,20, 0,21,21,17,19, 0,20, 0,19,20, 0, 0, 0,
+ 20, 0, 0,19,18,17,16, 0, 0, 0, 0, 0, 0, 0,20,17,
+ 17, 0,20,21,18,20, 0, 0, 0, 0,21, 0,19,20,17,17,
+ 0, 0, 0, 0, 0, 0,20,21,17,17, 0,11,11,14,14, 0,
+ 13,13,16,17, 0,13,13,16,16, 0,17,17, 0,21, 0,18,
+ 17,21, 0, 0,13,13,16,16, 0,15,15,18,18, 0,12,12,
+ 16,16, 0,17,16,21, 0, 0,17,17, 0, 0, 0,12,12,17,
+ 17, 0,17,17,19,21, 0,13,12,16,16, 0,17,17, 0, 0,
+ 0,17,17, 0, 0, 0,18,17, 0,21, 0, 0, 0, 0, 0, 0,
+ 15,15,20, 0, 0,20,18, 0, 0, 0,17,18, 0, 0, 0,16,
+ 17, 0, 0, 0, 0, 0, 0, 0, 0,15,15, 0, 0, 0,19,19,
+ 0, 0, 0,18,18, 0, 0, 0,14,14,18,18, 0,16,16, 0,
+ 21, 0,16,16,21,21, 0,17,17, 0,20, 0,17,17,20, 0,
+ 0,16,15, 0, 0, 0,20,20, 0, 0, 0,15,15,20,20, 0,
+ 17,17,21, 0, 0,17,18,20,20, 0,15,15,20,20, 0,18,
+ 18, 0, 0, 0,15,15,19,20, 0,17,18, 0, 0, 0,17,17,
+ 20,20, 0,18,17,21, 0, 0, 0, 0, 0,21, 0,15,15,20,
+ 20, 0,19,19, 0, 0, 0,17,17,21, 0, 0,17,17, 0, 0,
+ 0, 0, 0,21, 0, 0,15,15,19,19, 0,20,21, 0, 0, 0,
+ 18,17,21,21, 0,12,12,16,16, 0,14,14,17,17, 0,13,
+ 13,17,18, 0,16,16,18,17, 0,16,16,18,18, 0,13,13,
+ 18,18, 0,15,16,19,18, 0,13,13,16,16, 0,16,16,20,
+ 18, 0,16,16,17,17, 0,12,13,17,17, 0,17,16,18,18,
+ 0,12,12,16,16, 0,17,16,20,19, 0,16,16,16,16, 0,
+ 16,17,18,20, 0, 0, 0,21,20, 0,14,14,17,16, 0,19,
+ 18, 0,20, 0,16,16,17,16, 0,16,16,17,18, 0, 0,21,
+ 21,21, 0,14,14,16,16, 0,20,20,21, 0, 0,16,16,16,
+ 16, 0,10,10,14,14, 0,14,14,15,16, 0,14,14,15,15,
+ 0, 0,21,18,18, 0, 0,21,18,19, 0,13,13,16,16, 0,
+ 16,16,18,18, 0,14,14,15,15, 0,21, 0,18,18, 0,21,
+ 0,18,18, 0,13,13,16,16, 0,17,17,19,20, 0,14,14,
+ 15,15, 0, 0, 0,18,20, 0, 0,21,18,18, 0, 0,21,19,
+ 18, 0, 0, 0, 0, 0, 0,20,21,18,17, 0, 0, 0,21,21,
+ 0, 0, 0,19,19, 0,21, 0,18,19, 0, 0, 0, 0, 0, 0,
+ 21,20,17,17, 0, 0,21,20, 0, 0, 0, 0,19,19, 0,19,
+ 20,15,16, 0, 0,20,18,17, 0,20,21,17,18, 0,21, 0,
+ 18,18, 0, 0, 0,19,19, 0,20,20,17,18, 0, 0, 0,18,
+ 19, 0,20,20,18,17, 0, 0, 0, 0,20, 0, 0,21,17,18,
+ 0,20,21,17,17, 0, 0, 0,18,18, 0,19,19,17,17, 0,
+ 0, 0,21,21, 0,20,20,17,17, 0, 0, 0,21,19, 0, 0,
+ 0,20,19, 0,21,20,17,18, 0, 0, 0, 0, 0, 0, 0,20,
+ 18,17, 0,21,20,18,18, 0, 0, 0,20,21, 0,20,20,17,
+ 17, 0, 0, 0, 0, 0, 0,20, 0,17,17, 0,11,11,13,14,
+ 0,13,13,16,16, 0,13,13,16,16, 0,17,17, 0, 0, 0,
+ 17,18, 0, 0, 0,13,13,16,16, 0,15,16,18,18, 0,13,
+ 13,16,17, 0,16,17,20, 0, 0,17,18,20, 0, 0,13,13,
+ 17,17, 0,16,16,20,21, 0,13,13,16,16, 0,17,17,21,
+ 0, 0,17,18, 0, 0, 0,17,18, 0,21, 0, 0, 0, 0, 0,
+ 0,15,15,20, 0, 0,19,19, 0, 0, 0,17,17, 0, 0, 0,
+ 18,17,21,20, 0, 0, 0, 0, 0, 0,16,16,20,21, 0,21,
+ 20, 0,21, 0,19,21, 0, 0, 0,15,15, 0, 0, 0,16,17,
+ 0,19, 0,16,16, 0, 0, 0,17,17, 0, 0, 0,19,18, 0,
+ 0, 0,16,16,20,20, 0,20,18,21, 0, 0,15,15,21,21,
+ 0,18,18, 0, 0, 0,18,19, 0, 0, 0,16,15, 0,21, 0,
+ 20,19, 0, 0, 0,16,16, 0, 0, 0,20,18, 0,21, 0,17,
+ 18,21, 0, 0,18,19, 0, 0, 0, 0, 0, 0, 0, 0,16,16,
+ 20,20, 0,19,20, 0, 0, 0,17,17, 0, 0, 0,18,17,20,
+ 21, 0, 0, 0, 0, 0, 0,16,16, 0,20, 0,20,22, 0, 0,
+ 0,18,18, 0,22,
+};
+
+static const static_codebook _44p0_p4_0 = {
+ 5, 3125,
+ (char *)_vq_lengthlist__44p0_p4_0,
+ 1, -528744448, 1616642048, 3, 0,
+ (long *)_vq_quantlist__44p0_p4_0,
+ 0
+};
+
+static const long _vq_quantlist__44p0_p4_1[] = {
+ 3,
+ 2,
+ 4,
+ 1,
+ 5,
+ 0,
+ 6,
+};
+
+static const char _vq_lengthlist__44p0_p4_1[] = {
+ 2, 3, 3, 3, 3, 3, 3,
+};
+
+static const static_codebook _44p0_p4_1 = {
+ 1, 7,
+ (char *)_vq_lengthlist__44p0_p4_1,
+ 1, -533200896, 1611661312, 3, 0,
+ (long *)_vq_quantlist__44p0_p4_1,
+ 0
+};
+
+static const long _vq_quantlist__44p0_p5_0[] = {
+ 1,
+ 0,
+ 2,
+};
+
+static const char _vq_lengthlist__44p0_p5_0[] = {
+ 1, 6, 6, 6, 8, 8, 7, 8, 8, 7, 9, 8,10,11,11, 9,
+ 8, 8, 7, 8, 8,11,11,11, 9, 8, 8, 6, 7, 7,10,10,
+ 10,10,10,10,10,10,10,14,13,13,12,11,11,10,10,10,
+ 14,14,13,13,11,11, 6, 6, 6, 8, 5, 5, 8, 7, 7, 8,
+ 7, 7,11, 9, 9, 9, 7, 7, 8, 7, 7,12,10,10,10, 7,
+ 7, 7, 8, 8,12,11,11,12,10,10,11,10,10,14,13,13,
+ 13,10,10,11,10,11,16,14,14,13,10,10, 7, 8, 7,12,
+ 12,12,12,11,11,12,11,11,16,14,15,13,12,12,11,11,
+ 11,17,15,14,14,13,13,10, 9, 9,13,11,11,13,11,11,
+ 12,11,11,16,14,13,14,11,11,12,11,11,16,15,14,14,
+ 11,11, 7, 8, 8,12,11,11,12,10,10,12,10,10,16,14,
+ 13,13,11,11,12,10,10,16,14,14,13,10,10, 8, 8, 8,
+ 12,12,12,12,11,11,12,11,11,16,14,15,14,12,12,12,
+ 11,11,16,15,15,14,12,12,10,10,10,13,11,11,13,11,
+ 11,12,12,12,16,14,14,14,11,11,12,11,11,17,14,15,
+ 14,11,11,
+};
+
+static const static_codebook _44p0_p5_0 = {
+ 5, 243,
+ (char *)_vq_lengthlist__44p0_p5_0,
+ 1, -527106048, 1620377600, 2, 0,
+ (long *)_vq_quantlist__44p0_p5_0,
+ 0
+};
+
+static const long _vq_quantlist__44p0_p5_1[] = {
+ 1,
+ 0,
+ 2,
+};
+
+static const char _vq_lengthlist__44p0_p5_1[] = {
+ 2, 7, 7, 7, 8, 8, 7, 7, 7, 7, 8, 8, 8, 8, 9, 8,
+ 7, 7, 8, 8, 8, 9, 9, 9, 9, 7, 7, 6, 6, 6, 9, 7,
+ 7, 9, 7, 7, 9, 8, 8,10, 8, 8,10, 8, 8,10, 8, 8,
+ 10, 8, 8,10, 8, 8, 7, 6, 6, 9, 6, 6, 9, 6, 6, 9,
+ 7, 7,10, 8, 8, 9, 6, 6, 9, 7, 7,10, 8, 8, 9, 7,
+ 7, 7, 8, 8,11, 9, 9,11, 9, 9,11, 9, 9,12, 9, 9,
+ 12, 8, 8,12, 9, 9,12,10, 9,12, 8, 8, 8, 7, 7,10,
+ 9, 9,11, 9, 9,11, 9, 9,11,11,10,11, 9, 9,11,10,
+ 9,11,10,11,11, 9, 9,10, 8, 8,11, 9, 9,11, 9, 9,
+ 11, 9, 9,11,10,10,11, 9, 9,11, 9, 9,11,10,10,11,
+ 9, 9, 9, 8, 8,12, 9, 9,12, 9, 9,11, 9, 9,12, 9,
+ 9,12, 8, 8,12, 9, 9,12, 9, 9,12, 8, 8, 9, 7, 7,
+ 11, 9,10,11,10, 9,11, 9, 9,11,11,11,11, 9, 9,11,
+ 10,10,11,11,11,11, 9, 9,10, 9, 9,11, 9, 9,11,10,
+ 10,11,10, 9,11,10,10,11, 9, 9,11,10,10,11,10,11,
+ 11, 9, 9,
+};
+
+static const static_codebook _44p0_p5_1 = {
+ 5, 243,
+ (char *)_vq_lengthlist__44p0_p5_1,
+ 1, -530841600, 1616642048, 2, 0,
+ (long *)_vq_quantlist__44p0_p5_1,
+ 0
+};
+
+static const long _vq_quantlist__44p0_p6_0[] = {
+ 1,
+ 0,
+ 2,
+};
+
+static const char _vq_lengthlist__44p0_p6_0[] = {
+ 1, 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, 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, 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, 7, 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, 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, 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,
+ 9, 9, 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, 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, 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, 9, 9,
+};
+
+static const static_codebook _44p0_p6_0 = {
+ 5, 243,
+ (char *)_vq_lengthlist__44p0_p6_0,
+ 1, -516716544, 1630767104, 2, 0,
+ (long *)_vq_quantlist__44p0_p6_0,
+ 0
+};
+
+static const long _vq_quantlist__44p0_p6_1[] = {
+ 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 const char _vq_lengthlist__44p0_p6_1[] = {
+ 1, 3, 2, 5, 5, 6, 6, 7, 7, 8, 8, 9, 9,10,10,11,
+ 11,12,12,12,14,14,14,15,15,
+};
+
+static const static_codebook _44p0_p6_1 = {
+ 1, 25,
+ (char *)_vq_lengthlist__44p0_p6_1,
+ 1, -518864896, 1620639744, 5, 0,
+ (long *)_vq_quantlist__44p0_p6_1,
+ 0
+};
+
+static const long _vq_quantlist__44p0_p6_2[] = {
+ 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 const char _vq_lengthlist__44p0_p6_2[] = {
+ 3, 4, 4, 5, 4, 5, 4, 5, 5, 5, 5, 5, 5, 5, 5, 5,
+ 5, 5, 5, 5, 5, 5, 5, 5, 5,
+};
+
+static const static_codebook _44p0_p6_2 = {
+ 1, 25,
+ (char *)_vq_lengthlist__44p0_p6_2,
+ 1, -529006592, 1611661312, 5, 0,
+ (long *)_vq_quantlist__44p0_p6_2,
+ 0
+};
+
+static const char _huff_lengthlist__44p0_short[] = {
+ 3, 3, 7, 8,10,13,16, 3, 2, 5, 7, 9,13,16, 6, 4,
+ 4, 6,10,14,15, 7, 5, 5, 7,10,13,14, 9, 8, 9, 9,
+ 9,11,13,12,11,12, 9, 7, 8,11,14,12,10, 6, 5, 7,
+ 10,
+};
+
+static const static_codebook _huff_book__44p0_short = {
+ 2, 49,
+ (char *)_huff_lengthlist__44p0_short,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
+static const long _vq_quantlist__44p1_l0_0[] = {
+ 6,
+ 5,
+ 7,
+ 4,
+ 8,
+ 3,
+ 9,
+ 2,
+ 10,
+ 1,
+ 11,
+ 0,
+ 12,
+};
+
+static const char _vq_lengthlist__44p1_l0_0[] = {
+ 1, 4, 4, 7, 7, 8, 8, 9, 9,10,10,11,11, 4, 6, 5,
+ 8, 6, 9, 8,10, 9,10,10,11,10, 5, 5, 6, 6, 8, 8,
+ 9, 9,10,10,10,10,11, 7, 8, 8, 9, 8,10, 9,10, 9,
+ 11,10,11,10, 7, 8, 8, 8,10, 9,10,10,10,10,11,10,
+ 11, 9,10,10,11,11,11,11,12,11,12,11,12,11, 9,10,
+ 10,11,11,11,11,11,11,11,12,11,12,11,11,11,12,12,
+ 12,12,12,12,12,12,12,11,11,12,11,12,12,12,12,12,
+ 12,12,12,11,12,12,12,12,12,13,12,13,12,12,12,12,
+ 12,12,12,12,12,13,13,13,13,12,13,12,12,12,12,12,
+ 13,13,12,13,12,13,12,13,12,12,12,12,13,13,13,13,
+ 13,13,12,12,12,12,12,11,12,
+};
+
+static const static_codebook _44p1_l0_0 = {
+ 2, 169,
+ (char *)_vq_lengthlist__44p1_l0_0,
+ 1, -526516224, 1616117760, 4, 0,
+ (long *)_vq_quantlist__44p1_l0_0,
+ 0
+};
+
+static const long _vq_quantlist__44p1_l0_1[] = {
+ 2,
+ 1,
+ 3,
+ 0,
+ 4,
+};
+
+static const char _vq_lengthlist__44p1_l0_1[] = {
+ 1, 4, 4, 6, 6, 5, 5, 5, 6, 6, 5, 6, 5, 6, 6, 6,
+ 6, 7, 7, 7, 6, 7, 6, 7, 7,
+};
+
+static const static_codebook _44p1_l0_1 = {
+ 2, 25,
+ (char *)_vq_lengthlist__44p1_l0_1,
+ 1, -533725184, 1611661312, 3, 0,
+ (long *)_vq_quantlist__44p1_l0_1,
+ 0
+};
+
+static const long _vq_quantlist__44p1_l1_0[] = {
+ 1,
+ 0,
+ 2,
+};
+
+static const char _vq_lengthlist__44p1_l1_0[] = {
+ 1, 4, 4, 4, 4, 4, 4, 4, 4,
+};
+
+static const static_codebook _44p1_l1_0 = {
+ 2, 9,
+ (char *)_vq_lengthlist__44p1_l1_0,
+ 1, -516716544, 1630767104, 2, 0,
+ (long *)_vq_quantlist__44p1_l1_0,
+ 0
+};
+
+static const char _huff_lengthlist__44p1_lfe[] = {
+ 1, 3, 2, 3,
+};
+
+static const static_codebook _huff_book__44p1_lfe = {
+ 2, 4,
+ (char *)_huff_lengthlist__44p1_lfe,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
+static const char _huff_lengthlist__44p1_long[] = {
+ 3, 3, 7, 7, 9,13,16, 3, 2, 4, 6,10,13,17, 7, 4,
+ 4, 6, 9,12,14, 7, 6, 6, 5, 7, 9,12,10,10, 9, 6,
+ 6, 9,12,14,14,13, 9, 8,10,11,18,18,15,13,11,10,
+ 11,
+};
+
+static const static_codebook _huff_book__44p1_long = {
+ 2, 49,
+ (char *)_huff_lengthlist__44p1_long,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
+static const long _vq_quantlist__44p1_p1_0[] = {
+ 1,
+ 0,
+ 2,
+};
+
+static const char _vq_lengthlist__44p1_p1_0[] = {
+ 1, 2, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0,
+};
+
+static const static_codebook _44p1_p1_0 = {
+ 5, 243,
+ (char *)_vq_lengthlist__44p1_p1_0,
+ 1, -535822336, 1611661312, 2, 0,
+ (long *)_vq_quantlist__44p1_p1_0,
+ 0
+};
+
+static const long _vq_quantlist__44p1_p2_0[] = {
+ 1,
+ 0,
+ 2,
+};
+
+static const char _vq_lengthlist__44p1_p2_0[] = {
+ 1, 4, 4, 0, 7, 7, 0, 8, 8, 0, 9, 9, 0,12,12, 0,
+ 8, 8, 0, 9, 9, 0,12,12, 0, 8, 8, 0, 6, 6, 0,11,
+ 11, 0,11,11, 0,12,12, 0,14,14, 0,11,11, 0,12,12,
+ 0,14,14, 0,11,11, 0, 6, 6, 0, 6, 5, 0, 7, 6, 0,
+ 7, 7, 0,10,10, 0, 6, 6, 0, 7, 7, 0,10,10, 0, 7,
+ 7, 0, 7, 7, 0,10,10, 0,11,11, 0,11,11, 0,14,14,
+ 0,10,10, 0,12,12, 0,14,14, 0,12,12, 0, 6, 6, 0,
+ 11,11, 0,11,11, 0,12,12, 0,14,14, 0,11,11, 0,12,
+ 12, 0,15,15, 0,11,11, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 8, 8, 0,11,11, 0,11,11, 0,12,12, 0,15,
+ 15, 0,12,12, 0,11,11, 0,15,15, 0,11,11, 0, 6, 6,
+ 0,11,11, 0,12,12, 0,12,12, 0,15,15, 0,11,11, 0,
+ 12,12, 0,14,14, 0,12,12, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0,
+};
+
+static const static_codebook _44p1_p2_0 = {
+ 5, 243,
+ (char *)_vq_lengthlist__44p1_p2_0,
+ 1, -533200896, 1614282752, 2, 0,
+ (long *)_vq_quantlist__44p1_p2_0,
+ 0
+};
+
+static const long _vq_quantlist__44p1_p2_1[] = {
+ 1,
+ 0,
+ 2,
+};
+
+static const char _vq_lengthlist__44p1_p2_1[] = {
+ 1, 3, 3, 0, 8, 8, 0, 8, 8, 0,10,10, 0, 9, 9, 0,
+ 10,10, 0,10,10, 0, 9, 9, 0,10,10, 0, 7, 7, 0, 7,
+ 7, 0, 7, 7, 0, 8, 8, 0, 8, 8, 0, 8, 8, 0, 9, 9,
+ 0, 8, 8, 0, 8, 8, 0, 7, 7, 0, 8, 8, 0, 8, 8, 0,
+ 10,10, 0, 9, 9, 0, 9, 9, 0,10,10, 0, 9, 9, 0,10,
+ 10, 0, 8, 8, 0,11,11, 0,11,11, 0,12,12, 0,11,11,
+ 0,12,12, 0,12,12, 0,12,12, 0,12,12, 0, 8, 8, 0,
+ 11,11, 0,11,11, 0,13,12, 0,12,12, 0,13,12, 0,13,
+ 13, 0,12,12, 0,13,13, 0, 7, 7, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 8, 8, 0,11,11, 0,11,11, 0,13,12, 0,12,
+ 12, 0,12,12, 0,12,12, 0,11,11, 0,12,12, 0, 8, 8,
+ 0,12,12, 0,12,12, 0,13,13, 0,12,12, 0,13,13, 0,
+ 13,13, 0,12,13, 0,13,13, 0, 7, 7, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0,
+};
+
+static const static_codebook _44p1_p2_1 = {
+ 5, 243,
+ (char *)_vq_lengthlist__44p1_p2_1,
+ 1, -535822336, 1611661312, 2, 0,
+ (long *)_vq_quantlist__44p1_p2_1,
+ 0
+};
+
+static const long _vq_quantlist__44p1_p3_0[] = {
+ 1,
+ 0,
+ 2,
+};
+
+static const char _vq_lengthlist__44p1_p3_0[] = {
+ 1, 6, 6, 6, 7, 7, 7, 8, 8, 7, 8, 8,10,11,11, 9,
+ 8, 8, 7, 9, 9,11,12,12, 9, 8, 8, 6, 7, 7, 9,11,
+ 11,10,11,11,10,11,11,13,13,13,11,12,12,10,11,11,
+ 13,14,14,12,12,12, 6, 6, 6, 8, 6, 6, 8, 6, 6, 9,
+ 7, 7,12,10,10,10, 6, 6, 9, 7, 7,12,10,10,11, 7,
+ 6, 7, 8, 8,12,10,10,12,10,10,11,10,10,15,13,13,
+ 13,10,10,12,11,11,15,13,13,14,11,11, 8, 7, 7,12,
+ 11,11,12,11,11,11,11,11,14,14,14,13,12,12,12,11,
+ 11,16,15,15,14,12,12, 0,10,10, 0,11,11, 0,12,12,
+ 0,11,11, 0,14,14, 0,11,11, 0,11,11, 0,15,15, 0,
+ 11,11, 7, 8, 8,13,10,10,12,10,10,12,11,11,15,13,
+ 13,14,11,11,12,10,10,16,14,14,14,10,10, 8, 7, 7,
+ 12,11,11,13,11,11,12,11,11,15,14,14,14,12,12,13,
+ 12,12,15,14,14,15,12,12, 0,11,11, 0,12,12, 0,12,
+ 12, 0,12,12, 0,15,15, 0,12,12, 0,12,12, 0,15,14,
+ 0,12,12,
+};
+
+static const static_codebook _44p1_p3_0 = {
+ 5, 243,
+ (char *)_vq_lengthlist__44p1_p3_0,
+ 1, -531365888, 1616117760, 2, 0,
+ (long *)_vq_quantlist__44p1_p3_0,
+ 0
+};
+
+static const long _vq_quantlist__44p1_p3_1[] = {
+ 2,
+ 1,
+ 3,
+ 0,
+ 4,
+};
+
+static const char _vq_lengthlist__44p1_p3_1[] = {
+ 2, 3, 4, 7, 7,10,12,12,12,12,10,11,11,13,13,11,
+ 12,12,11,11,12,12,12,12,12,11,13,13,13,13,12,12,
+ 12,13,14,12,13,13,13,13,12,13,13,13,13,12,13,13,
+ 13,13,11,13,13,13,13,12,12,12,14,14,12,13,13,12,
+ 12,12,12,13,13,13,12,13,13,13,13,12,13,13,13,13,
+ 12,12,12,14,14,12,13,13,12,12,12,13,13,13,13,12,
+ 13,13,12,12,12,13,13,13,13,12,12,12,14,14,12,13,
+ 13,12,12,12,13,13,13,13,12,13,13,12,12,10,10,11,
+ 10,10,11,11,11,11,11,11, 9, 9,10,10,12,11,11,10,
+ 10,12,10,10,10,10,13,12,12,12,12,13,11,11,11,11,
+ 13,12,12,12,12,13,11,11,11,11,13,12,12,12,12,13,
+ 12,12,12,12,13,11,11,11,11,13,12,12,12,12,13,11,
+ 11,11,11,13,12,12,11,11,13,12,12,11,11,13,11,11,
+ 11,11,13,12,12,11,11,13,11,11,11,11,13,12,12,11,
+ 11,13,12,12,11,11,13,11,11,11,11,13,12,12,11,11,
+ 13,11,11,11,11,13,12,12,11,11,11,11,11,10,10,11,
+ 11,11, 9, 9,11,12,12,11,11,12,12,12, 9, 9,13,13,
+ 13,10,10,13,13,13,11,11,13,13,13,14,14,13,13,13,
+ 11,10,13,13,14,12,12,13,13,13,11,11,13,13,13,11,
+ 11,13,13,13,14,14,13,13,13,10,10,13,13,13,11,11,
+ 13,13,13,10,10,13,14,13,11,11,13,14,14,14,14,13,
+ 13,13,10,10,13,14,14,11,11,13,13,13,10,10,13,14,
+ 14,11,11,13,13,13,14,14,14,13,13,10,10,13,14,14,
+ 11,11,13,13,13,10,10,14,12,12, 9, 9,14,12,12, 9,
+ 9,14,11,11, 9, 9,14,12,12, 8, 8,14,11,11, 7, 7,
+ 15,13,13,10,10,15,12,12,10,10,15,13,13,10,10,15,
+ 12,12,10,10,15,13,13,10,10,15,13,13,10,10,15,12,
+ 12,10,10,15,13,13,10,10,15,12,12,10,10,15,13,13,
+ 10,10,15,13,13,10,10,15,12,12,10,10,15,13,13, 9,
+ 9,15,12,12, 9, 9,14,13,13, 9, 9,15,13,13,10,10,
+ 15,12,12,10,10,15,13,13, 9, 9,15,12,12, 9, 9,15,
+ 13,13, 9, 9,13,12,12, 9, 9,13,13,13, 8, 8,13,13,
+ 13, 9, 9,13,13,13, 7, 7,14,13,13, 8, 8,14,14,14,
+ 10,10,15,14,14,11,11,14,14,14, 9, 9,15,14,14,10,
+ 10,15,14,14, 9, 9,14,14,14,10,10,15,14,14,11,11,
+ 15,14,14, 9, 9,14,14,14,10,10,14,14,14, 9, 9,15,
+ 14,15,10,10,15,14,14,11,11,14,14,14, 9, 9,14,14,
+ 14, 9, 9,14,14,14, 8, 8,15,14,14,10,10,15,14,14,
+ 11,11,14,14,14, 9, 9,15,14,14, 9, 9,14,14,14, 8,
+ 8,12,12,12,13,13,16,16,16,11,11,17,16,16,12,12,
+ 17,16,16,11,11,17,16,16,11,11,17,17,16,13,13,17,
+ 16,16,13,13,18,17,16,12,12,17,16,16,13,13,17,16,
+ 17,12,12,18,17,17,13,13,17,16,16,14,14,18,17,17,
+ 12,12,18,16,16,13,13,17,17,17,13,12,17,17,17,13,
+ 13,17,16,16,13,13,18,17,17,12,12,17,16,16,13,12,
+ 17,17,17,12,12,18,17,17,13,13,18,16,16,14,14,18,
+ 17,17,12,12,17,17,17,13,13,18,17,18,12,12,13,14,
+ 14,10,10,16,14,14,13,13,17,15,15,14,14,17,14,14,
+ 12,13,16,14,14,13,13,17,15,15,14,14,16,16,16,15,
+ 15,17,15,15,14,14,17,16,16,14,15,17,15,15,14,14,
+ 17,15,16,14,14,17,16,16,15,15,17,15,15,13,13,17,
+ 15,15,14,14,18,15,15,13,14,17,15,15,14,14,16,16,
+ 16,15,15,17,15,15,13,13,17,15,15,14,14,17,15,15,
+ 13,13,17,15,15,14,14,16,16,16,15,15,17,15,15,13,
+ 13,17,15,15,14,14,18,15,15,13,13,13,11,11,10,10,
+ 16,14,14,13,12,16,14,14,13,13,16,15,14,12,12,16,
+ 14,14,12,12,16,15,15,14,14,16,14,14,14,14,17,15,
+ 15,13,13,16,15,15,14,14,17,15,15,13,14,17,15,15,
+ 14,14,17,15,14,14,14,17,15,15,13,13,17,15,15,14,
+ 14,17,15,15,13,13,17,15,15,14,14,17,14,14,14,14,
+ 17,15,15,13,13,17,15,15,13,13,17,15,15,13,13,17,
+ 15,15,14,14,17,15,15,14,14,17,15,15,13,13,17,15,
+ 15,13,13,17,15,15,13,13,14,14,15, 8, 8,14,14,14,
+ 19,19,14,15,15,18,19,14,14,14,19,18,14,14,14,19,
+ 19,15,15,15,19,18,15,16,16,19,19,15,15,15,19,19,
+ 15,16,16,20,19,15,15,15,19,19,15,15,15,19,19,16,
+ 16,16,20,19,15,15,15,19,18,15,16,16,20,19,15,15,
+ 15,18,18,15,15,15,19,20,15,16,16,19,19,15,15,15,
+ 20,19,15,15,15,20,19,15,15,15,19,18,15,15,15,19,
+ 19,15,16,16,19,20,15,15,15,19,19,15,15,15,19,20,
+ 15,15,15,19,19,14,12,12, 9, 9,14,14,14,19,19,14,
+ 14,14,19,19,14,14,15,20,19,15,14,14,18,19,15,15,
+ 15,19,19,15,15,14,20,19,15,15,15,20,19,15,15,14,
+ 20,19,15,15,15,20,19,15,15,15,19,20,15,14,14,19,
+ 20,15,15,15,20,20,15,14,14,20,19,15,15,15,19,19,
+ 15,15,15,19,19,15,14,14,19,19,15,15,15,19,20,15,
+ 15,15,20,20,15,15,15,19,19,15,15,15,20,19,16,14,
+ 14,19,19,15,15,15,20,19,15,14,15,20,19,14,15,15,
+ 20,19,12,12,12,13,13,16,16,16,11,11,16,16,16,12,
+ 12,17,16,16,11,11,17,15,16,11,11,17,17,17,13,13,
+ 18,16,17,13,13,18,17,17,13,12,17,16,17,13,13,17,
+ 17,17,13,13,16,16,16,12,12,17,16,16,13,13,17,16,
+ 16,12,12,17,16,16,12,13,17,17,17,12,12,17,17,17,
+ 13,13,18,16,16,13,13,18,17,17,12,12,18,17,17,12,
+ 12,17,17,17,12,12,17,17,17,12,12,17,16,16,13,13,
+ 17,17,17,12,12,17,16,16,12,12,17,17,17,12,12,13,
+ 14,14, 9, 9,16,14,14,13,13,16,15,15,14,14,17,14,
+ 14,13,13,16,14,14,13,13,17,15,15,15,15,16,16,16,
+ 15,15,17,15,15,14,14,17,15,15,15,15,17,15,15,14,
+ 14,17,15,15,14,14,16,16,16,15,15,17,15,15,14,14,
+ 17,15,15,14,14,17,15,15,14,14,17,15,15,14,14,16,
+ 16,16,15,15,18,15,15,14,13,17,15,15,14,14,17,15,
+ 15,13,13,17,15,15,14,14,16,16,16,15,15,17,15,15,
+ 14,13,17,15,15,14,14,17,15,15,13,13,13,11,11,11,
+ 11,16,14,14,12,12,16,14,14,13,13,16,15,14,12,12,
+ 17,14,14,12,12,17,15,15,13,13,17,14,14,14,14,17,
+ 15,15,13,13,17,14,15,14,13,17,15,15,13,13,16,15,
+ 15,13,13,16,14,14,14,14,17,15,15,13,13,16,14,14,
+ 13,13,16,15,15,13,13,17,15,15,13,13,17,14,14,14,
+ 14,17,15,15,12,12,17,15,15,13,13,17,15,15,12,12,
+ 16,15,15,13,13,17,14,14,13,14,17,15,15,12,12,17,
+ 14,14,13,13,17,15,15,12,12,14,14,14, 8, 8,14,14,
+ 14,18,18,14,15,15,19,19,14,14,14,19,19,14,15,14,
+ 18,19,15,15,15,18,19,15,16,16,20,20,15,15,15,19,
+ 20,15,16,16,19,20,15,15,15,19,20,15,15,16,19,19,
+ 15,16,16,20,20,15,15,15,20,19,15,16,16,20,19,15,
+ 15,15,19,20,15,15,15,19,19,15,16,16,20,19,15,15,
+ 15,19,19,15,16,15,20,19,15,15,15,19,19,15,15,15,
+ 19,20,15,16,16,20,20,15,15,15,19,19,15,15,15,20,
+ 20,15,15,15,19,19,14,12,12, 9, 9,14,14,14,18,18,
+ 14,14,14,19,20,14,14,14,18,18,14,14,14,18,19,15,
+ 15,15,19,20,15,14,14,19,19,15,15,15,19,19,15,14,
+ 15,19,19,15,15,15,18,20,15,15,15,19,19,15,14,14,
+ 19,19,15,15,15,20,19,15,15,14,20,20,15,15,15,19,
+ 19,15,15,15,19,19,15,14,14,19,19,15,15,15,19,19,
+ 15,14,14,19,20,14,15,15,19,19,15,15,15,19,19,15,
+ 14,14,20,19,15,15,15,19,19,15,14,14,20,19,15,15,
+ 15,19,19,13,12,12,13,13,17,17,16,11,11,16,16,16,
+ 12,12,17,17,16,11,11,17,16,16,11,11,17,17,17,13,
+ 13,17,16,16,13,13,18,17,17,12,12,17,16,16,13,13,
+ 18,17,17,12,12,18,17,17,13,13,18,16,17,13,13,17,
+ 17,17,12,12,18,17,17,13,13,18,17,17,12,12,17,16,
+ 17,12,12,17,16,16,13,13,17,16,16,11,11,17,16,16,
+ 12,12,17,17,17,11,11,17,17,17,12,12,18,16,16,13,
+ 13,18,17,17,12,11,17,16,16,12,12,18,17,17,11,11,
+ 13,14,14, 9, 9,16,14,14,13,13,16,15,15,14,14,17,
+ 14,14,12,12,16,14,14,13,13,17,15,15,14,14,17,16,
+ 16,15,16,18,15,15,14,14,17,15,15,14,14,17,15,15,
+ 14,14,18,15,15,14,14,16,16,16,15,16,18,15,15,14,
+ 14,17,16,15,14,14,18,15,15,14,14,17,15,15,14,14,
+ 17,16,16,15,15,18,14,15,13,13,17,15,15,14,14,18,
+ 15,15,13,13,17,15,15,14,14,17,16,15,15,15,17,15,
+ 15,13,13,17,15,15,14,14,18,15,15,13,13,13,11,11,
+ 10,10,16,14,14,12,12,16,14,14,12,12,17,14,15,11,
+ 11,17,14,14,11,11,17,15,15,13,13,17,14,14,14,13,
+ 17,15,15,13,13,16,15,15,13,13,17,15,15,13,13,17,
+ 15,15,13,13,17,14,14,14,14,17,15,15,13,13,17,14,
+ 15,13,13,16,15,15,13,13,17,15,15,13,13,17,14,14,
+ 13,13,17,15,15,12,12,16,14,14,12,12,17,15,15,12,
+ 12,17,15,15,13,13,17,14,14,13,13,17,15,15,12,12,
+ 17,14,14,12,12,17,15,15,12,12,13,15,14, 8, 8,14,
+ 14,14,19,19,14,15,15,18,19,14,14,14,18,19,14,15,
+ 14,19,19,15,16,15,19,19,15,16,16,19,20,15,15,15,
+ 19,19,15,16,16,19,19,15,16,16,19,19,15,15,15,19,
+ 19,15,16,16,20,20,15,15,15,19,19,15,15,15,19,19,
+ 15,15,15,19,19,15,15,15,19,19,15,16,16,20,19,15,
+ 15,15,19,19,15,15,15,19,19,15,15,15,19,19,15,16,
+ 15,19,19,15,16,16,21,19,15,15,15,20,20,15,15,15,
+ 20,21,15,15,15,19,20,14,12,12, 8, 8,14,14,14,19,
+ 19,14,13,13,19,19,14,14,14,19,19,14,13,14,19,19,
+ 15,15,15,20,20,15,14,14,20,19,15,15,15,19,20,15,
+ 14,14,19,20,15,15,15,20,19,15,15,15,19,20,15,14,
+ 14,20,20,15,15,15,20,19,15,14,14,19,19,15,15,15,
+ 19,19,15,15,15,20,19,15,14,14,21,19,15,15,15,20,
+ 21,15,14,14,21,19,15,15,15,19,19,15,15,15,20,20,
+ 15,14,14,19,21,15,15,15,19,19,15,14,14,19,20,15,
+ 15,15,19,19,13,12,12,13,13,17,16,16,11,11,17,16,
+ 15,12,12,18,16,16,11,11,17,16,16,11,11,18,17,17,
+ 13,13,18,16,16,13,13,17,17,17,12,13,18,17,16,13,
+ 13,18,17,17,13,13,17,17,17,13,13,17,16,16,13,13,
+ 18,16,17,12,12,17,16,16,13,12,17,17,17,12,12,18,
+ 17,17,13,12,18,16,16,13,13,18,17,17,12,12,17,16,
+ 16,12,12,17,17,17,11,11,17,16,16,12,12,17,16,16,
+ 13,13,17,16,16,11,11,17,16,16,12,12,17,17,17,11,
+ 11,13,14,14, 9, 9,16,14,14,13,13,16,15,15,14,14,
+ 17,14,14,12,12,16,14,14,13,13,17,15,15,14,14,17,
+ 15,16,15,15,17,15,15,14,14,17,15,16,14,15,18,15,
+ 15,14,14,17,15,15,14,14,16,16,16,15,15,18,15,15,
+ 13,14,17,15,15,14,14,18,15,15,14,14,17,15,15,14,
+ 14,17,16,16,15,15,17,15,15,13,13,17,15,15,14,14,
+ 18,15,15,13,13,17,15,15,14,14,17,16,16,15,15,17,
+ 15,15,13,13,17,15,15,14,14,18,15,15,13,13,13,11,
+ 11,10,10,16,14,14,12,12,16,14,14,13,13,17,14,14,
+ 11,11,17,14,14,12,12,17,15,15,14,14,17,14,14,14,
+ 14,17,15,15,13,13,17,15,14,13,13,16,15,15,13,13,
+ 16,15,15,13,13,17,14,14,14,14,17,15,15,13,13,17,
+ 14,14,13,13,16,15,15,13,13,16,15,15,13,13,17,14,
+ 14,13,13,17,15,15,12,12,17,14,14,12,12,16,15,15,
+ 12,12,17,15,15,13,13,17,14,14,13,13,17,15,15,12,
+ 12,17,14,14,12,12,16,15,15,12,12,14,14,14, 8, 8,
+ 14,14,14,18,18,14,15,15,19,18,14,14,14,18,18,14,
+ 14,14,18,19,15,16,15,19,19,15,17,16,20,20,15,15,
+ 15,19,19,15,16,16,19,19,15,15,15,19,19,15,16,15,
+ 18,19,15,16,16,20,20,15,15,15,19,19,15,16,16,19,
+ 20,15,15,15,19,19,15,15,16,19,19,15,16,16,20,20,
+ 15,15,15,19,19,15,15,15,19,20,15,15,15,19,19,15,
+ 15,15,19,19,15,16,16,20,20,15,15,15,19,20,15,16,
+ 16,20,20,15,15,15,19,19,13,12,12, 8, 8,14,14,14,
+ 19,20,14,14,14,19,19,14,14,14,18,19,14,14,14,19,
+ 20,15,15,15,19,20,15,14,14,21,20,15,15,15,20,20,
+ 15,15,14,19,19,15,15,15,19,19,15,15,15,19,19,15,
+ 14,14,19,20,15,15,15,19,20,15,14,14,19,19,15,15,
+ 15,19,19,15,15,15,19,19,16,14,14,19,19,15,15,15,
+ 20,20,15,14,14,21,19,15,15,15,19,19,15,15,15,19,
+ 20,16,14,14,19,20,15,15,15,19,19,15,14,14,19,19,
+ 15,15,15,20,19,
+};
+
+static const static_codebook _44p1_p3_1 = {
+ 5, 3125,
+ (char *)_vq_lengthlist__44p1_p3_1,
+ 1, -533725184, 1611661312, 3, 0,
+ (long *)_vq_quantlist__44p1_p3_1,
+ 0
+};
+
+static const long _vq_quantlist__44p1_p4_0[] = {
+ 2,
+ 1,
+ 3,
+ 0,
+ 4,
+};
+
+static const char _vq_lengthlist__44p1_p4_0[] = {
+ 2, 6, 6,14,14, 6, 7, 7,14,14, 7, 7, 7,14,14, 0,
+ 13,13,16,16, 0,13,13,15,14, 7, 8, 8,15,15, 9,10,
+ 10,16,16, 9, 8, 8,15,15, 0,13,13,17,16, 0,13,13,
+ 15,16, 8, 8, 8,15,15,12,11,11,16,16, 9, 8, 8,14,
+ 14, 0,13,13,17,18, 0,13,13,15,15, 0,14,14,16,16,
+ 0, 0, 0,19,18, 0,12,12,16,15, 0,15,16, 0,20, 0,
+ 14,14,16,16, 0,14,14,17,17, 0, 0, 0,19,18, 0,12,
+ 12,15,15, 0,17,17, 0,20, 0,14,14,16,16, 5, 6, 7,
+ 12,12, 9, 9, 9,14,14,10,10,10,14,14, 0,21,21,18,
+ 17, 0,20,20,18,17, 9,10,10,14,14,12,12,12,16,16,
+ 12,10,10,14,14, 0,20,19,18,17, 0, 0,20,17,18,11,
+ 10,10,14,14,14,13,13,18,18,13,11,11,14,14, 0,20,
+ 20,17,18, 0,21,21,17,17, 0,21, 0,18,18, 0, 0, 0,
+ 0, 0, 0,20,19,16,17, 0, 0, 0,19,19, 0, 0, 0,18,
+ 18, 0,21,21,18,18, 0, 0, 0, 0, 0, 0,20,20,16,17,
+ 0, 0, 0,21,21, 0, 0, 0,18,19, 6, 6, 6,13,12, 8,
+ 6, 6,11,11, 8, 6, 6,13,13, 0, 9, 9,11,11, 0,11,
+ 10,14,14, 9, 7, 7,13,13,11, 9, 9,13,13,10, 6, 6,
+ 13,13, 0,10,10,14,15, 0,10,10,13,13, 9, 7, 7,13,
+ 13,13,10, 9,13,13,10, 6, 6,13,13, 0,10,10,15,14,
+ 0,10,10,13,13, 0,11,11,15,15, 0,19,20,17,17, 0,
+ 9, 9,13,13, 0,13,13,20,20, 0,11,11,13,13, 0,11,
+ 11,15,15, 0,19,19,17,17, 0,10,10,13,13, 0,15,15,
+ 20,20, 0,12,12,13,13, 0,10,10,12,12, 0,11,11,15,
+ 15, 0,11,11,15,15, 0,15,15,20, 0, 0,16,16, 0,21,
+ 0,11,11,15,15, 0,14,14,18,17, 0,11,11,15,15, 0,
+ 15,16,19,20, 0,16,16,21,21, 0,12,12,15,15, 0,15,
+ 14,18,18, 0,11,11,16,16, 0,15,15,21,21, 0,16,15,
+ 0, 0, 0,16,16,21, 0, 0, 0, 0, 0, 0, 0,14,14,20,
+ 20, 0,18,18, 0, 0, 0,16,17,21, 0, 0,16,16,21,21,
+ 0, 0, 0, 0, 0, 0,15,15,21,21, 0,20,19, 0,21, 0,
+ 17,17, 0, 0, 0,10,10,12,11, 0,10,10,10,11, 0,11,
+ 11,12,12, 0,11,11, 9, 9, 0,13,13,11,12, 0,11,11,
+ 12,12, 0,13,13,12,12, 0,10,10,12,12, 0,12,12,13,
+ 13, 0,12,12,12,12, 0,11,11,12,12, 0,13,13,12,12,
+ 0,10,10,12,12, 0,13,13,14,14, 0,12,12,12,12, 0,
+ 14,14,14,13, 0,19,20,15,15, 0,12,11,12,12, 0,15,
+ 15,21,20, 0,13,13,11,11, 0,13,13,13,13, 0,19, 0,
+ 15,15, 0,12,12,12,12, 0,17,16,19, 0, 0,13,13,12,
+ 12, 7, 7, 7,16,16,11, 9, 9,15,15,12, 9, 9,16,16,
+ 0,13,13,15,14, 0,14,14,17,16,10, 9, 9,16,16,14,
+ 11,11,17,16,12, 9, 8,15,15, 0,13,13,18,18, 0,13,
+ 13,15,15,12,10,10,18,17,15,12,12,17,17,14, 9, 9,
+ 16,16, 0,13,13,18,19, 0,14,13,17,16, 0,14,14,18,
+ 18, 0, 0, 0,20,21, 0,12,12,16,16, 0,16,16,20,21,
+ 0,14,14,17,16, 0,14,14,18,19, 0, 0, 0,19,21, 0,
+ 13,13,17,17, 0,17,17, 0,21, 0,15,15,16,16, 8, 7,
+ 7,14,14,11,10,10,15,15,12,10,10,15,15, 0,20,20,
+ 18,18, 0, 0, 0,17,17,11,10,10,16,16,14,12,12,18,
+ 17,14,11,11,15,15, 0,20,21,18,18, 0, 0,19,18,17,
+ 12,10,10,16,16,17,14,14,19,19,14,11,11,15,15, 0,
+ 21,21,19,19, 0,21,20,19,18, 0,21, 0,18,19, 0, 0,
+ 0, 0, 0, 0,20,20,18,17, 0,21, 0, 0, 0, 0, 0, 0,
+ 19,18, 0, 0, 0,18,19, 0, 0, 0, 0, 0, 0, 0,21,17,
+ 18, 0, 0, 0, 0,21, 0, 0,21,18,19,11, 9, 9,14,14,
+ 13,10,10,13,13,13,11,11,15,15, 0,13,13,12,12, 0,
+ 15,15,16,16,13,10,10,15,15,16,12,12,15,15,15,10,
+ 10,15,15, 0,14,13,16,15, 0,14,13,15,15,13,10,10,
+ 15,15,18,14,14,15,15,15,10,10,14,15, 0,14,14,16,
+ 16, 0,14,14,16,15, 0,15,15,17,16, 0,21, 0,18,18,
+ 0,12,13,15,15, 0,16,16, 0, 0, 0,14,14,15,15, 0,
+ 15,15,16,16, 0,21,20,18,18, 0,13,13,15,15, 0,19,
+ 18, 0, 0, 0,15,15,15,15, 0,11,11,13,13, 0,12,12,
+ 16,16, 0,12,12,16,16, 0,15,16,20, 0, 0,16,17, 0,
+ 0, 0,12,12,16,16, 0,14,14,18,18, 0,11,11,16,17,
+ 0,15,15,20, 0, 0,16,16, 0, 0, 0,12,12,16,16, 0,
+ 15,15,19,19, 0,11,11,17,17, 0,16,16,21, 0, 0,16,
+ 16, 0, 0, 0,17,17,20,20, 0, 0, 0, 0, 0, 0,15,15,
+ 20, 0, 0,17,18, 0, 0, 0,17,17, 0, 0, 0,16,16, 0,
+ 21, 0, 0, 0, 0, 0, 0,15,15,21, 0, 0,19,18, 0, 0,
+ 0,18,17, 0, 0, 0,11,11,14,14, 0,11,11,15,15, 0,
+ 12,12,16,16, 0,13,13,14,14, 0,14,14,17,17, 0,12,
+ 12,16,16, 0,14,14,16,16, 0,11,11,16,15, 0,13,13,
+ 16,17, 0,13,13,16,16, 0,12,12,15,16, 0,15,14,16,
+ 16, 0,11,11,15,15, 0,14,14,17,17, 0,13,13,16,16,
+ 0,15,14,18,18, 0,21, 0,19,19, 0,13,13,15,15, 0,
+ 16,16,20,20, 0,14,14,16,15, 0,14,14,17,17, 0,21,
+ 0,20,18, 0,13,13,15,15, 0,17,17, 0, 0, 0,14,14,
+ 16,15, 8, 8, 8,16,16,12, 9, 9,16,16,13, 9, 9,16,
+ 16, 0,14,14,18,17, 0,14,14,16,17,12,10,10,18,17,
+ 14,11,11,18,18,14, 9, 9,16,16, 0,13,13,18,18, 0,
+ 13,13,17,16,12, 9, 9,16,17,17,13,13,16,16,14, 9,
+ 9,15,15, 0,14,14,20,20, 0,13,13,15,15, 0,15,14,
+ 18,18, 0, 0, 0,20,21, 0,12,13,16,17, 0,16,16,20,
+ 21, 0,14,14,16,17, 0,14,14,18,17, 0, 0, 0,20,21,
+ 0,13,13,16,16, 0,19,17, 0,21, 0,14,15,16,16, 8,
+ 7, 7,14,13,12,10,10,15,15,13,10,10,15,15, 0,21,
+ 21,18,19, 0,20,21,18,18,12,10,10,16,15,15,12,12,
+ 17,17,14,11,11,15,15, 0,21,21,19,18, 0, 0,21,17,
+ 18,13,11,11,15,15,16,13,13,18,19,15,11,11,15,14,
+ 0,21, 0,19,19, 0, 0,21,18,18, 0, 0,21,19,19, 0,
+ 0, 0, 0, 0, 0,20,19,17,17, 0, 0, 0,21, 0, 0,21,
+ 0,18,19, 0, 0,20,20,19, 0, 0, 0, 0, 0, 0,21,20,
+ 18,17, 0, 0, 0, 0,20, 0, 0, 0,18,19, 0,10,10,15,
+ 14, 0,11,11,14,14, 0,11,11,15,16, 0,14,14,15,15,
+ 0,15,15,16,16, 0,11,11,16,16, 0,14,13,16,16, 0,
+ 11,11,15,15, 0,14,14,16,16, 0,14,14,15,15, 0,11,
+ 11,15,15, 0,13,13,15,15, 0,11,11,15,15, 0,15,15,
+ 18,17, 0,14,14,15,15, 0,15,16,18,18, 0, 0, 0,20,
+ 20, 0,14,13,16,15, 0,17,17,21, 0, 0,15,15,15,15,
+ 0,16,15,17,17, 0, 0, 0,19,19, 0,13,13,15,15, 0,
+ 20,19, 0, 0, 0,15,15,15,15, 0,11,11,13,13, 0,12,
+ 12,16,16, 0,12,12,16,16, 0,15,15,21,21, 0,17,16,
+ 0, 0, 0,12,12,16,16, 0,14,14,17,17, 0,11,11,16,
+ 16, 0,15,15, 0, 0, 0,16,16,21, 0, 0,12,12,17,16,
+ 0,14,15,20,20, 0,11,11,16,16, 0,15,15, 0,20, 0,
+ 16,16, 0,21, 0,16,17,21, 0, 0, 0, 0, 0, 0, 0,15,
+ 15, 0,21, 0,18,18, 0, 0, 0,17,16, 0, 0, 0,17,17,
+ 21, 0, 0, 0, 0, 0, 0, 0,15,15, 0,20, 0,19,20,21,
+ 0, 0,17,18, 0, 0, 0,12,12,15,15, 0,12,12,15,15,
+ 0,12,12,16,16, 0,13,13,15,15, 0,15,15,17,17, 0,
+ 13,12,17,16, 0,14,14,17,16, 0,11,11,16,16, 0,14,
+ 14,17,17, 0,14,14,17,17, 0,12,12,16,16, 0,15,15,
+ 17,17, 0,11,11,16,16, 0,14,14,17,17, 0,14,14,16,
+ 16, 0,15,15,18,17, 0, 0, 0,19, 0, 0,13,13,16,16,
+ 0,16,16, 0,21, 0,14,14,16,16, 0,15,15,18,17, 0,
+ 0, 0,19,19, 0,13,13,16,16, 0,18,17, 0,21, 0,14,
+ 15,16,16, 0,11,11,16,16, 0,13,13,17,17, 0,13,13,
+ 17,17, 0,16,16,16,17, 0,16,16,18,18, 0,12,12,17,
+ 17, 0,16,15,18,17, 0,12,12,16,16, 0,16,15,19,19,
+ 0,16,15,17,17, 0,12,12,17,18, 0,16,16,18,18, 0,
+ 12,12,16,16, 0,16,16,19,19, 0,15,16,17,17, 0,15,
+ 16,18,18, 0, 0, 0,20,20, 0,13,13,16,16, 0,18,18,
+ 21,20, 0,15,15,16,16, 0,16,16,19,18, 0, 0, 0,19,
+ 20, 0,14,14,17,17, 0,19,19, 0,21, 0,15,16,16,16,
+ 0, 9, 9,14,14, 0,13,13,15,15, 0,14,14,15,15, 0,
+ 0,21,19,19, 0, 0,21,18,18, 0,12,12,15,15, 0,15,
+ 15,18,18, 0,14,13,15,15, 0,21,21,18,19, 0,21,20,
+ 18,18, 0,13,13,16,16, 0,17,17,18,19, 0,14,14,15,
+ 15, 0, 0,21,19,19, 0,21,20,18,19, 0,20,20,19,19,
+ 0, 0, 0, 0, 0, 0,19,20,17,17, 0, 0, 0,21,21, 0,
+ 21, 0,18,20, 0,21, 0,18,21, 0, 0, 0, 0, 0, 0,21,
+ 21,19,18, 0, 0, 0, 0, 0, 0, 0, 0,19,19, 0,18,18,
+ 15,15, 0,18,20,17,16, 0,20, 0,17,17, 0,21, 0,17,
+ 17, 0,21,20,19,20, 0,19,19,16,16, 0,21,21,17,18,
+ 0,19,19,17,17, 0,20,21,21,21, 0,20,20,18,18, 0,
+ 19,19,16,16, 0, 0,21,18,19, 0,18,19,16,17, 0,21,
+ 21,19,20, 0,21,19,18,18, 0,21,20,19,21, 0, 0, 0,
+ 20,21, 0,19,19,17,16, 0, 0, 0, 0, 0, 0,21,20,17,
+ 17, 0,20,21,19,18, 0, 0, 0, 0,21, 0,19,18,16,17,
+ 0, 0, 0, 0, 0, 0,20,20,17,17, 0,11,11,14,14, 0,
+ 13,13,16,16, 0,13,13,16,16, 0,17,17,21, 0, 0,17,
+ 18, 0, 0, 0,12,12,16,16, 0,15,15,17,18, 0,12,12,
+ 16,16, 0,16,16, 0,20, 0,17,17, 0,21, 0,12,12,17,
+ 17, 0,16,16,19,20, 0,12,12,17,17, 0,17,17, 0,20,
+ 0,17,17, 0, 0, 0,17,17,21, 0, 0, 0, 0, 0, 0, 0,
+ 15,15, 0,20, 0,19,19, 0, 0, 0,18,18, 0, 0, 0,17,
+ 17, 0, 0, 0, 0, 0, 0, 0, 0,15,15, 0, 0, 0,20,19,
+ 0, 0, 0,19,18, 0, 0, 0,14,14,21,19, 0,16,16,20,
+ 21, 0,16,16,20,20, 0,17,17,20, 0, 0,17,17,20,20,
+ 0,15,15,20,20, 0,19,18,20, 0, 0,15,15,20,20, 0,
+ 17,18,21,20, 0,17,17,20,21, 0,15,15,19,19, 0,19,
+ 18,21,21, 0,15,15,19,20, 0,17,18, 0, 0, 0,17,17,
+ 20,20, 0,17,18,20,21, 0, 0, 0, 0, 0, 0,15,15,20,
+ 20, 0,19,19, 0, 0, 0,17,17,19,21, 0,17,17, 0,21,
+ 0, 0, 0, 0,21, 0,15,15,20,19, 0, 0,20, 0, 0, 0,
+ 17,17,21,20, 0,12,12,16,16, 0,14,14,17,17, 0,13,
+ 13,17,17, 0,16,16,17,18, 0,17,16,18,18, 0,13,13,
+ 18,17, 0,15,16,19,18, 0,13,13,16,16, 0,16,16,19,
+ 19, 0,16,16,17,17, 0,13,12,17,17, 0,16,16,18,17,
+ 0,12,12,16,16, 0,17,17,19,18, 0,16,15,16,16, 0,
+ 16,17,18,19, 0, 0, 0,20,20, 0,14,14,17,16, 0,18,
+ 18,21, 0, 0,16,16,16,16, 0,16,16,18,17, 0, 0,21,
+ 21,21, 0,14,14,16,16, 0,21,20,21, 0, 0,16,16,16,
+ 16, 0,10,10,14,14, 0,14,14,15,16, 0,14,14,15,15,
+ 0, 0,21,18,18, 0, 0,21,18,19, 0,13,13,16,16, 0,
+ 16,16,18,17, 0,14,14,15,15, 0,20, 0,18,18, 0,21,
+ 0,18,17, 0,13,13,16,15, 0,17,17,19,19, 0,14,14,
+ 15,15, 0,20,20,18,19, 0, 0, 0,18,17, 0, 0,21,18,
+ 18, 0, 0, 0, 0, 0, 0,20,21,18,17, 0, 0, 0, 0, 0,
+ 0, 0, 0,19,19, 0, 0,21,18,18, 0, 0, 0, 0, 0, 0,
+ 21, 0,18,17, 0, 0, 0, 0,21, 0, 0, 0,19,20, 0,19,
+ 19,16,16, 0, 0,21,18,17, 0,21, 0,18,18, 0,20, 0,
+ 19,18, 0,21,20,19,19, 0,21,19,17,18, 0, 0,21,19,
+ 19, 0,21,19,18,18, 0,21, 0,20,18, 0, 0,21,18,18,
+ 0,20,21,17,17, 0,21, 0,18,18, 0,21,19,17,17, 0,
+ 21, 0, 0,20, 0, 0,20,17,18, 0, 0, 0,19,20, 0, 0,
+ 0,20,19, 0,19,21,17,18, 0,21, 0, 0, 0, 0,21,21,
+ 18,17, 0, 0,21,18,18, 0, 0, 0, 0,21, 0,20,19,16,
+ 17, 0, 0, 0, 0, 0, 0,21,20,17,17, 0,11,11,13,13,
+ 0,13,13,16,16, 0,13,13,16,16, 0,17,17, 0,21, 0,
+ 18,19,21, 0, 0,12,12,16,16, 0,15,15,19,18, 0,13,
+ 13,16,16, 0,16,17,21,19, 0,17,17,21,21, 0,13,13,
+ 16,16, 0,16,16,20,18, 0,13,13,16,16, 0,17,17, 0,
+ 0, 0,18,18, 0, 0, 0,18,17, 0,20, 0, 0, 0, 0, 0,
+ 0,15,15,21,21, 0,19,18, 0, 0, 0,17,17,21,21, 0,
+ 17,17, 0, 0, 0, 0, 0, 0, 0, 0,15,15,20,21, 0,20,
+ 20, 0, 0, 0,19,19, 0, 0, 0,14,15,21,19, 0,16,16,
+ 0,21, 0,17,16,21,21, 0,17,18,21,20, 0,18,18, 0,
+ 21, 0,16,16, 0,20, 0,19,19, 0, 0, 0,16,15, 0,20,
+ 0,18,18, 0, 0, 0,17,17, 0,21, 0,16,16,20,20, 0,
+ 20,19, 0, 0, 0,15,16,21,22, 0,18,18, 0, 0, 0,18,
+ 17, 0, 0, 0,18,18, 0, 0, 0, 0, 0, 0, 0, 0,16,16,
+ 21,20, 0,19,20, 0, 0, 0,18,17,21, 0, 0,17,18, 0,
+ 0, 0, 0, 0, 0, 0, 0,16,16, 0,20, 0, 0,20, 0, 0,
+ 0,18,18,22, 0,
+};
+
+static const static_codebook _44p1_p4_0 = {
+ 5, 3125,
+ (char *)_vq_lengthlist__44p1_p4_0,
+ 1, -528744448, 1616642048, 3, 0,
+ (long *)_vq_quantlist__44p1_p4_0,
+ 0
+};
+
+static const long _vq_quantlist__44p1_p4_1[] = {
+ 3,
+ 2,
+ 4,
+ 1,
+ 5,
+ 0,
+ 6,
+};
+
+static const char _vq_lengthlist__44p1_p4_1[] = {
+ 2, 3, 3, 3, 3, 3, 3,
+};
+
+static const static_codebook _44p1_p4_1 = {
+ 1, 7,
+ (char *)_vq_lengthlist__44p1_p4_1,
+ 1, -533200896, 1611661312, 3, 0,
+ (long *)_vq_quantlist__44p1_p4_1,
+ 0
+};
+
+static const long _vq_quantlist__44p1_p5_0[] = {
+ 1,
+ 0,
+ 2,
+};
+
+static const char _vq_lengthlist__44p1_p5_0[] = {
+ 1, 6, 6, 7, 8, 8, 7, 8, 8, 7, 9, 8,10,11,11, 9,
+ 8, 8, 7, 8, 8,11,11,11, 9, 8, 8, 6, 7, 7,10,10,
+ 10,10,10,10,10,10,10,14,13,13,12,11,11,10,10,10,
+ 14,14,13,12,11,11, 6, 6, 6, 8, 5, 5, 8, 7, 7, 9,
+ 7, 7,11,10,10, 9, 7, 7, 9, 7, 7,12,10,10,10, 7,
+ 7, 7, 8, 8,12,11,10,12,10,10,11,10,10,15,13,13,
+ 13,10,10,11,10,10,17,14,13,13,10,10, 7, 7, 7,12,
+ 11,12,12,11,11,12,11,11,16,14,14,13,12,12,12,11,
+ 11,17,15,14,14,12,12,10, 9, 9,13,11,11,13,11,11,
+ 13,11,11,17,14,13,14,11,11,12,11,11,16,15,14,14,
+ 11,11, 7, 8, 8,12,11,11,12,10,10,12,10,10,15,13,
+ 13,14,11,10,12,10,10,16,14,14,14,10,10, 8, 7, 7,
+ 12,11,11,12,11,11,12,11,11,17,14,14,14,12,12,12,
+ 11,11,16,15,15,14,12,12,10,10,10,13,11,11,13,11,
+ 11,13,11,12,16,14,14,14,11,11,13,12,11,16,15,15,
+ 14,11,11,
+};
+
+static const static_codebook _44p1_p5_0 = {
+ 5, 243,
+ (char *)_vq_lengthlist__44p1_p5_0,
+ 1, -527106048, 1620377600, 2, 0,
+ (long *)_vq_quantlist__44p1_p5_0,
+ 0
+};
+
+static const long _vq_quantlist__44p1_p5_1[] = {
+ 1,
+ 0,
+ 2,
+};
+
+static const char _vq_lengthlist__44p1_p5_1[] = {
+ 2, 7, 7, 7, 7, 7, 7, 7, 7, 7, 8, 8, 9, 8, 8, 8,
+ 7, 7, 8, 8, 8, 9, 8, 8, 9, 7, 7, 6, 6, 6, 9, 8,
+ 7, 9, 7, 7, 9, 8, 8,10, 8, 8,10, 8, 8,10, 8, 8,
+ 10, 8, 8,10, 8, 8, 7, 6, 6, 9, 6, 6, 9, 7, 7, 9,
+ 7, 7,10, 8, 8, 9, 6, 6, 9, 7, 7,10, 8, 8, 9, 7,
+ 7, 7, 8, 8,11, 9, 9,11, 9, 9,11, 8, 9,12, 9, 9,
+ 12, 8, 8,11, 9, 9,12, 9, 9,12, 8, 8, 8, 7, 7,10,
+ 9, 9,10,10, 9,10, 9, 9,11,10,10,11, 9, 9,11, 9,
+ 9,11,10,11,11, 9, 9,10, 8, 8,11, 9, 9,10, 9, 9,
+ 11, 9, 9,11,10,10,11, 9, 9,11, 9, 9,11,10,10,11,
+ 9, 9, 9, 8, 8,11, 9, 9,12, 9, 9,11, 9, 9,12, 9,
+ 9,12, 8, 8,12, 9, 9,12, 9, 9,12, 8, 8, 9, 7, 7,
+ 11, 9, 9,11,10,10,11, 9, 9,11,11,11,11, 9, 9,11,
+ 10,10,11,11,11,11, 9, 9,10, 9, 9,11, 9, 9,11,10,
+ 10,11, 9, 9,11,10,10,11, 9, 9,11, 9,10,11,10,10,
+ 11, 9, 9,
+};
+
+static const static_codebook _44p1_p5_1 = {
+ 5, 243,
+ (char *)_vq_lengthlist__44p1_p5_1,
+ 1, -530841600, 1616642048, 2, 0,
+ (long *)_vq_quantlist__44p1_p5_1,
+ 0
+};
+
+static const long _vq_quantlist__44p1_p6_0[] = {
+ 1,
+ 0,
+ 2,
+};
+
+static const char _vq_lengthlist__44p1_p6_0[] = {
+ 1, 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, 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, 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,
+ 9, 7, 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, 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, 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,
+ 9, 9, 7, 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, 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, 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, 9, 9,
+};
+
+static const static_codebook _44p1_p6_0 = {
+ 5, 243,
+ (char *)_vq_lengthlist__44p1_p6_0,
+ 1, -516716544, 1630767104, 2, 0,
+ (long *)_vq_quantlist__44p1_p6_0,
+ 0
+};
+
+static const long _vq_quantlist__44p1_p6_1[] = {
+ 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 const char _vq_lengthlist__44p1_p6_1[] = {
+ 1, 3, 2, 5, 4, 7, 7, 8, 8, 9, 9,10,10,11,11,12,
+ 12,13,13,13,14,16,16,16,16,
+};
+
+static const static_codebook _44p1_p6_1 = {
+ 1, 25,
+ (char *)_vq_lengthlist__44p1_p6_1,
+ 1, -518864896, 1620639744, 5, 0,
+ (long *)_vq_quantlist__44p1_p6_1,
+ 0
+};
+
+static const long _vq_quantlist__44p1_p6_2[] = {
+ 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 const char _vq_lengthlist__44p1_p6_2[] = {
+ 3, 4, 4, 5, 4, 5, 4, 5, 5, 5, 5, 5, 5, 5, 5, 5,
+ 5, 5, 5, 5, 5, 5, 5, 5, 5,
+};
+
+static const static_codebook _44p1_p6_2 = {
+ 1, 25,
+ (char *)_vq_lengthlist__44p1_p6_2,
+ 1, -529006592, 1611661312, 5, 0,
+ (long *)_vq_quantlist__44p1_p6_2,
+ 0
+};
+
+static const char _huff_lengthlist__44p1_short[] = {
+ 4, 5, 7, 8,10,13,14, 4, 2, 4, 6, 8,11,12, 7, 4,
+ 3, 5, 8,12,14, 8, 5, 4, 4, 8,12,12, 9, 7, 7, 7,
+ 9,10,11,13,11,11, 9, 7, 8,10,13,11,10, 6, 5, 7,
+ 9,
+};
+
+static const static_codebook _huff_book__44p1_short = {
+ 2, 49,
+ (char *)_huff_lengthlist__44p1_short,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
+static const long _vq_quantlist__44p2_l0_0[] = {
+ 6,
+ 5,
+ 7,
+ 4,
+ 8,
+ 3,
+ 9,
+ 2,
+ 10,
+ 1,
+ 11,
+ 0,
+ 12,
+};
+
+static const char _vq_lengthlist__44p2_l0_0[] = {
+ 1, 4, 4, 7, 7, 8, 8, 9, 9,10,10,11,11, 4, 6, 5,
+ 8, 7, 9, 8,10, 9,11,10,11,11, 4, 5, 6, 7, 8, 8,
+ 9, 9,10,10,10,10,11, 8, 9, 8,10, 8,10, 9,11,10,
+ 11,11,11,11, 8, 8, 9, 8,10, 9,10,10,11,11,11,11,
+ 11, 9,10,10,11,11,11,11,11,11,12,11,12,11, 9,10,
+ 10,10,11,11,11,11,11,11,12,11,12,10,11,11,12,11,
+ 12,12,12,12,12,12,12,12,10,11,11,11,11,12,12,12,
+ 13,12,12,12,12,11,12,12,12,12,13,13,12,12,12,12,
+ 12,12,11,12,12,12,12,13,13,12,13,12,12,12,12,12,
+ 13,13,13,13,13,13,12,13,12,13,12,12,12,13,13,13,
+ 13,13,13,13,12,13,12,12,12,
+};
+
+static const static_codebook _44p2_l0_0 = {
+ 2, 169,
+ (char *)_vq_lengthlist__44p2_l0_0,
+ 1, -526516224, 1616117760, 4, 0,
+ (long *)_vq_quantlist__44p2_l0_0,
+ 0
+};
+
+static const long _vq_quantlist__44p2_l0_1[] = {
+ 2,
+ 1,
+ 3,
+ 0,
+ 4,
+};
+
+static const char _vq_lengthlist__44p2_l0_1[] = {
+ 2, 4, 4, 5, 5, 4, 5, 5, 6, 5, 4, 5, 5, 5, 6, 5,
+ 5, 6, 6, 6, 5, 6, 5, 6, 6,
+};
+
+static const static_codebook _44p2_l0_1 = {
+ 2, 25,
+ (char *)_vq_lengthlist__44p2_l0_1,
+ 1, -533725184, 1611661312, 3, 0,
+ (long *)_vq_quantlist__44p2_l0_1,
+ 0
+};
+
+static const long _vq_quantlist__44p2_l1_0[] = {
+ 1,
+ 0,
+ 2,
+};
+
+static const char _vq_lengthlist__44p2_l1_0[] = {
+ 1, 4, 4, 4, 4, 4, 4, 4, 4,
+};
+
+static const static_codebook _44p2_l1_0 = {
+ 2, 9,
+ (char *)_vq_lengthlist__44p2_l1_0,
+ 1, -516716544, 1630767104, 2, 0,
+ (long *)_vq_quantlist__44p2_l1_0,
+ 0
+};
+
+static const char _huff_lengthlist__44p2_lfe[] = {
+ 1, 3, 2, 3,
+};
+
+static const static_codebook _huff_book__44p2_lfe = {
+ 2, 4,
+ (char *)_huff_lengthlist__44p2_lfe,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
+static const char _huff_lengthlist__44p2_long[] = {
+ 3, 4, 9, 8, 8,10,13,16, 4, 2, 9, 5, 7,10,14,18,
+ 9, 7, 6, 5, 7, 9,12,16, 7, 5, 5, 3, 5, 8,11,13,
+ 8, 7, 7, 5, 5, 7, 9,11,10,10, 9, 8, 6, 6, 8,10,
+ 13,14,13,11, 9, 8, 9,10,17,18,16,14,11,10,10,10,
+};
+
+static const static_codebook _huff_book__44p2_long = {
+ 2, 64,
+ (char *)_huff_lengthlist__44p2_long,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
+static const long _vq_quantlist__44p2_p1_0[] = {
+ 1,
+ 0,
+ 2,
+};
+
+static const char _vq_lengthlist__44p2_p1_0[] = {
+ 1, 2, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0,
+};
+
+static const static_codebook _44p2_p1_0 = {
+ 5, 243,
+ (char *)_vq_lengthlist__44p2_p1_0,
+ 1, -535822336, 1611661312, 2, 0,
+ (long *)_vq_quantlist__44p2_p1_0,
+ 0
+};
+
+static const long _vq_quantlist__44p2_p2_0[] = {
+ 2,
+ 1,
+ 3,
+ 0,
+ 4,
+};
+
+static const char _vq_lengthlist__44p2_p2_0[] = {
+ 1, 4, 4, 0, 0, 0, 8, 8, 0, 0, 0, 9, 9, 0, 0, 0,
+ 10,10, 0, 0, 0, 0, 0, 0, 0, 0,10,10, 0, 0, 0, 0,
+ 0, 0, 0, 0, 9, 9, 0, 0, 0,11,11, 0, 0, 0, 0, 0,
+ 0, 0, 0,10,10, 0, 0, 0, 0, 0, 0, 0, 0, 9, 9, 0,
+ 0, 0,11,11, 0, 0, 0, 0, 0, 0, 0, 0,11,11, 0, 0,
+ 0, 0, 0, 0, 0, 0,10,10, 0, 0, 0,11,11, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 7, 7,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 7, 7, 0, 0, 0,
+ 6, 6, 0, 0, 0, 7, 7, 0, 0, 0, 8, 8, 0, 0, 0, 0,
+ 0, 0, 0, 0, 8, 8, 0, 0, 0, 0, 0, 0, 0, 0, 7, 7,
+ 0, 0, 0, 9, 9, 0, 0, 0, 0, 0, 0, 0, 0, 8, 8, 0,
+ 0, 0, 0, 0, 0, 0, 0, 7, 7, 0, 0, 0, 9, 9, 0, 0,
+ 0, 0, 0, 0, 0, 0, 9, 9, 0, 0, 0, 0, 0, 0, 0, 0,
+ 8, 8, 0, 0, 0, 9, 9, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 8, 8, 0, 0, 0, 8, 8, 0,
+ 0, 0,10,10, 0, 0, 0, 9, 9, 0, 0, 0, 0, 0, 0, 0,
+ 0,10,10, 0, 0, 0, 0, 0, 0, 0, 0, 9, 9, 0, 0, 0,
+ 11,11, 0, 0, 0, 0, 0, 0, 0, 0,10,10, 0, 0, 0, 0,
+ 0, 0, 0, 0, 9, 9, 0, 0, 0,11,10, 0, 0, 0, 0, 0,
+ 0, 0, 0,11,11, 0, 0, 0, 0, 0, 0, 0, 0,10,10, 0,
+ 0, 0,11,11, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 8, 8, 0, 0, 0,10,10, 0, 0, 0,11,11, 0, 0,
+ 0,12,12, 0, 0, 0, 0, 0, 0, 0, 0,11,11, 0, 0, 0,
+ 0, 0, 0, 0, 0,10,10, 0, 0, 0,13,13, 0, 0, 0, 0,
+ 0, 0, 0, 0,13,13, 0, 0, 0, 0, 0, 0, 0, 0,12,12,
+ 0, 0, 0,13,13, 0, 0, 0, 0, 0, 0, 0, 0,13,13, 0,
+ 0, 0, 0, 0, 0, 0, 0,12,12, 0, 0, 0,13,13, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6,
+ 6, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 9, 9, 0, 0, 0,11,11,
+ 0, 0, 0,12,12, 0, 0, 0,12,12, 0, 0, 0, 0, 0, 0,
+ 0, 0,13,13, 0, 0, 0, 0, 0, 0, 0, 0,12,11, 0, 0,
+ 0,12,12, 0, 0, 0, 0, 0, 0, 0, 0,13,13, 0, 0, 0,
+ 0, 0, 0, 0, 0,12,12, 0, 0, 0,13,13, 0, 0, 0, 0,
+ 0, 0, 0, 0,13,13, 0, 0, 0, 0, 0, 0, 0, 0,12,12,
+ 0, 0, 0,13,13, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 8, 8, 0, 0, 0,10,10, 0, 0, 0,11,11, 0,
+ 0, 0,12,12, 0, 0, 0, 0, 0, 0, 0, 0,13,13, 0, 0,
+ 0, 0, 0, 0, 0, 0,12,12, 0, 0, 0,13,13, 0, 0, 0,
+ 0, 0, 0, 0, 0,11,11, 0, 0, 0, 0, 0, 0, 0, 0,10,
+ 10, 0, 0, 0,13,13, 0, 0, 0, 0, 0, 0, 0, 0,14,13,
+ 0, 0, 0, 0, 0, 0, 0, 0,13,12, 0, 0, 0,13,13, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 6, 6, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 9, 9, 0, 0, 0,11,
+ 11, 0, 0, 0,12,12, 0, 0, 0,12,12, 0, 0, 0, 0, 0,
+ 0, 0, 0,12,12, 0, 0, 0, 0, 0, 0, 0, 0,12,12, 0,
+ 0, 0,13,13, 0, 0, 0, 0, 0, 0, 0, 0,13,13, 0, 0,
+ 0, 0, 0, 0, 0, 0,12,12, 0, 0, 0,12,12, 0, 0, 0,
+ 0, 0, 0, 0, 0,13,13, 0, 0, 0, 0, 0, 0, 0, 0,12,
+ 12, 0, 0, 0,13,13, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 9, 9, 0, 0, 0,11,11, 0, 0, 0,12,12,
+ 0, 0, 0,12,12, 0, 0, 0, 0, 0, 0, 0, 0,12,12, 0,
+ 0, 0, 0, 0, 0, 0, 0,11,11, 0, 0, 0,14,14, 0, 0,
+ 0, 0, 0, 0, 0, 0,13,13, 0, 0, 0, 0, 0, 0, 0, 0,
+ 12,12, 0, 0, 0,12,13, 0, 0, 0, 0, 0, 0, 0, 0,12,
+ 12, 0, 0, 0, 0, 0, 0, 0, 0,11,11, 0, 0, 0,14,13,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 7, 7, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 9, 9, 0, 0, 0,
+ 11,11, 0, 0, 0,12,12, 0, 0, 0,13,13, 0, 0, 0, 0,
+ 0, 0, 0, 0,13,13, 0, 0, 0, 0, 0, 0, 0, 0,12,12,
+ 0, 0, 0,13,13, 0, 0, 0, 0, 0, 0, 0, 0,12,12, 0,
+ 0, 0, 0, 0, 0, 0, 0,12,12, 0, 0, 0,14,14, 0, 0,
+ 0, 0, 0, 0, 0, 0,14,14, 0, 0, 0, 0, 0, 0, 0, 0,
+ 12,12, 0, 0, 0,13,13, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0,
+};
+
+static const static_codebook _44p2_p2_0 = {
+ 5, 3125,
+ (char *)_vq_lengthlist__44p2_p2_0,
+ 1, -533725184, 1611661312, 3, 0,
+ (long *)_vq_quantlist__44p2_p2_0,
+ 0
+};
+
+static const long _vq_quantlist__44p2_p3_0[] = {
+ 1,
+ 0,
+ 2,
+};
+
+static const char _vq_lengthlist__44p2_p3_0[] = {
+ 1, 5, 5, 6, 7, 7, 0, 8, 8, 6, 9, 9, 8,11,11, 0,
+ 8, 8, 0, 9, 9, 0,12,12, 0, 8, 8, 5, 7, 7, 7,10,
+ 10, 0,12,12, 8,11,11, 9,12,12, 0,11,12, 0,12,12,
+ 0,15,15, 0,12,12, 0, 6, 6, 0, 6, 6, 0, 7, 7, 0,
+ 7, 7, 0,10,10, 0, 7, 7, 0, 8, 8, 0,11,11, 0, 7,
+ 7, 6, 7, 7,10, 9, 9, 0,11,10,10, 9, 9,12,12,12,
+ 0,10,10, 0,11,11, 0,13,13, 0,11,11, 7, 6, 6,10,
+ 10,10, 0,11,11,11,11,11,12,12,12, 0,11,11, 0,12,
+ 12, 0,15,15, 0,11,11, 0,11,11, 0,11,11, 0,12,12,
+ 0,12,12, 0,14,14, 0,12,12, 0,12,12, 0,15,15, 0,
+ 11,11, 0, 8, 8, 0,10,10, 0,11,11, 0,11,11, 0,12,
+ 12, 0,12,12, 0,11,11, 0,15,15, 0,11,11, 0, 6, 6,
+ 0,10,10, 0,12,12, 0,10,10, 0,13,13, 0,12,12, 0,
+ 13,13, 0,14,14, 0,12,12, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0,
+};
+
+static const static_codebook _44p2_p3_0 = {
+ 5, 243,
+ (char *)_vq_lengthlist__44p2_p3_0,
+ 1, -533200896, 1614282752, 2, 0,
+ (long *)_vq_quantlist__44p2_p3_0,
+ 0
+};
+
+static const long _vq_quantlist__44p2_p3_1[] = {
+ 1,
+ 0,
+ 2,
+};
+
+static const char _vq_lengthlist__44p2_p3_1[] = {
+ 2, 3, 3, 0, 8, 8, 0, 8, 8, 0, 9, 9, 0, 9, 9, 0,
+ 9, 9, 0, 9, 9, 0, 9, 9, 0, 8, 8, 0, 6, 6, 0, 7,
+ 7, 0, 7, 7, 0, 8, 8, 0, 8, 8, 0, 8, 8, 0, 8, 8,
+ 0, 8, 8, 0, 8, 8, 0, 6, 6, 0, 6, 6, 0, 6, 6, 0,
+ 8, 8, 0, 9, 9, 0, 7, 7, 0, 8, 8, 0, 9, 9, 0, 6,
+ 6, 0, 8, 8, 0, 9, 9, 0, 9, 9, 0,10,10, 0,10,10,
+ 0,10,10, 0,10,10, 0,11,11, 0, 9, 9, 0, 7, 7, 0,
+ 10,10, 0,10,10, 0,12,11, 0,12,12, 0,11,11, 0,11,
+ 11, 0,12,12, 0,10,10, 0, 7, 7, 0,10,10, 0,10,10,
+ 0,12,12, 0,11,12, 0,11,11, 0,11,11, 0,11,11, 0,
+ 10,10, 0, 8, 8, 0, 9, 9, 0, 9, 9, 0,10,10, 0,10,
+ 10, 0,10, 9, 0,10,10, 0,10,10, 0, 9, 9, 0, 6, 6,
+ 0,10,10, 0,10,10, 0,11,11, 0,12,12, 0,11,11, 0,
+ 11,11, 0,12,12, 0,11,11, 0, 7, 7, 0, 9, 9, 0, 9,
+ 9, 0,11,11, 0,11,11, 0,10,10, 0,10,10, 0,11,11,
+ 0, 9, 9,
+};
+
+static const static_codebook _44p2_p3_1 = {
+ 5, 243,
+ (char *)_vq_lengthlist__44p2_p3_1,
+ 1, -535822336, 1611661312, 2, 0,
+ (long *)_vq_quantlist__44p2_p3_1,
+ 0
+};
+
+static const long _vq_quantlist__44p2_p4_0[] = {
+ 1,
+ 0,
+ 2,
+};
+
+static const char _vq_lengthlist__44p2_p4_0[] = {
+ 1, 6, 6, 6, 7, 7, 7, 8, 8, 7, 8, 8,10,11,11, 9,
+ 8, 8, 7, 8, 8,11,11,11, 9, 8, 8, 6, 7, 7, 9,11,
+ 11, 9,11,11,10,11,11,12,13,13,11,12,12,10,11,11,
+ 13,14,14,12,12,12, 6, 6, 6, 8, 6, 6, 8, 7, 7, 9,
+ 7, 7,11,10,10,10, 6, 6, 9, 7, 7,12,10,10,11, 6,
+ 7, 7, 7, 7,11,10,10,12,10,10,11,10,10,14,13,13,
+ 13,10,10,12,11,11,15,13,13,14,10,10, 8, 7, 7,12,
+ 11,11,12,11,11,11,11,11,14,14,14,13,12,12,12,11,
+ 11,15,15,15,13,12,12, 0,10,10, 0,11,11, 0,11,11,
+ 0,11,11, 0,14,14, 0,11,11, 0,11,11, 0,15,15, 0,
+ 11,11, 7, 8, 8,12,10,10,12,10,10,12,11,11,15,13,
+ 13,14,11,11,12,10,10,16,14,14,14,10,10, 8, 7, 7,
+ 12,11,11,12,11,11,12,11,11,16,14,14,14,12,12,13,
+ 12,12,15,14,14,15,12,12, 0,11,11, 0,12,12, 0,12,
+ 12, 0,12,12, 0,15,15, 0,12,12, 0,12,12, 0,14,14,
+ 0,12,12,
+};
+
+static const static_codebook _44p2_p4_0 = {
+ 5, 243,
+ (char *)_vq_lengthlist__44p2_p4_0,
+ 1, -531365888, 1616117760, 2, 0,
+ (long *)_vq_quantlist__44p2_p4_0,
+ 0
+};
+
+static const long _vq_quantlist__44p2_p4_1[] = {
+ 2,
+ 1,
+ 3,
+ 0,
+ 4,
+};
+
+static const char _vq_lengthlist__44p2_p4_1[] = {
+ 3, 4, 4, 8, 8,11, 9, 9,12,12,11,10,10,12,12,12,
+ 10,10,11,11,12,12,12,12,12,12,11,11,13,13,12,12,
+ 12,13,13,12,10,10,12,12,12,11,11,13,13,12,13,13,
+ 13,13,12,11,11,13,13,12,12,12,13,13,12,10,10,12,
+ 12,12,11,11,13,13,12,13,13,12,12,12,11,11,13,13,
+ 12,13,13,13,13,12,11,11,12,12,12,11,11,12,12,12,
+ 13,13,12,12,12,13,13,13,13,12,13,13,13,13,13,13,
+ 13,12,12,12,13,13,13,13,12,13,13,12,12,11, 8, 8,
+ 10,10,12,11,11,11,11,12,10,10,10,10,13,11,11,10,
+ 10,13,11,11,10,10,13,12,12,12,12,13,11,11,11,11,
+ 13,12,12,11,11,13,12,12,11,11,13,12,12,12,11,13,
+ 12,12,12,12,13,11,11,11,11,13,12,12,11,11,13,11,
+ 12,11,11,13,12,12,11,11,14,12,12,11,11,13,11,11,
+ 11,11,14,12,12,11,11,13,11,12,10,10,14,12,12,11,
+ 11,14,12,12,11,11,14,11,11,11,11,14,12,12,11,11,
+ 13,12,12,11,11,14,12,12,11,11,11, 8, 8,10,10,12,
+ 7, 7,10,10,12, 9, 9,11,11,13, 9, 9, 9, 9,13,13,
+ 13,10,10,13, 9, 9,12,12,13,13,13,12,12,13, 9, 8,
+ 11,11,13,10,10,12,12,14,13,13,11,11,13, 9, 9,11,
+ 11,13,13,13,12,12,13, 9, 9,10,10,13,10,10,11,11,
+ 13,13,13,10,10,14,10,10,11,11,14,14,14,12,12,13,
+ 9, 9,10,10,13,10,10,11,11,14,13,14,10,10,14,14,
+ 14,11,12,14,14,14,14,14,14,13,13,10,10,13,14,14,
+ 11,11,14,14,14,10,10,14, 9, 9, 9, 9,14, 9, 9, 9,
+ 9,14,10,10, 9, 9,14,10,10, 8, 8,14,11,11, 8, 8,
+ 15,11,11,10,10,15,12,12,10,10,15,10,10,10,10,15,
+ 11,11,10,10,15,13,13,10,10,15,11,11,10,10,15,12,
+ 12,10,10,15,10,10,10,10,15,11,11,10,10,15,13,13,
+ 10,10,15,11,11,10,10,15,12,12,10,10,15,11,11, 9,
+ 9,15,11,11, 9, 9,15,13,13, 9, 9,15,13,13,10,10,
+ 15,12,12,10,10,15,13,13,10,10,15,13,12, 9, 9,15,
+ 13,13, 9, 9,14,12,12, 9, 9,14,13,13, 9, 9,14,13,
+ 13, 9, 9,14,13,13, 7, 7,14,13,13, 8, 8,15,14,14,
+ 10,10,15,14,14,10,10,15,14,14,10,10,15,14,14,10,
+ 10,15,14,14, 9, 9,15,14,14,10,10,15,14,14,10,10,
+ 14,14,14, 9, 9,15,14,14,10,10,14,14,14, 9, 9,15,
+ 14,14,10,10,15,14,14,10,10,14,14,14, 9, 9,14,14,
+ 14, 9, 9,14,14,14, 8, 8,15,14,14,10,10,15,14,14,
+ 11,11,15,14,14, 9, 9,15,14,14, 9, 9,14,14,14, 8,
+ 8,13, 9, 9,12,12,17,11,11,12,12,17,12,12,12,12,
+ 17,12,12,11,11,18,15,15,12,12,17,12,12,12,12,17,
+ 14,15,13,13,17,12,12,12,12,17,13,13,12,13,17,15,
+ 15,12,12,18,13,13,13,13,18,15,15,13,13,18,12,12,
+ 12,12,18,13,13,13,13,18,15,15,12,12,18,13,13,12,
+ 12,18,15,15,13,13,18,13,13,12,12,17,13,13,12,12,
+ 17,15,15,12,12,18,15,15,13,13,18,15,15,13,14,18,
+ 15,16,12,12,18,15,15,12,12,18,16,16,12,12,13, 8,
+ 8,10,10,14,15,14,11,11,14,15,15,12,12,15,14,14,
+ 12,11,15,15,15,12,12,15,15,15,12,12,15,15,15,13,
+ 13,15,15,15,12,12,15,15,15,13,13,15,15,15,13,13,
+ 15,15,15,13,13,15,15,16,13,13,15,15,15,12,12,15,
+ 15,15,13,13,15,15,15,13,13,15,15,15,13,13,15,15,
+ 15,13,13,15,15,14,12,12,15,15,15,12,12,16,15,14,
+ 12,12,16,15,15,13,13,16,16,16,13,13,16,15,15,12,
+ 12,15,15,15,13,13,15,15,15,12,12,13,12,12,10,10,
+ 14,14,14,11,11,15,14,14,12,12,15,14,14,11,11,15,
+ 14,14,11,11,15,15,15,13,13,15,14,14,13,13,15,15,
+ 15,12,12,15,14,15,13,13,16,15,15,12,12,15,15,15,
+ 13,13,16,14,14,13,13,15,15,15,12,12,15,15,15,13,
+ 13,16,15,15,12,12,16,15,15,12,12,16,14,14,13,13,
+ 15,15,15,11,11,15,15,15,12,12,16,15,15,11,11,16,
+ 15,15,13,13,16,14,15,14,14,16,15,15,12,12,16,15,
+ 14,12,12,16,15,15,12,12,14,10,10, 9, 9,14,11,11,
+ 12,12,14,12,12,13,13,14,12,12,12,12,15,14,14,13,
+ 13,15,13,13,14,14,15,14,14,15,15,15,12,12,13,13,
+ 15,13,13,14,14,15,14,14,13,13,15,13,13,13,14,15,
+ 14,14,15,15,15,12,12,13,13,15,13,13,14,14,15,14,
+ 14,13,13,15,13,13,14,14,15,14,14,15,15,15,13,13,
+ 12,12,15,13,13,13,13,15,14,14,13,12,15,15,15,14,
+ 15,15,15,14,20,20,15,14,14,13,13,15,14,14,13,13,
+ 15,14,14,13,13,14,12,12, 9, 9,14,14,14,12,12,14,
+ 13,13,12,13,14,14,14,12,12,15,14,14,12,12,15,14,
+ 14,14,13,15,14,14,14,14,15,14,14,13,13,15,14,14,
+ 13,13,15,15,15,14,14,15,14,14,13,13,15,14,14,14,
+ 14,15,14,14,13,13,15,14,14,13,13,15,15,15,15,14,
+ 15,15,15,13,13,15,14,14,14,14,15,14,14,13,13,15,
+ 14,14,13,13,14,15,15,14,14,15,15,15,14,14,15,14,
+ 14,14,14,15,15,15,14,14,15,14,14,13,14,15,15,15,
+ 14,14,13,10,10,12,12,17,11,11,12,12,17,12,12,12,
+ 12,17,12,12,11,11,17,15,15,12,11,18,13,13,13,13,
+ 18,15,15,13,13,17,12,12,12,12,18,13,13,13,13,17,
+ 15,15,12,12,17,12,12,12,12,17,15,15,13,13,17,12,
+ 12,12,12,17,13,13,12,12,17,15,15,12,12,18,14,13,
+ 12,12,18,15,15,13,13,18,13,13,12,12,18,13,13,12,
+ 12,18,16,16,12,12,18,16,16,12,12,18,15,15,13,13,
+ 18,16,16,12,12,17,15,15,12,12,17,16,16,12,12,13,
+ 8, 8,10,10,14,14,15,12,12,14,15,15,12,12,15,14,
+ 14,12,12,15,15,14,12,12,15,15,15,13,13,15,15,15,
+ 13,13,15,15,15,12,12,16,15,15,13,13,16,15,15,13,
+ 13,15,15,15,12,12,15,15,15,14,14,15,15,15,12,12,
+ 15,15,15,13,13,16,15,15,13,13,15,15,15,13,13,16,
+ 15,15,13,13,15,15,14,12,12,15,15,15,12,12,16,14,
+ 15,13,13,16,15,15,13,13,15,16,15,13,13,16,15,14,
+ 13,13,16,15,15,13,13,16,15,15,13,13,13,12,12,11,
+ 11,14,14,14,11,11,14,14,14,12,12,15,14,14,11,11,
+ 16,14,14,11,11,15,15,15,12,13,16,14,14,13,13,15,
+ 15,15,12,12,15,14,14,13,13,16,15,15,12,12,15,15,
+ 15,12,12,15,14,14,13,13,15,15,15,12,12,15,14,14,
+ 12,12,16,15,15,12,12,16,15,15,12,12,16,14,14,13,
+ 13,15,15,15,11,11,15,15,14,12,12,16,15,15,11,11,
+ 16,15,15,12,12,16,14,14,13,13,16,15,15,11,11,16,
+ 14,14,12,12,16,15,15,11,11,14,10,10, 9, 9,14,11,
+ 11,12,12,14,12,12,13,14,14,12,12,12,12,14,14,14,
+ 13,13,15,13,13,14,14,15,14,14,15,15,15,12,12,13,
+ 13,15,13,13,14,14,15,15,15,14,14,15,13,13,14,14,
+ 15,15,15,15,15,15,12,12,13,13,15,13,13,14,14,15,
+ 14,14,13,13,15,13,13,14,14,15,14,14,15,15,15,12,
+ 12,13,13,15,13,13,13,13,14,14,14,13,13,15,15,15,
+ 14,15,15,15,15,21,19,15,14,14,13,13,15,14,14,14,
+ 14,14,14,14,13,13,14,12,12, 9, 9,14,14,14,12,12,
+ 14,14,13,13,13,14,14,14,12,12,14,14,14,12,12,15,
+ 14,14,13,13,15,14,14,14,14,15,14,14,13,13,15,14,
+ 14,13,13,15,15,15,15,15,15,14,14,13,13,15,14,14,
+ 14,14,15,14,14,13,13,15,14,14,13,13,14,15,15,15,
+ 15,15,14,15,13,13,15,14,14,14,14,15,14,14,13,13,
+ 15,14,14,13,13,14,15,15,14,14,15,15,15,14,14,15,
+ 14,14,14,14,15,15,15,15,15,15,14,14,14,13,14,15,
+ 15,14,14,13,10,10,12,12,18,12,12,12,12,17,12,12,
+ 12,12,18,13,13,11,11,18,15,14,11,11,17,13,13,13,
+ 13,18,15,15,12,12,18,12,12,12,12,17,13,13,12,12,
+ 18,15,15,12,12,18,13,13,13,12,18,15,15,13,13,18,
+ 13,13,12,12,18,13,13,12,12,18,15,15,12,12,17,13,
+ 13,12,12,17,15,15,12,12,17,12,12,11,11,17,13,13,
+ 11,11,17,15,15,11,11,18,16,16,12,12,18,15,15,13,
+ 13,18,15,15,11,11,17,15,15,12,12,18,15,15,11,11,
+ 13, 8, 8,10,10,14,14,14,11,11,15,15,15,12,12,15,
+ 14,14,11,11,16,14,14,12,12,15,15,15,12,12,15,15,
+ 15,13,13,15,15,15,12,12,15,15,15,12,12,16,15,15,
+ 13,13,15,15,15,12,12,15,15,15,13,13,16,15,15,12,
+ 12,15,15,15,12,12,16,15,15,13,13,16,15,15,12,12,
+ 15,15,15,13,13,15,14,14,12,12,15,15,15,12,12,16,
+ 15,14,12,12,16,15,15,13,13,16,16,16,13,13,16,14,
+ 15,13,13,15,15,15,13,13,16,15,15,12,12,13,12,12,
+ 10,10,14,14,14,11,11,15,14,14,12,12,15,14,14,11,
+ 11,16,14,14,11,11,15,14,15,12,12,15,14,14,13,13,
+ 15,15,15,12,12,15,14,14,12,12,15,14,15,12,12,15,
+ 15,15,12,12,16,14,14,13,13,15,15,15,11,12,16,14,
+ 14,12,12,16,15,15,12,12,15,15,15,12,12,16,14,14,
+ 12,12,15,15,15,11,11,15,14,14,11,12,15,15,14,11,
+ 11,16,15,15,12,12,16,14,14,13,13,16,15,15,11,11,
+ 16,14,14,12,12,16,15,15,11,11,13,10,10, 8, 8,14,
+ 12,12,12,12,14,12,12,13,13,14,12,12,12,12,14,14,
+ 14,13,13,15,13,13,14,14,15,15,14,15,15,15,13,13,
+ 13,13,15,13,13,14,14,15,14,15,14,14,15,13,13,13,
+ 13,15,15,15,15,15,15,12,12,13,12,15,13,13,14,14,
+ 15,14,14,13,13,15,13,13,14,13,15,15,15,16,16,15,
+ 13,13,12,12,15,13,13,13,13,14,14,14,12,12,15,15,
+ 15,14,14,15,15,15,20,20,15,14,14,13,13,15,15,14,
+ 14,14,15,14,14,13,13,13,12,12, 9, 9,14,13,13,12,
+ 12,14,13,13,12,12,14,14,14,12,12,14,14,14,13,13,
+ 15,14,14,13,13,15,14,14,14,14,15,15,14,12,12,15,
+ 14,14,13,13,15,14,15,14,15,15,14,14,13,13,15,14,
+ 14,14,14,15,14,14,12,12,15,14,14,13,13,14,15,14,
+ 15,14,15,14,14,13,13,15,14,14,14,14,15,14,14,12,
+ 12,15,14,14,13,13,15,15,15,14,14,15,15,15,14,14,
+ 16,14,14,14,14,15,15,15,14,14,15,14,14,14,14,14,
+ 15,15,14,14,13,13,13,12,13,17,15,15,12,12,17,15,
+ 15,12,12,18,15,15,11,11,17,16,16,11,11,18,16,16,
+ 13,13,18,17,16,13,13,18,16,16,12,12,18,16,16,12,
+ 12,18,17,17,12,12,17,16,16,12,13,17,16,16,12,13,
+ 17,16,16,12,12,17,16,16,12,12,18,17,16,12,12,18,
+ 16,16,12,12,17,16,17,12,12,18,15,15,11,11,18,15,
+ 15,12,12,17,17,17,11,11,17,17,17,12,12,17,16,16,
+ 13,13,18,16,16,11,11,18,16,16,12,12,18,17,16,11,
+ 11,14,14,14,10,10,16,15,14,11,11,16,15,15,12,12,
+ 16,14,14,12,12,17,14,14,13,13,17,15,15,13,13,17,
+ 15,15,14,14,16,15,15,12,12,16,15,15,13,13,18,15,
+ 15,14,14,16,15,15,12,12,16,15,15,14,14,16,15,15,
+ 12,12,16,15,15,13,13,17,15,15,13,13,17,15,15,13,
+ 13,17,15,15,14,14,16,14,14,12,12,17,15,15,12,12,
+ 18,15,15,13,13,17,15,15,14,14,17,16,16,15,15,17,
+ 15,14,13,13,17,15,15,14,14,17,15,15,13,13,14,12,
+ 12,11,11,15,14,14,12,12,16,14,14,12,12,16,14,14,
+ 11,11,17,14,14,12,12,16,15,14,13,13,16,14,14,13,
+ 13,16,15,15,12,12,16,14,14,13,13,17,15,15,13,13,
+ 16,15,15,13,13,17,14,14,13,13,16,15,15,12,12,16,
+ 14,14,12,12,16,15,15,12,12,17,15,15,12,12,17,14,
+ 14,13,13,16,15,15,12,12,16,14,14,12,12,16,15,15,
+ 12,12,17,15,15,13,13,17,14,14,13,13,17,15,15,12,
+ 12,17,14,14,12,12,17,15,15,12,12,14,14,14, 8, 8,
+ 14,14,14,13,13,14,15,15,14,14,14,14,14,14,14,15,
+ 15,15,19,19,15,15,15,14,14,15,15,16,20,19,15,15,
+ 15,14,14,15,16,16,15,15,15,15,15,19,19,15,15,15,
+ 14,14,15,16,16,19,20,15,15,15,14,14,15,15,15,15,
+ 15,15,15,15,19,19,15,15,15,15,15,15,15,16,19,20,
+ 15,14,15,14,14,15,15,15,15,15,15,15,15,20,19,15,
+ 15,15,21,19,15,16,16,20,20,15,15,14,19,19,15,15,
+ 16,20,21,15,15,15,20,19,13,12,12, 9, 9,14,14,14,
+ 12,12,14,13,13,13,13,14,14,14,13,13,15,14,14,20,
+ 19,15,14,14,14,13,15,14,14,19,19,15,15,14,13,13,
+ 15,14,14,14,14,15,15,15,19,20,15,14,14,13,13,15,
+ 14,14,20,19,14,15,14,13,13,15,14,14,14,13,15,15,
+ 15,19,20,15,15,14,14,14,15,14,14,21,19,15,15,15,
+ 13,13,15,14,14,14,14,14,15,15,20,20,15,15,15,21,
+ 20,15,14,14,19,20,15,15,15,20,20,15,14,14,19,20,
+ 15,15,15,21,19,
+};
+
+static const static_codebook _44p2_p4_1 = {
+ 5, 3125,
+ (char *)_vq_lengthlist__44p2_p4_1,
+ 1, -533725184, 1611661312, 3, 0,
+ (long *)_vq_quantlist__44p2_p4_1,
+ 0
+};
+
+static const long _vq_quantlist__44p2_p5_0[] = {
+ 2,
+ 1,
+ 3,
+ 0,
+ 4,
+};
+
+static const char _vq_lengthlist__44p2_p5_0[] = {
+ 2, 6, 6,14,14, 6, 7, 7,14,14, 7, 7, 7,15,15, 0,
+ 13,13,16,16, 0,13,13,15,15, 7, 8, 8,15,15, 9,10,
+ 10,17,16, 9, 8, 8,15,15, 0,13,13,18,17, 0,13,13,
+ 16,16, 8, 8, 8,15,15,12,11,11,16,17, 9, 8, 8,14,
+ 14, 0,13,13,18,17, 0,13,13,16,15, 0,14,14,18,17,
+ 0,20,22,18,20, 0,12,12,16,16, 0,16,16,22,20, 0,
+ 14,14,16,16, 0,14,14,17,17, 0,22,22,22,19, 0,12,
+ 13,16,16, 0,17,17, 0, 0, 0,15,15,16,16, 5, 7, 7,
+ 13,13, 9, 9, 9,15,14,10,10,10,14,14, 0,21,21,18,
+ 17, 0,21,22,18,17, 9,10,10,14,14,12,12,12,17,17,
+ 12,10,10,14,14, 0,19,21,18,17, 0,20,22,18,18,11,
+ 10,10,14,14,14,13,13,18,17,12,11,11,14,14, 0,22,
+ 19,17,18, 0,20, 0,18,17, 0,22,21,17,17, 0, 0, 0,
+ 0, 0, 0,20,22,17,17, 0,22, 0,21,19, 0,22, 0,18,
+ 18, 0, 0,22,18,19, 0, 0, 0, 0, 0, 0,19,21,17,17,
+ 0, 0, 0,20,20, 0, 0, 0,18,18, 6, 6, 6,13,12, 8,
+ 6, 6,11,11, 8, 6, 6,13,13, 0, 9, 9,11,11, 0,11,
+ 11,14,14, 9, 7, 7,13,13,11, 9, 9,13,13,10, 6, 6,
+ 13,13, 0,10,10,14,14, 0,10,10,13,13, 9, 7, 7,13,
+ 14,13, 9, 9,13,13,10, 6, 6,13,12, 0,11,11,15,15,
+ 0,10,10,13,13, 0,12,12,15,15, 0,19, 0,17,17, 0,
+ 9, 9,13,13, 0,13,14,19,20, 0,11,11,13,13, 0,11,
+ 11,14,14, 0,19,20,17,18, 0,10,10,13,13, 0,15,15,
+ 21,19, 0,12,12,13,13, 0,10,10,12,13, 0,11,11,15,
+ 15, 0,11,11,15,15, 0,15,15,22, 0, 0,16,17,22, 0,
+ 0,11,11,15,15, 0,14,14,18,17, 0,11,11,15,16, 0,
+ 15,15,22,21, 0,16,16, 0,20, 0,12,12,16,15, 0,15,
+ 14,19,19, 0,11,11,16,16, 0,15,15,21, 0, 0,16,15,
+ 0, 0, 0,16,16,22,21, 0, 0, 0, 0, 0, 0,15,15,20,
+ 20, 0,18,18, 0, 0, 0,16,17, 0, 0, 0,17,17, 0,22,
+ 0, 0, 0, 0, 0, 0,15,15,21,22, 0,20,18, 0, 0, 0,
+ 18,17,22, 0, 0,10,10,12,11, 0,10,10,10,10, 0,11,
+ 11,12,12, 0,11,11, 9, 9, 0,13,13,12,12, 0,11,11,
+ 12,12, 0,13,13,12,12, 0,10,10,12,12, 0,13,12,13,
+ 13, 0,12,12,12,12, 0,11,11,12,12, 0,13,13,12,12,
+ 0,10,10,12,12, 0,13,13,13,14, 0,12,12,12,12, 0,
+ 13,14,14,14, 0,20,21,15,15, 0,12,11,12,12, 0,15,
+ 16,20,22, 0,13,12,11,11, 0,13,13,14,13, 0,20, 0,
+ 16,15, 0,12,12,12,12, 0,16,16,22,21, 0,13,13,12,
+ 12, 6, 7, 7,16,16,11, 9, 9,15,15,12, 9, 9,16,16,
+ 0,13,13,14,14, 0,14,14,16,17,10, 9, 9,16,16,14,
+ 12,12,16,16,12, 9, 9,15,15, 0,13,13,18,18, 0,13,
+ 13,15,16,12,10,10,17,18,15,12,12,17,17,13, 9, 9,
+ 16,16, 0,13,13,17,18, 0,14,14,16,16, 0,15,15,18,
+ 18, 0,22, 0,20,20, 0,12,12,16,16, 0,16,16,20,22,
+ 0,14,14,16,16, 0,15,14,18,18, 0, 0,22,19,21, 0,
+ 13,13,16,17, 0,17,17,22,22, 0,15,15,16,16, 7, 7,
+ 7,14,14,11,10,10,15,15,12,10,10,15,14, 0,22, 0,
+ 18,18, 0, 0,21,17,18,11,10,10,15,15,14,12,12,17,
+ 17,14,11,11,15,15, 0,22,20,18,18, 0, 0,20,18,17,
+ 12,10,10,16,16,17,14,14,19,18,14,11,11,15,15, 0,
+ 21,22,19,19, 0,21,22,18,18, 0,22, 0,19,21, 0, 0,
+ 0, 0, 0, 0,22,22,18,17, 0, 0, 0,21,20, 0,22,22,
+ 20,19, 0, 0,22,20,20, 0, 0, 0, 0, 0, 0,20,21,17,
+ 17, 0, 0,22,21,21, 0, 0, 0,18,18,10, 9, 9,14,14,
+ 13,10,10,13,13,13,10,11,14,14, 0,13,13,12,12, 0,
+ 15,15,16,16,13,10,10,15,15,15,12,12,14,14,15,10,
+ 10,14,15, 0,14,14,16,15, 0,14,14,15,15,13,10,10,
+ 15,15,18,13,13,15,15,15,10,10,14,15, 0,14,14,16,
+ 16, 0,14,14,15,15, 0,15,15,16,16, 0,22, 0,18,18,
+ 0,12,13,14,14, 0,17,17,22, 0, 0,14,14,14,14, 0,
+ 15,15,16,16, 0,22, 0,18,17, 0,13,13,14,14, 0,19,
+ 18,21,22, 0,15,15,14,14, 0,11,11,13,13, 0,12,12,
+ 16,16, 0,12,12,16,16, 0,15,16,21, 0, 0,16,17, 0,
+ 22, 0,12,12,16,16, 0,14,14,17,18, 0,11,11,16,16,
+ 0,15,15,21,22, 0,16,16, 0, 0, 0,12,12,16,16, 0,
+ 15,15, 0,19, 0,12,12,16,17, 0,16,16,22, 0, 0,16,
+ 16, 0,22, 0,17,17, 0,22, 0, 0, 0, 0, 0, 0,15,15,
+ 20,19, 0,18,18, 0, 0, 0,17,18, 0, 0, 0,17,17, 0,
+ 0, 0, 0, 0, 0, 0, 0,15,15, 0,22, 0,20,18, 0, 0,
+ 0,18,18,22,22, 0,11,11,14,14, 0,12,12,14,14, 0,
+ 12,12,15,15, 0,13,13,14,14, 0,14,14,17,16, 0,12,
+ 12,16,16, 0,14,14,16,16, 0,11,11,15,15, 0,13,13,
+ 16,16, 0,13,13,15,15, 0,12,12,15,15, 0,15,14,16,
+ 16, 0,11,11,15,15, 0,14,14,17,17, 0,13,13,15,15,
+ 0,15,15,17,17, 0, 0, 0,19,18, 0,13,12,15,15, 0,
+ 16,16, 0, 0, 0,14,14,15,15, 0,14,14,16,17, 0,22,
+ 0,18,18, 0,13,13,15,15, 0,17,17, 0, 0, 0,14,14,
+ 15,15, 8, 8, 8,16,16,12,10,10,16,16,13, 9, 9,16,
+ 16, 0,14,14,17,17, 0,14,14,17,16,12,10,10,18,17,
+ 14,11,11,18,18,14, 9,10,16,16, 0,13,13,18,19, 0,
+ 14,13,16,16,12, 9, 9,16,16,17,13,13,17,17,14, 9,
+ 9,15,15, 0,14,14,19,20, 0,13,13,15,15, 0,15,15,
+ 18,19, 0, 0,22,22,22, 0,13,13,17,17, 0,16,16,19,
+ 21, 0,14,14,16,16, 0,14,14,18,18, 0, 0, 0, 0, 0,
+ 0,13,13,16,16, 0,18,18, 0, 0, 0,15,15,16,16, 8,
+ 7, 7,14,14,12,10,10,15,15,13,10,10,15,14, 0,22,
+ 0,18,18, 0,22, 0,18,18,12,10,10,16,15,15,12,12,
+ 17,17,14,11,11,15,15, 0,20,21,19,18, 0, 0, 0,17,
+ 18,13,11,11,15,15,16,13,13,18,18,15,11,11,14,14,
+ 0,22,21,19,19, 0,21,22,18,18, 0,22,22,20,18, 0,
+ 0, 0, 0, 0, 0,22,19,17,17, 0, 0, 0,22,21, 0, 0,
+ 22,19,17, 0, 0,22,19,19, 0, 0, 0, 0, 0, 0,22,21,
+ 18,17, 0, 0, 0,22, 0, 0, 0, 0,19,19, 0,10,10,14,
+ 14, 0,11,11,15,14, 0,11,11,15,15, 0,14,14,15,14,
+ 0,15,15,16,16, 0,11,11,16,16, 0,13,13,16,16, 0,
+ 11,11,15,15, 0,14,14,17,16, 0,14,14,15,15, 0,11,
+ 11,16,16, 0,14,13,15,15, 0,11,11,15,15, 0,15,15,
+ 17,17, 0,14,14,15,14, 0,16,16,17,17, 0, 0,22,18,
+ 18, 0,13,13,15,15, 0,17,17,22, 0, 0,15,15,15,14,
+ 0,15,16,16,17, 0, 0,22,18,19, 0,13,13,15,15, 0,
+ 20,18,21, 0, 0,15,15,14,14, 0,11,11,13,13, 0,12,
+ 12,16,16, 0,12,12,16,15, 0,15,16,22,22, 0,17,17,
+ 0, 0, 0,12,12,16,16, 0,14,14,18,18, 0,11,11,16,
+ 16, 0,15,16,22,20, 0,16,16, 0,22, 0,12,12,16,16,
+ 0,15,15,18,20, 0,11,11,16,16, 0,15,15, 0, 0, 0,
+ 16,16, 0, 0, 0,17,17,22, 0, 0, 0, 0, 0, 0, 0,15,
+ 15, 0,21, 0,18,18, 0, 0, 0,17,16, 0, 0, 0,17,17,
+ 22,22, 0, 0, 0, 0, 0, 0,15,15,21, 0, 0,20,22, 0,
+ 0, 0,18,18, 0, 0, 0,12,12,15,15, 0,12,12,15,15,
+ 0,12,12,16,16, 0,13,13,15,15, 0,15,15,17,17, 0,
+ 13,12,16,16, 0,14,14,16,16, 0,12,11,16,16, 0,14,
+ 14,17,17, 0,14,14,16,16, 0,12,12,16,16, 0,15,15,
+ 17,16, 0,11,11,15,16, 0,14,14,17,17, 0,14,14,16,
+ 16, 0,15,15,18,18, 0, 0, 0,22,19, 0,13,13,15,16,
+ 0,16,17, 0, 0, 0,14,14,16,16, 0,15,15,18,17, 0,
+ 0, 0,20,20, 0,13,13,16,15, 0,17,17,22,22, 0,14,
+ 14,15,15, 0,11,11,16,16, 0,13,13,16,17, 0,13,13,
+ 17,18, 0,16,16,17,17, 0,17,17,18,18, 0,12,12,17,
+ 17, 0,16,15,18,18, 0,12,12,16,16, 0,16,16,18,18,
+ 0,15,15,17,17, 0,12,12,17,17, 0,16,16,19,18, 0,
+ 12,12,16,17, 0,16,16,19,19, 0,15,16,16,17, 0,16,
+ 16,19,17, 0, 0, 0,20,22, 0,13,13,16,16, 0,19,18,
+ 21, 0, 0,15,15,16,16, 0,16,16,18,18, 0, 0, 0,22,
+ 21, 0,14,14,16,16, 0,21,19,21,22, 0,16,16,16,16,
+ 0, 9, 9,14,14, 0,13,13,15,15, 0,14,14,15,15, 0,
+ 0,20,18,19, 0, 0,22,18,18, 0,12,12,15,15, 0,15,
+ 15,17,18, 0,14,13,14,14, 0,20, 0,18,18, 0,21, 0,
+ 18,17, 0,13,13,15,16, 0,17,17,18,18, 0,14,14,15,
+ 15, 0,22,22,20,19, 0,20,21,18,18, 0,20,22,19,19,
+ 0, 0, 0, 0, 0, 0,20,20,17,17, 0, 0,22,22,21, 0,
+ 22, 0,18,18, 0,20,22,19,19, 0, 0, 0, 0, 0, 0,21,
+ 21,17,18, 0, 0, 0,21,20, 0, 0,22,19,18, 0,18,18,
+ 15,15, 0,22,21,17,16, 0, 0,22,17,17, 0,20,22,18,
+ 18, 0, 0,22,20,20, 0,21,19,16,16, 0,21,21,18,18,
+ 0,19,19,17,17, 0, 0,22,19,19, 0,22,20,17,17, 0,
+ 21,19,16,16, 0,22,22,19,18, 0,19,20,16,16, 0,22,
+ 21,19,21, 0,21,22,17,18, 0,21,20,18,18, 0, 0, 0,
+ 19,20, 0,20,19,16,16, 0,22,22, 0, 0, 0,21,21,17,
+ 16, 0,22,20,19,18, 0, 0, 0,20,20, 0,20,19,16,16,
+ 0, 0, 0, 0, 0, 0,21,22,17,17, 0,11,11,13,13, 0,
+ 13,13,15,16, 0,13,13,16,16, 0,17,18,21, 0, 0,17,
+ 18, 0, 0, 0,12,12,15,16, 0,15,15,19,18, 0,12,12,
+ 16,16, 0,17,17,22, 0, 0,17,17, 0,22, 0,12,12,17,
+ 16, 0,16,16,19,20, 0,12,12,16,16, 0,17,17, 0, 0,
+ 0,17,17, 0,21, 0,17,16,22, 0, 0, 0, 0, 0, 0, 0,
+ 15,15,20,22, 0,20,18, 0, 0, 0,18,18, 0, 0, 0,17,
+ 17,21, 0, 0, 0, 0, 0, 0, 0,15,15,21,22, 0,19,20,
+ 22, 0, 0,19,18, 0, 0, 0,14,14,18,18, 0,16,16,22,
+ 20, 0,16,16,22,19, 0,17,17,20,22, 0,19,19, 0, 0,
+ 0,15,15,20, 0, 0,18,21, 0,20, 0,15,15,21,20, 0,
+ 18,17, 0, 0, 0,17,17, 0,22, 0,15,15,19,19, 0,19,
+ 18, 0, 0, 0,15,15,20, 0, 0,18,18,22,22, 0,17,17,
+ 0,20, 0,18,18, 0, 0, 0, 0,22, 0, 0, 0,15,15,19,
+ 20, 0,20,19, 0, 0, 0,17,17,20,21, 0,17,18,20,22,
+ 0, 0, 0, 0,22, 0,15,15,20,20, 0,22,20, 0, 0, 0,
+ 17,18,20, 0, 0,12,12,17,16, 0,14,14,17,17, 0,13,
+ 13,17,17, 0,16,16,18,18, 0,17,16,17,17, 0,13,13,
+ 17,17, 0,15,16,18,18, 0,13,13,16,16, 0,16,16,18,
+ 18, 0,16,16,17,16, 0,13,13,16,16, 0,17,17,18,17,
+ 0,12,12,15,16, 0,17,17,19,19, 0,16,16,16,16, 0,
+ 16,17,19,18, 0, 0, 0,21,22, 0,14,14,16,16, 0,18,
+ 18, 0,22, 0,16,16,16,16, 0,16,16,18,17, 0, 0, 0,
+ 21,20, 0,14,14,16,16, 0,21,22,22, 0, 0,16,16,16,
+ 16, 0, 9, 9,14,13, 0,13,14,15,16, 0,14,13,15,14,
+ 0,22, 0,18,18, 0,21, 0,17,18, 0,13,13,15,15, 0,
+ 15,16,18,17, 0,14,14,15,14, 0,20,22,18,18, 0,22,
+ 21,17,17, 0,13,13,15,15, 0,17,17,19,19, 0,14,14,
+ 14,14, 0, 0,22,18,18, 0, 0,22,17,17, 0, 0,22,19,
+ 20, 0, 0, 0, 0, 0, 0,21,20,17,16, 0, 0, 0,21,22,
+ 0, 0, 0,18,19, 0, 0, 0,18,18, 0, 0, 0, 0, 0, 0,
+ 22, 0,17,17, 0, 0, 0,20,22, 0, 0, 0,18,19, 0,18,
+ 19,16,16, 0,22,20,17,17, 0,22,22,17,18, 0,22,22,
+ 18,17, 0, 0,22,18,19, 0,20,20,17,18, 0, 0,22,19,
+ 18, 0,22,22,17,17, 0,22, 0,19,19, 0, 0,22,18,18,
+ 0,20,22,17,17, 0, 0,22,18,18, 0,19,20,17,17, 0,
+ 22, 0,20,19, 0,22,21,17,17, 0, 0, 0,18,18, 0, 0,
+ 0,22,19, 0,20, 0,17,17, 0,22, 0, 0,22, 0, 0,20,
+ 17,18, 0,22, 0,19,19, 0, 0, 0, 0,19, 0,19,21,17,
+ 17, 0, 0, 0, 0, 0, 0,20,21,17,16, 0,11,11,13,13,
+ 0,13,13,16,16, 0,13,13,15,16, 0,17,17,21,22, 0,
+ 17,18, 0, 0, 0,12,12,16,16, 0,15,15,18,18, 0,13,
+ 13,16,16, 0,17,16,21,21, 0,17,17, 0, 0, 0,13,13,
+ 16,16, 0,16,16,19,18, 0,13,13,16,16, 0,17,17, 0,
+ 22, 0,17,18,20,22, 0,17,18, 0, 0, 0, 0, 0, 0, 0,
+ 0,15,15,20, 0, 0,18,19, 0, 0, 0,17,17, 0, 0, 0,
+ 18,17,22, 0, 0, 0, 0, 0, 0, 0,15,16,21,20, 0,20,
+ 20, 0, 0, 0,18,19, 0, 0, 0,15,15,22,22, 0,17,16,
+ 20,22, 0,17,17,20,22, 0,18,18, 0,21, 0,19,18, 0,
+ 0, 0,16,16,20,20, 0,19,19,22, 0, 0,15,16,21,22,
+ 0,18,19,22, 0, 0,17,18, 0, 0, 0,16,16,22, 0, 0,
+ 19,19, 0,21, 0,15,16,20, 0, 0,18,18, 0,22, 0,18,
+ 17, 0, 0, 0,18,18, 0, 0, 0, 0, 0, 0, 0, 0,16,16,
+ 22,21, 0,20,21, 0, 0, 0,17,18,22, 0, 0,18,18, 0,
+ 0, 0, 0, 0, 0, 0, 0,16,16,20,19, 0,22,21, 0, 0,
+ 0,18,18,22,22,
+};
+
+static const static_codebook _44p2_p5_0 = {
+ 5, 3125,
+ (char *)_vq_lengthlist__44p2_p5_0,
+ 1, -528744448, 1616642048, 3, 0,
+ (long *)_vq_quantlist__44p2_p5_0,
+ 0
+};
+
+static const long _vq_quantlist__44p2_p5_1[] = {
+ 3,
+ 2,
+ 4,
+ 1,
+ 5,
+ 0,
+ 6,
+};
+
+static const char _vq_lengthlist__44p2_p5_1[] = {
+ 2, 3, 3, 3, 3, 3, 3,
+};
+
+static const static_codebook _44p2_p5_1 = {
+ 1, 7,
+ (char *)_vq_lengthlist__44p2_p5_1,
+ 1, -533200896, 1611661312, 3, 0,
+ (long *)_vq_quantlist__44p2_p5_1,
+ 0
+};
+
+static const long _vq_quantlist__44p2_p6_0[] = {
+ 1,
+ 0,
+ 2,
+};
+
+static const char _vq_lengthlist__44p2_p6_0[] = {
+ 1, 7, 7, 7, 8, 8, 7, 8, 8, 7, 9, 9,10,11,11, 9,
+ 8, 8, 7, 8, 9,11,11,11, 9, 8, 8, 6, 7, 7,10,10,
+ 10,10,10,10,10,10,10,14,14,14,12,11,11,10,11,11,
+ 15,14,14,13,11,11, 6, 6, 6, 8, 5, 5, 8, 7, 7, 8,
+ 7, 7,11,10,10, 9, 7, 7, 9, 7, 7,12,10,10,10, 7,
+ 7, 6, 8, 7,12,10,10,12,10,10,11,10,10,15,14,13,
+ 13,10,10,11,10,10,16,14,14,14,10,10, 7, 7, 7,12,
+ 11,11,12,11,11,11,11,11,16,14,14,13,12,12,11,11,
+ 11,17,15,15,14,12,12,10, 9, 9,13,11,11,13,11,11,
+ 12,11,11,16,14,13,14,11,11,12,11,11,17,15,14,14,
+ 11,11, 7, 8, 8,12,11,11,12,10,10,12,10,10,16,13,
+ 14,13,10,10,11,10,10,17,14,14,14,10,10, 7, 7, 7,
+ 12,11,11,12,11,11,12,11,11,15,14,15,14,12,12,12,
+ 11,11,17,15,15,14,12,12,10,10, 9,13,11,11,13,11,
+ 11,13,11,11,16,14,14,14,11,11,13,11,11,16,15,15,
+ 15,11,11,
+};
+
+static const static_codebook _44p2_p6_0 = {
+ 5, 243,
+ (char *)_vq_lengthlist__44p2_p6_0,
+ 1, -527106048, 1620377600, 2, 0,
+ (long *)_vq_quantlist__44p2_p6_0,
+ 0
+};
+
+static const long _vq_quantlist__44p2_p6_1[] = {
+ 1,
+ 0,
+ 2,
+};
+
+static const char _vq_lengthlist__44p2_p6_1[] = {
+ 2, 6, 6, 7, 7, 7, 7, 7, 7, 7, 8, 8, 9, 9, 9, 8,
+ 7, 7, 8, 8, 8, 9, 9, 9, 9, 8, 8, 6, 7, 7, 9, 8,
+ 8, 9, 7, 7, 9, 8, 8,10, 8, 8,10, 8, 8,10, 8, 8,
+ 10, 8, 9,10, 8, 8, 7, 6, 6, 8, 6, 6, 9, 6, 6, 9,
+ 7, 7,10, 8, 8, 9, 6, 6, 9, 7, 7,10, 9, 8, 9, 7,
+ 7, 7, 7, 7,11, 8, 8,11, 9, 9,10, 9, 9,12, 9, 9,
+ 12, 8, 8,11, 9, 9,12, 9, 9,12, 8, 8, 8, 7, 7,10,
+ 9, 9,10, 9, 9,10, 9, 9,11,10,11,11, 9, 9,11, 9,
+ 9,11,11,11,11, 9, 9,10, 8, 8,11, 9, 9,10, 9, 9,
+ 11, 9, 9,11,10,10,11, 9, 9,11, 9, 9,12,10,10,11,
+ 9, 9, 8, 8, 8,11, 9, 9,12, 9, 9,11, 9, 9,12, 9,
+ 9,12, 8, 8,12, 9, 9,12, 9,10,12, 8, 8, 9, 7, 7,
+ 11, 9, 9,11,10,10,11, 9, 9,11,11,11,11, 9, 9,11,
+ 10,10,12,11,11,11, 9,10,10, 9, 9,11, 9, 9,11,10,
+ 10,11,10,10,11,11,11,11, 9, 9,11, 9,10,11,11,11,
+ 11, 9, 9,
+};
+
+static const static_codebook _44p2_p6_1 = {
+ 5, 243,
+ (char *)_vq_lengthlist__44p2_p6_1,
+ 1, -530841600, 1616642048, 2, 0,
+ (long *)_vq_quantlist__44p2_p6_1,
+ 0
+};
+
+static const long _vq_quantlist__44p2_p7_0[] = {
+ 1,
+ 0,
+ 2,
+};
+
+static const char _vq_lengthlist__44p2_p7_0[] = {
+ 1, 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, 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,
+ 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, 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, 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, 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, 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, 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, 9, 9, 9, 9,
+ 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9,
+ 9, 9, 9,
+};
+
+static const static_codebook _44p2_p7_0 = {
+ 5, 243,
+ (char *)_vq_lengthlist__44p2_p7_0,
+ 1, -513979392, 1633504256, 2, 0,
+ (long *)_vq_quantlist__44p2_p7_0,
+ 0
+};
+
+static const long _vq_quantlist__44p2_p7_1[] = {
+ 1,
+ 0,
+ 2,
+};
+
+static const char _vq_lengthlist__44p2_p7_1[] = {
+ 1, 9, 9, 6, 9, 9, 5, 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, 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, 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, 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, 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, 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, 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, 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, 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,
+};
+
+static const static_codebook _44p2_p7_1 = {
+ 5, 243,
+ (char *)_vq_lengthlist__44p2_p7_1,
+ 1, -516716544, 1630767104, 2, 0,
+ (long *)_vq_quantlist__44p2_p7_1,
+ 0
+};
+
+static const long _vq_quantlist__44p2_p7_2[] = {
+ 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 const char _vq_lengthlist__44p2_p7_2[] = {
+ 1, 3, 2, 5, 4, 7, 7, 8, 8, 9, 9,10,10,11,11,12,
+ 12,13,13,14,14,15,15,15,15,
+};
+
+static const static_codebook _44p2_p7_2 = {
+ 1, 25,
+ (char *)_vq_lengthlist__44p2_p7_2,
+ 1, -518864896, 1620639744, 5, 0,
+ (long *)_vq_quantlist__44p2_p7_2,
+ 0
+};
+
+static const long _vq_quantlist__44p2_p7_3[] = {
+ 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 const char _vq_lengthlist__44p2_p7_3[] = {
+ 3, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
+ 5, 5, 5, 5, 5, 5, 5, 5, 5,
+};
+
+static const static_codebook _44p2_p7_3 = {
+ 1, 25,
+ (char *)_vq_lengthlist__44p2_p7_3,
+ 1, -529006592, 1611661312, 5, 0,
+ (long *)_vq_quantlist__44p2_p7_3,
+ 0
+};
+
+static const char _huff_lengthlist__44p2_short[] = {
+ 4, 4,12, 9, 8,12,15,17, 4, 2,11, 6, 5, 9,13,15,
+ 11, 7, 8, 7, 7,10,14,13, 8, 5, 7, 5, 5, 8,12,12,
+ 8, 4, 7, 4, 3, 6,11,12,11, 8, 9, 7, 6, 8,11,12,
+ 15,13,14,12, 9, 7,10,13,16,12,17,12, 7, 5, 8,11,
+};
+
+static const static_codebook _huff_book__44p2_short = {
+ 2, 64,
+ (char *)_huff_lengthlist__44p2_short,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
+static const long _vq_quantlist__44p3_l0_0[] = {
+ 6,
+ 5,
+ 7,
+ 4,
+ 8,
+ 3,
+ 9,
+ 2,
+ 10,
+ 1,
+ 11,
+ 0,
+ 12,
+};
+
+static const char _vq_lengthlist__44p3_l0_0[] = {
+ 1, 4, 4, 8, 8, 8, 8, 9, 9,10,10,10,10, 4, 6, 5,
+ 8, 7, 9, 9, 9, 9,10, 9,11, 9, 4, 5, 6, 7, 8, 9,
+ 9, 9, 9, 9,10, 9,10, 8, 9, 8, 9, 8,10, 9,11, 9,
+ 12,10,12,10, 8, 8, 9, 8, 9, 9,10, 9,11,10,12,10,
+ 12, 9,10,10,11,10,12,11,12,11,12,12,12,12, 9,10,
+ 10,11,11,11,11,11,12,12,12,12,12,10,11,11,12,12,
+ 12,12,12,12,12,12,12,12,10,11,11,12,12,12,12,12,
+ 12,12,12,12,12,11,12,12,12,12,12,13,12,13,12,13,
+ 12,12,11,12,12,12,12,12,12,13,12,12,12,12,12,12,
+ 12,12,13,13,12,13,12,13,12,13,12,12,12,13,12,13,
+ 12,13,12,13,12,13,12,12,12,
+};
+
+static const static_codebook _44p3_l0_0 = {
+ 2, 169,
+ (char *)_vq_lengthlist__44p3_l0_0,
+ 1, -526516224, 1616117760, 4, 0,
+ (long *)_vq_quantlist__44p3_l0_0,
+ 0
+};
+
+static const long _vq_quantlist__44p3_l0_1[] = {
+ 2,
+ 1,
+ 3,
+ 0,
+ 4,
+};
+
+static const char _vq_lengthlist__44p3_l0_1[] = {
+ 3, 4, 4, 5, 5, 4, 4, 5, 5, 5, 4, 5, 4, 5, 5, 5,
+ 5, 6, 5, 6, 5, 6, 5, 6, 5,
+};
+
+static const static_codebook _44p3_l0_1 = {
+ 2, 25,
+ (char *)_vq_lengthlist__44p3_l0_1,
+ 1, -533725184, 1611661312, 3, 0,
+ (long *)_vq_quantlist__44p3_l0_1,
+ 0
+};
+
+static const long _vq_quantlist__44p3_l1_0[] = {
+ 1,
+ 0,
+ 2,
+};
+
+static const char _vq_lengthlist__44p3_l1_0[] = {
+ 1, 4, 4, 4, 4, 4, 4, 4, 4,
+};
+
+static const static_codebook _44p3_l1_0 = {
+ 2, 9,
+ (char *)_vq_lengthlist__44p3_l1_0,
+ 1, -516716544, 1630767104, 2, 0,
+ (long *)_vq_quantlist__44p3_l1_0,
+ 0
+};
+
+static const char _huff_lengthlist__44p3_lfe[] = {
+ 1, 3, 2, 3,
+};
+
+static const static_codebook _huff_book__44p3_lfe = {
+ 2, 4,
+ (char *)_huff_lengthlist__44p3_lfe,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
+static const char _huff_lengthlist__44p3_long[] = {
+ 3, 4,13, 9, 9,12,15,17, 4, 2,18, 5, 7,10,14,18,
+ 11, 8, 6, 5, 6, 8,11,14, 8, 5, 5, 3, 5, 8,11,13,
+ 9, 6, 7, 5, 5, 7, 9,10,11,10, 9, 8, 6, 6, 8,10,
+ 14,14,11,11, 9, 8, 9,10,17,17,14,13,10, 9,10,10,
+};
+
+static const static_codebook _huff_book__44p3_long = {
+ 2, 64,
+ (char *)_huff_lengthlist__44p3_long,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
+static const long _vq_quantlist__44p3_p1_0[] = {
+ 1,
+ 0,
+ 2,
+};
+
+static const char _vq_lengthlist__44p3_p1_0[] = {
+ 1, 2, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0,
+};
+
+static const static_codebook _44p3_p1_0 = {
+ 5, 243,
+ (char *)_vq_lengthlist__44p3_p1_0,
+ 1, -535822336, 1611661312, 2, 0,
+ (long *)_vq_quantlist__44p3_p1_0,
+ 0
+};
+
+static const long _vq_quantlist__44p3_p2_0[] = {
+ 2,
+ 1,
+ 3,
+ 0,
+ 4,
+};
+
+static const char _vq_lengthlist__44p3_p2_0[] = {
+ 3, 7, 7, 0, 0, 0, 8, 8, 0, 0, 0, 8, 8, 0, 0, 0,
+ 11,11, 0, 0, 0, 0, 0, 0, 0, 0,10, 9, 0, 0, 0, 0,
+ 0, 0, 0, 0, 9, 9, 0, 0, 0,10,11, 0, 0, 0, 0, 0,
+ 0, 0, 0, 9, 9, 0, 0, 0, 0, 0, 0, 0, 0, 9, 9, 0,
+ 0, 0,10,10, 0, 0, 0, 0, 0, 0, 0, 0,12,12, 0, 0,
+ 0, 0, 0, 0, 0, 0,11,11, 0, 0, 0,12,12, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 7, 7,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 7, 7, 0, 0, 0,
+ 5, 5, 0, 0, 0, 7, 7, 0, 0, 0, 9, 9, 0, 0, 0, 0,
+ 0, 0, 0, 0, 7, 7, 0, 0, 0, 0, 0, 0, 0, 0, 5, 5,
+ 0, 0, 0, 8, 8, 0, 0, 0, 0, 0, 0, 0, 0, 7, 7, 0,
+ 0, 0, 0, 0, 0, 0, 0, 5, 6, 0, 0, 0, 7, 7, 0, 0,
+ 0, 0, 0, 0, 0, 0, 9, 9, 0, 0, 0, 0, 0, 0, 0, 0,
+ 8, 8, 0, 0, 0, 9, 9, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,11,11, 0, 0, 0, 9, 9, 0,
+ 0, 0,10,10, 0, 0, 0,10,10, 0, 0, 0, 0, 0, 0, 0,
+ 0,10,10, 0, 0, 0, 0, 0, 0, 0, 0, 9, 9, 0, 0, 0,
+ 10,10, 0, 0, 0, 0, 0, 0, 0, 0,10,10, 0, 0, 0, 0,
+ 0, 0, 0, 0, 9, 9, 0, 0, 0,10,10, 0, 0, 0, 0, 0,
+ 0, 0, 0,11,12, 0, 0, 0, 0, 0, 0, 0, 0,11,11, 0,
+ 0, 0,12,12, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 9, 9, 0, 0, 0, 7, 7, 0, 0, 0, 8, 8, 0, 0,
+ 0,10,10, 0, 0, 0, 0, 0, 0, 0, 0, 8, 8, 0, 0, 0,
+ 0, 0, 0, 0, 0, 7, 7, 0, 0, 0, 9, 9, 0, 0, 0, 0,
+ 0, 0, 0, 0, 9, 9, 0, 0, 0, 0, 0, 0, 0, 0, 8, 8,
+ 0, 0, 0, 9, 9, 0, 0, 0, 0, 0, 0, 0, 0,10,10, 0,
+ 0, 0, 0, 0, 0, 0, 0, 9, 9, 0, 0, 0,11,11, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 5,
+ 5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 9, 9, 0, 0, 0, 7, 7,
+ 0, 0, 0, 9, 9, 0, 0, 0,10,10, 0, 0, 0, 0, 0, 0,
+ 0, 0, 9, 9, 0, 0, 0, 0, 0, 0, 0, 0, 8, 8, 0, 0,
+ 0, 9, 9, 0, 0, 0, 0, 0, 0, 0, 0, 9, 9, 0, 0, 0,
+ 0, 0, 0, 0, 0, 7, 7, 0, 0, 0, 9, 9, 0, 0, 0, 0,
+ 0, 0, 0, 0,11,11, 0, 0, 0, 0, 0, 0, 0, 0, 9, 9,
+ 0, 0, 0,10,10, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 9, 9, 0, 0, 0, 7, 7, 0, 0, 0, 8, 8, 0,
+ 0, 0,10,10, 0, 0, 0, 0, 0, 0, 0, 0, 9, 9, 0, 0,
+ 0, 0, 0, 0, 0, 0, 8, 7, 0, 0, 0, 9, 9, 0, 0, 0,
+ 0, 0, 0, 0, 0, 8, 8, 0, 0, 0, 0, 0, 0, 0, 0, 7,
+ 7, 0, 0, 0, 9, 9, 0, 0, 0, 0, 0, 0, 0, 0,11,11,
+ 0, 0, 0, 0, 0, 0, 0, 0, 9, 9, 0, 0, 0,10,10, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 5, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 9, 9, 0, 0, 0, 7,
+ 7, 0, 0, 0, 9, 9, 0, 0, 0,10,10, 0, 0, 0, 0, 0,
+ 0, 0, 0, 9, 9, 0, 0, 0, 0, 0, 0, 0, 0, 7, 7, 0,
+ 0, 0, 9, 9, 0, 0, 0, 0, 0, 0, 0, 0, 9, 9, 0, 0,
+ 0, 0, 0, 0, 0, 0, 8, 8, 0, 0, 0, 9, 9, 0, 0, 0,
+ 0, 0, 0, 0, 0,10,10, 0, 0, 0, 0, 0, 0, 0, 0, 9,
+ 9, 0, 0, 0,11,11, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0,10,10, 0, 0, 0, 9, 9, 0, 0, 0,10,10,
+ 0, 0, 0,11,12, 0, 0, 0, 0, 0, 0, 0, 0,10,10, 0,
+ 0, 0, 0, 0, 0, 0, 0, 8, 8, 0, 0, 0,11,11, 0, 0,
+ 0, 0, 0, 0, 0, 0,10,10, 0, 0, 0, 0, 0, 0, 0, 0,
+ 9, 9, 0, 0, 0,10,10, 0, 0, 0, 0, 0, 0, 0, 0,11,
+ 11, 0, 0, 0, 0, 0, 0, 0, 0, 9, 9, 0, 0, 0,12,12,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 7, 7, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,10,10, 0, 0, 0,
+ 9, 9, 0, 0, 0,10,10, 0, 0, 0,12,12, 0, 0, 0, 0,
+ 0, 0, 0, 0,10,10, 0, 0, 0, 0, 0, 0, 0, 0, 9, 9,
+ 0, 0, 0,11,11, 0, 0, 0, 0, 0, 0, 0, 0,10,10, 0,
+ 0, 0, 0, 0, 0, 0, 0, 9, 9, 0, 0, 0,11,11, 0, 0,
+ 0, 0, 0, 0, 0, 0,12,12, 0, 0, 0, 0, 0, 0, 0, 0,
+ 10,10, 0, 0, 0,11,11, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0,
+};
+
+static const static_codebook _44p3_p2_0 = {
+ 5, 3125,
+ (char *)_vq_lengthlist__44p3_p2_0,
+ 1, -533725184, 1611661312, 3, 0,
+ (long *)_vq_quantlist__44p3_p2_0,
+ 0
+};
+
+static const long _vq_quantlist__44p3_p3_0[] = {
+ 1,
+ 0,
+ 2,
+};
+
+static const char _vq_lengthlist__44p3_p3_0[] = {
+ 1, 5, 5, 5, 8, 8, 0, 8, 8, 6, 9, 9, 8,10,10, 0,
+ 8, 8, 0, 9, 9, 0,12,12, 0, 8, 8, 4, 7, 7, 6,10,
+ 10, 0,12,12, 7,11,11, 9,12,12, 0,12,12, 0,13,13,
+ 0,15,15, 0,12,12, 0, 7, 7, 0, 7, 7, 0, 8, 8, 0,
+ 8, 8, 0,10,10, 0, 7, 7, 0, 8, 8, 0,11,11, 0, 7,
+ 7, 5, 7, 7, 9, 9, 9, 0,11,10, 9, 9, 9,11,12,12,
+ 0,10,10, 0,11,11, 0,13,13, 0,11,11, 6, 7, 7, 9,
+ 10,10, 0,12,12,10,11,11,11,12,12, 0,12,12, 0,13,
+ 13, 0,15,15, 0,12,12, 0,10,10, 0,11,11, 0,11,11,
+ 0,12,12, 0,13,13, 0,11,11, 0,12,12, 0,15,15, 0,
+ 11,11, 0, 8, 8, 0,10,10, 0,12,12, 0,11,11, 0,12,
+ 12, 0,12,12, 0,12,12, 0,15,15, 0,11,11, 0, 7, 7,
+ 0,10,10, 0,12,12, 0,10,10, 0,12,13, 0,12,12, 0,
+ 13,13, 0,14,14, 0,12,12, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0,
+};
+
+static const static_codebook _44p3_p3_0 = {
+ 5, 243,
+ (char *)_vq_lengthlist__44p3_p3_0,
+ 1, -533200896, 1614282752, 2, 0,
+ (long *)_vq_quantlist__44p3_p3_0,
+ 0
+};
+
+static const long _vq_quantlist__44p3_p3_1[] = {
+ 1,
+ 0,
+ 2,
+};
+
+static const char _vq_lengthlist__44p3_p3_1[] = {
+ 3, 4, 4, 0, 8, 8, 0, 8, 8, 0, 9, 9, 0,10,10, 0,
+ 8, 8, 0, 9, 9, 0,10,10, 0, 8, 8, 0, 7, 7, 0, 8,
+ 8, 0, 8, 8, 0, 8, 8, 0, 8, 8, 0, 8, 8, 0, 8, 8,
+ 0, 8, 8, 0, 8, 8, 0, 7, 7, 0, 6, 6, 0, 7, 7, 0,
+ 7, 7, 0,10,10, 0, 6, 6, 0, 7, 7, 0,10,10, 0, 6,
+ 5, 0, 8, 8, 0, 7, 7, 0, 8, 8, 0, 8, 8, 0, 9, 9,
+ 0, 7, 7, 0, 8, 8, 0, 9, 9, 0, 7, 7, 0, 6, 6, 0,
+ 9,10, 0,10,10, 0,10,10, 0,11,11, 0, 9, 9, 0,10,
+ 10, 0,11,11, 0, 9, 9, 0, 8, 8, 0, 8, 8, 0, 8, 8,
+ 0, 9, 9, 0, 9, 9, 0, 8, 8, 0, 8, 8, 0, 9, 9, 0,
+ 7, 7, 0, 8, 8, 0, 7, 7, 0, 7, 7, 0, 8, 8, 0, 9,
+ 9, 0, 7, 7, 0, 7, 7, 0, 9, 9, 0, 6, 6, 0, 6, 6,
+ 0,10,10, 0,10,10, 0,10,10, 0,12,12, 0, 9, 9, 0,
+ 10,10, 0,12,12, 0, 9, 9, 0, 8, 8, 0, 7, 7, 0, 8,
+ 8, 0, 8, 8, 0, 9, 9, 0, 7, 7, 0, 8, 8, 0, 9, 9,
+ 0, 7, 7,
+};
+
+static const static_codebook _44p3_p3_1 = {
+ 5, 243,
+ (char *)_vq_lengthlist__44p3_p3_1,
+ 1, -535822336, 1611661312, 2, 0,
+ (long *)_vq_quantlist__44p3_p3_1,
+ 0
+};
+
+static const long _vq_quantlist__44p3_p4_0[] = {
+ 1,
+ 0,
+ 2,
+};
+
+static const char _vq_lengthlist__44p3_p4_0[] = {
+ 1, 6, 6, 7, 7, 7, 7, 7, 7, 7, 8, 8,10,11,11, 9,
+ 8, 8, 8, 8, 8,11,11,11,10, 8, 8, 5, 7, 7, 9,11,
+ 11,10,11,11,10,11,11,12,13,14,11,12,12,10,11,11,
+ 13,14,14,12,12,12, 5, 6, 6, 8, 6, 6, 8, 7, 7, 8,
+ 7, 7,11,10,10,10, 7, 7, 9, 7, 7,12,11,11,11, 7,
+ 7, 7, 7, 7,11,10,10,12,10,10,11,10,10,15,13,13,
+ 13,10,10,12,11,11,15,13,13,14,11,11, 7, 7, 7,11,
+ 11,11,12,11,11,12,11,11,14,14,14,14,12,12,12,12,
+ 12,16,15,15,14,12,12, 0,10,10, 0,11,11, 0,11,12,
+ 0,11,11, 0,14,14, 0,11,11, 0,12,12, 0,15,15, 0,
+ 11,11, 8, 8, 8,12,10,10,12,10,10,13,11,11,15,13,
+ 13,14,11,11,12,10,10,16,14,14,14,10,10, 8, 7, 7,
+ 12,11,11,13,11,11,12,11,11,15,14,14,14,12,12,13,
+ 12,12,15,14,14,15,12,12, 0,11,11, 0,12,12, 0,12,
+ 12, 0,12,12, 0,15,15, 0,12,12, 0,13,13, 0,14,15,
+ 0,12,12,
+};
+
+static const static_codebook _44p3_p4_0 = {
+ 5, 243,
+ (char *)_vq_lengthlist__44p3_p4_0,
+ 1, -531365888, 1616117760, 2, 0,
+ (long *)_vq_quantlist__44p3_p4_0,
+ 0
+};
+
+static const long _vq_quantlist__44p3_p4_1[] = {
+ 2,
+ 1,
+ 3,
+ 0,
+ 4,
+};
+
+static const char _vq_lengthlist__44p3_p4_1[] = {
+ 3, 4, 5, 8, 8,12,10,10,12,12,12,10,10,12,12,13,
+ 11,11,12,12,13,12,12,12,12,13,10,10,13,13,13,13,
+ 13,13,13,13,10,10,13,13,13,11,11,13,13,14,13,13,
+ 12,12,13,10,10,13,13,13,13,13,13,13,13,10,10,12,
+ 12,13,11,11,13,13,13,13,13,12,12,13,12,12,13,13,
+ 13,13,13,13,13,14,11,11,12,12,14,12,12,13,12,14,
+ 14,14,12,12,13,14,14,13,13,14,13,13,13,13,14,14,
+ 14,12,12,14,13,13,13,13,14,14,14,12,12,12, 8, 8,
+ 11,11,12,12,12,11,11,12,11,11,10,10,13,12,12,10,
+ 10,13,12,12,10,10,13,12,12,12,12,14,12,12,12,12,
+ 13,13,13,11,11,14,12,12,11,11,14,12,12,12,12,14,
+ 12,12,12,12,13,12,12,12,12,13,13,13,11,11,14,12,
+ 12,11,11,14,12,12,12,12,14,13,13,12,12,14,12,12,
+ 12,11,14,13,13,11,11,14,13,12,11,11,14,13,13,11,
+ 11,14,13,13,12,12,14,12,12,12,12,15,13,13,12,12,
+ 14,12,12,11,11,14,13,13,11,11,12, 9, 9,10,10,12,
+ 7, 7,11,11,12, 9, 9,12,12,13,10,10,10,10,14,14,
+ 14,11,11,13, 9, 9,12,12,14,14,14,12,12,13, 8, 8,
+ 11,11,14, 9, 9,12,12,14,14,14,11,11,13, 9, 9,12,
+ 12,14,14,14,12,12,14, 8, 8,11,11,14, 9, 9,12,12,
+ 14,14,14,11,11,14,10,10,12,12,14,14,14,13,13,14,
+ 9, 9,11,11,14,10,10,12,12,14,14,14,11,11,14,14,
+ 15,12,12,15,14,14,14,14,15,14,14,11,11,14,14,14,
+ 12,12,14,14,14,11,11,14,11,11,10,10,14,10,10,10,
+ 10,14,10,10,10,10,15,11,11, 9, 9,14,12,12, 9, 9,
+ 15,11,11,11,11,15,13,13,11,11,15,10,10,10,10,15,
+ 11,11,10,10,15,13,13,11,11,15,11,11,11,11,15,13,
+ 13,11,11,15,10,10,10,10,15,11,11,10,10,15,13,13,
+ 11,11,15,12,12,11,11,15,13,13,11,11,15,11,11,10,
+ 10,15,12,12,10,10,15,13,13,10,10,15,14,14,11,11,
+ 15,13,13,11,11,15,14,14,10,11,15,13,13,10,10,15,
+ 13,14,10,10,14,13,13,10,10,14,13,13,10,10,14,13,
+ 13,10,10,14,13,13, 9, 9,14,14,14, 9, 9,15,14,14,
+ 11,11,15,14,14,10,10,15,14,14,10,10,15,14,14,11,
+ 11,15,14,14,10,10,15,14,14,11,11,15,14,14,10,10,
+ 14,14,14,10,10,15,14,14,10,10,14,14,14,10,10,15,
+ 14,14,11,11,15,14,14,11,11,14,14,14,10,10,15,14,
+ 14,10,10,14,14,14, 9, 9,15,15,15,11,11,15,14,14,
+ 12,12,15,15,14,10,10,15,14,14,10,10,14,15,15, 9,
+ 9,14,10,10,12,12,17, 9, 9,12,12,17,10,10,13,13,
+ 17,11,11,12,12,18,14,14,12,12,17,10,10,13,13,17,
+ 14,14,12,12,17, 9, 9,12,12,17,11,11,12,12,17,14,
+ 14,12,12,18,10,10,13,13,18,14,14,13,13,18, 9, 9,
+ 12,12,18,10,10,13,13,18,14,14,12,12,18,11,11,13,
+ 13,18,14,14,13,13,18,10,10,12,12,17,11,11,12,12,
+ 17,14,14,12,12,18,15,15,13,13,18,14,14,14,14,18,
+ 15,15,12,12,18,14,14,12,12,18,15,15,12,12,13, 7,
+ 7,11,11,14,15,15,11,11,14,15,15,12,12,14,15,15,
+ 11,11,15,15,15,11,11,14,15,15,12,12,14,15,15,12,
+ 12,14,15,15,11,11,14,15,15,11,11,15,15,15,12,12,
+ 14,15,15,12,12,14,15,15,12,12,14,15,15,11,11,14,
+ 15,15,11,11,15,15,15,12,12,15,15,15,12,12,14,15,
+ 15,12,12,14,15,14,12,12,14,15,15,11,11,15,14,14,
+ 12,12,15,15,15,12,12,15,16,16,12,12,15,15,15,12,
+ 12,15,15,15,12,12,15,15,15,12,12,13,13,13,11,10,
+ 14,14,15,11,11,14,14,14,12,12,15,14,14,10,10,15,
+ 15,15,11,11,14,15,15,12,12,14,14,14,11,11,14,15,
+ 15,11,11,14,15,15,12,12,15,15,15,11,11,14,15,15,
+ 12,12,14,14,14,12,12,14,15,15,11,11,14,15,15,12,
+ 12,15,15,15,11,11,15,15,15,12,12,15,14,14,12,12,
+ 14,15,15,11,11,14,15,15,11,11,15,15,15,10,10,15,
+ 15,16,12,12,15,15,15,14,14,15,15,15,11,11,15,15,
+ 15,12,12,15,15,15,11,11,14,11,11,10,10,15, 9, 9,
+ 12,12,15,10,10,12,12,15,11,11,11,11,15,14,14,12,
+ 12,15,10,10,13,13,15,14,14,12,12,15, 9, 9,12,12,
+ 15,10,10,13,13,15,13,13,12,11,15,10,10,12,12,15,
+ 14,14,12,12,15, 9, 9,11,11,15,11,11,12,12,15,13,
+ 13,11,11,15,11,11,13,13,15,13,14,13,14,15,11,11,
+ 11,11,15,11,11,12,12,15,14,14,11,11,15,14,14,13,
+ 13,15,14,14,20,20,15,14,14,12,12,15,14,14,12,12,
+ 15,14,14,11,11,14,13,13,10,10,14,13,13,12,12,14,
+ 14,13,12,12,15,14,14,12,12,15,14,14,11,11,15,14,
+ 14,12,12,15,14,14,13,13,15,14,14,12,11,15,14,14,
+ 11,11,15,14,14,13,13,15,14,14,12,12,15,14,14,13,
+ 13,15,14,14,12,11,15,14,14,12,12,15,14,14,13,13,
+ 15,14,14,13,13,15,14,14,12,12,15,14,14,12,12,15,
+ 14,14,12,12,15,15,15,13,13,15,15,15,13,13,15,14,
+ 14,13,13,15,15,15,13,13,15,14,15,12,12,15,15,15,
+ 13,13,14,10,10,12,13,17, 9, 9,12,12,17,10,10,13,
+ 13,17,11,11,12,12,18,14,14,12,12,18,10,10,13,13,
+ 18,14,14,12,12,17, 9, 9,12,12,18,10,11,13,13,18,
+ 14,14,12,12,17,10,10,12,12,17,14,14,12,12,17, 9,
+ 9,12,12,17,11,11,12,12,17,14,14,12,12,18,11,11,
+ 12,12,18,14,14,13,13,18,11,11,12,12,18,11,11,12,
+ 12,18,14,14,12,12,18,15,15,12,12,18,14,14,13,13,
+ 18,15,15,12,12,17,14,14,12,12,17,15,15,12,12,13,
+ 7, 7,11,11,14,15,15,11,11,14,15,15,11,11,14,15,
+ 14,12,12,15,15,15,12,11,14,15,15,12,12,14,15,15,
+ 12,12,14,15,15,11,11,14,15,15,11,11,15,15,15,13,
+ 13,14,15,15,11,11,14,15,15,13,12,14,15,15,11,11,
+ 14,15,15,11,11,15,15,15,13,13,14,15,15,12,12,15,
+ 15,15,12,12,15,15,15,11,11,15,15,15,11,11,15,15,
+ 15,12,12,15,15,15,13,13,15,16,16,12,12,15,15,15,
+ 12,13,15,15,15,12,12,15,15,15,12,12,13,13,13,11,
+ 11,14,14,14,11,11,14,14,14,12,12,14,14,14,10,10,
+ 15,14,14,11,11,14,15,15,12,12,14,14,14,12,12,14,
+ 15,15,11,11,14,15,14,12,12,15,14,14,11,11,14,15,
+ 15,12,12,14,14,14,11,11,14,15,15,11,11,14,14,14,
+ 12,12,15,15,14,11,11,15,15,15,12,12,15,14,14,12,
+ 12,14,15,15,11,11,14,15,14,11,11,15,15,15,10,10,
+ 15,15,15,12,12,15,14,14,14,13,15,15,15,11,11,15,
+ 15,15,11,11,15,15,15,10,10,14,11,11,10,10,15, 9,
+ 9,12,12,15,10,10,12,12,15,11,11,11,11,15,14,14,
+ 12,12,15,10,10,13,13,15,13,13,12,12,15, 9, 9,12,
+ 12,15,11,11,13,13,15,14,14,12,12,15,10,10,13,13,
+ 15,13,14,12,12,15, 9, 9,12,12,15,10,10,13,13,15,
+ 13,13,11,11,15,11,11,13,13,15,14,14,13,13,15,10,
+ 10,11,11,15,11,11,12,12,15,14,14,11,11,15,14,14,
+ 13,13,15,14,14,21,20,15,14,14,11,11,15,14,14,12,
+ 12,15,14,14,11,11,14,13,13,10,10,14,13,13,11,11,
+ 15,14,14,12,12,15,14,14,12,12,14,14,14,12,12,15,
+ 14,14,12,12,15,14,14,13,13,14,14,14,11,11,15,14,
+ 14,11,11,15,14,14,13,13,15,14,14,12,12,15,14,14,
+ 13,13,14,14,14,11,11,15,14,14,11,11,14,14,14,13,
+ 13,15,14,14,12,12,15,14,14,12,12,15,14,14,12,12,
+ 15,14,14,12,12,14,14,14,13,13,15,15,15,13,13,16,
+ 14,14,12,13,15,15,15,13,13,15,14,14,12,12,15,15,
+ 15,13,13,15,11,11,13,12,18,10,10,12,12,17,11,11,
+ 12,12,18,12,12,11,11,18,14,14,12,12,18,11,11,13,
+ 13,17,14,14,12,12,18,10,10,12,12,18,12,12,12,12,
+ 18,14,15,12,12,18,11,11,13,13,18,14,14,12,12,17,
+ 10,10,12,12,18,11,11,12,12,18,15,14,12,12,17,12,
+ 12,12,12,17,14,14,12,12,17,11,11,11,11,17,12,12,
+ 12,11,17,15,15,11,11,18,15,15,12,12,18,14,15,13,
+ 13,18,15,15,11,11,17,15,15,12,12,18,15,15,11,11,
+ 14, 9, 9,11,11,14,15,15,11,11,15,15,15,11,11,15,
+ 15,15,12,11,15,15,15,12,12,15,15,15,11,11,15,15,
+ 15,13,13,14,15,15,11,11,15,15,15,11,11,15,15,15,
+ 13,13,15,15,15,11,11,15,15,15,13,13,15,15,15,11,
+ 11,15,15,15,11,11,15,15,15,13,13,15,15,15,12,12,
+ 15,15,15,13,13,15,15,14,11,11,15,15,15,12,12,15,
+ 15,15,12,12,16,15,15,13,13,15,16,16,13,13,16,15,
+ 15,12,12,15,15,15,13,12,15,15,15,12,12,13,12,12,
+ 11,11,14,14,14,11,11,14,14,14,12,12,15,14,14,11,
+ 11,15,14,14,12,12,15,14,14,12,12,15,14,14,12,12,
+ 14,15,15,11,11,15,14,14,12,12,15,14,14,11,11,15,
+ 14,14,12,12,15,14,14,12,12,14,15,15,11,11,15,14,
+ 14,12,12,15,14,14,11,11,15,15,15,12,12,15,14,14,
+ 12,12,15,15,15,11,11,15,14,14,11,11,15,14,15,11,
+ 11,15,15,15,12,12,15,14,14,13,13,16,15,15,11,11,
+ 15,14,14,12,12,15,15,15,11,11,14,11,11, 9, 9,15,
+ 10,10,12,12,14,11,11,12,12,15,12,12,12,12,15,14,
+ 14,13,13,15,11,11,13,13,15,14,14,13,13,15,10,10,
+ 12,12,15,12,12,13,13,15,14,14,13,13,15,11,11,12,
+ 12,15,14,14,13,13,14,10,10,12,12,15,12,12,13,13,
+ 15,14,14,12,12,15,12,12,13,13,15,14,14,15,15,15,
+ 11,11,12,12,15,12,12,12,13,15,14,14,12,12,15,15,
+ 15,14,14,15,14,14,20,20,15,14,14,12,12,15,14,14,
+ 13,13,15,14,14,12,12,14,13,13,10,10,14,13,13,11,
+ 11,14,13,13,12,12,14,14,14,12,12,15,14,14,13,13,
+ 15,14,14,12,12,14,14,14,14,14,14,14,14,11,11,15,
+ 14,14,12,12,15,14,14,14,14,15,14,14,12,12,14,14,
+ 14,14,14,14,14,14,11,11,15,14,14,12,12,14,14,14,
+ 14,14,15,14,14,12,12,15,14,14,13,13,15,14,14,12,
+ 12,15,14,14,12,12,14,14,14,14,13,15,15,15,14,14,
+ 15,14,14,13,13,15,15,15,14,14,15,14,14,13,13,15,
+ 15,15,13,13,14,13,13,13,13,18,15,15,12,12,18,15,
+ 15,13,12,18,15,16,11,11,18,16,17,12,12,18,15,15,
+ 13,13,18,17,17,12,12,18,15,15,12,12,17,15,15,12,
+ 12,18,17,17,12,12,18,15,15,13,13,18,16,17,12,12,
+ 17,15,15,12,12,18,15,15,12,12,18,16,17,11,12,18,
+ 16,16,12,12,17,16,17,12,12,18,15,15,11,11,18,15,
+ 15,12,12,18,17,17,11,11,17,17,17,12,12,18,16,16,
+ 13,13,18,17,17,11,11,18,16,16,12,12,18,17,17,11,
+ 11,15,14,14,11,11,16,15,15,11,11,16,15,15,12,12,
+ 16,15,15,12,12,17,15,15,14,13,16,15,15,12,12,17,
+ 15,15,14,14,16,15,15,11,11,16,15,15,12,12,18,15,
+ 15,13,13,16,15,15,11,11,17,15,15,14,14,16,15,15,
+ 11,11,16,15,15,12,12,17,15,15,13,13,16,15,15,12,
+ 12,17,16,15,14,14,16,14,15,12,12,16,15,15,12,12,
+ 18,15,15,13,13,17,15,15,14,14,17,16,16,15,15,17,
+ 15,15,13,13,17,15,15,14,14,18,15,15,13,13,15,12,
+ 13,11,11,15,14,14,12,12,16,14,14,12,12,16,14,14,
+ 12,12,16,14,14,12,12,16,14,14,13,12,17,14,14,13,
+ 13,16,15,15,12,12,16,14,14,12,12,17,14,14,12,12,
+ 16,14,14,12,12,17,14,14,13,13,15,15,15,12,12,16,
+ 14,14,12,12,17,14,14,12,12,17,15,15,12,12,17,14,
+ 14,13,13,16,15,15,12,12,16,14,14,12,12,17,15,15,
+ 12,12,18,15,15,13,13,17,14,14,13,13,17,15,15,12,
+ 12,17,14,14,12,12,17,15,15,12,12,14,15,15, 9, 9,
+ 15,15,15,12,12,15,15,15,13,13,15,15,15,14,14,15,
+ 15,15,19,19,15,15,16,13,13,15,15,16,19,20,15,15,
+ 15,13,12,15,16,16,14,14,15,15,15,19,19,15,15,15,
+ 13,13,15,16,15,20,19,14,15,15,13,13,15,15,15,14,
+ 14,15,15,15,19,19,15,15,15,14,14,15,16,16,19,20,
+ 15,15,15,14,14,15,15,15,14,14,15,15,15,19,19,15,
+ 15,15,20,19,15,16,16,20,19,15,15,15,19,19,15,16,
+ 16,20,20,15,15,15,19,20,14,13,13,10,10,14,14,14,
+ 11,11,14,14,14,12,12,15,14,14,13,13,15,14,14,19,
+ 20,15,14,14,12,12,14,14,14,20,19,14,14,14,11,11,
+ 15,14,14,12,12,15,14,14,20,20,15,14,14,12,12,14,
+ 14,14,20,19,14,14,14,11,11,15,14,14,12,12,15,14,
+ 14,19,20,15,14,14,13,13,15,14,14,22,19,15,15,14,
+ 12,12,15,14,14,13,13,14,15,15,22,20,15,15,15,20,
+ 20,15,14,14,21,20,15,15,15,20,21,15,14,14,20,20,
+ 14,15,15,20,20,
+};
+
+static const static_codebook _44p3_p4_1 = {
+ 5, 3125,
+ (char *)_vq_lengthlist__44p3_p4_1,
+ 1, -533725184, 1611661312, 3, 0,
+ (long *)_vq_quantlist__44p3_p4_1,
+ 0
+};
+
+static const long _vq_quantlist__44p3_p5_0[] = {
+ 2,
+ 1,
+ 3,
+ 0,
+ 4,
+};
+
+static const char _vq_lengthlist__44p3_p5_0[] = {
+ 2, 6, 6,14,14, 6, 7, 7,14,14, 7, 7, 7,15,15, 0,
+ 12,12,15,15, 0,13,13,15,15, 7, 8, 8,15,15,10,10,
+ 10,16,16, 9, 8, 8,15,15, 0,13,13,18,17, 0,13,13,
+ 16,16, 8, 8, 8,15,15,12,11,11,16,16, 9, 8, 8,15,
+ 15, 0,13,13,18,18, 0,13,13,16,16, 0,14,14,17,17,
+ 0,20, 0,19,20, 0,12,12,16,16, 0,16,16,20,22, 0,
+ 14,14,16,16, 0,14,14,17,17, 0,20,22,20,19, 0,13,
+ 13,15,16, 0,17,18, 0,21, 0,15,15,16,16, 5, 7, 7,
+ 13,13, 8, 9, 9,14,14,10,10,10,14,14, 0,20,22,18,
+ 18, 0,22,21,18,17, 9,10,10,14,14,12,12,12,17,17,
+ 12,10,10,14,14, 0, 0,20,17,17, 0,22,21,17,18,11,
+ 10,10,14,14,14,13,13,18,18,12,11,11,14,14, 0,22,
+ 21,18,19, 0,20, 0,17,17, 0,22, 0,18,18, 0, 0, 0,
+ 0, 0, 0,20,20,17,17, 0,22, 0,22,21, 0,21, 0,19,
+ 18, 0,22,22,18,18, 0, 0, 0, 0, 0, 0,21, 0,17,17,
+ 0,22, 0,20,20, 0, 0, 0,19,18, 6, 6, 6,12,12, 8,
+ 6, 6,10,10, 8, 6, 6,13,12, 0,10,10,11,11, 0,11,
+ 11,13,13, 8, 7, 7,13,13,11, 9, 9,13,13,10, 6, 6,
+ 12,12, 0,10,10,14,14, 0,10,10,13,13, 9, 7, 7,13,
+ 13,12,10,10,13,13,10, 6, 6,12,12, 0,11,11,15,15,
+ 0,10,10,13,13, 0,12,12,15,14, 0,19,20,16,17, 0,
+ 9, 9,13,13, 0,14,14,20,21, 0,12,11,13,12, 0,12,
+ 12,15,14, 0,20,19,17,17, 0,10,10,12,13, 0,15,15,
+ 22,21, 0,12,12,12,13, 0,10,10,12,12, 0,11,11,15,
+ 15, 0,11,11,15,15, 0,15,15,22,22, 0,16,17, 0, 0,
+ 0,11,11,15,15, 0,14,14,18,18, 0,11,11,16,16, 0,
+ 16,15, 0,21, 0,16,16, 0, 0, 0,12,12,15,15, 0,14,
+ 14,19,19, 0,11,11,15,15, 0,15,15,22, 0, 0,16,16,
+ 22, 0, 0,16,16, 0,21, 0, 0, 0, 0, 0, 0,15,15,19,
+ 20, 0,18,18, 0, 0, 0,17,17, 0, 0, 0,17,17, 0, 0,
+ 0, 0, 0, 0, 0, 0,16,15,22,21, 0,20,20, 0, 0, 0,
+ 18,18, 0, 0, 0,10,10,12,12, 0,10,10,11,11, 0,11,
+ 11,12,12, 0,11,11, 9, 9, 0,13,12,12,12, 0,11,11,
+ 13,13, 0,13,13,12,12, 0,10,10,12,12, 0,13,12,13,
+ 13, 0,12,12,12,12, 0,11,11,13,13, 0,13,13,12,12,
+ 0,10,10,12,12, 0,13,13,14,13, 0,12,12,12,12, 0,
+ 14,13,13,14, 0,20,21,15,15, 0,11,11,12,12, 0,15,
+ 16,20,20, 0,12,13,10,10, 0,13,13,14,13, 0,20,20,
+ 15,15, 0,11,11,12,12, 0,16,17,21,21, 0,13,13,11,
+ 11, 6, 7, 7,16,15,11, 9, 9,14,15,12, 9, 9,16,16,
+ 0,13,13,15,15, 0,14,14,17,17,10, 9, 9,16,16,14,
+ 12,12,16,16,12, 9, 9,15,15, 0,13,13,17,18, 0,13,
+ 13,15,15,12,10,10,17,17,15,12,12,17,17,13, 9, 9,
+ 16,16, 0,13,13,18,19, 0,14,14,16,16, 0,15,15,18,
+ 18, 0, 0, 0,20,19, 0,12,12,17,16, 0,16,17, 0,21,
+ 0,14,15,16,16, 0,15,15,18,18, 0, 0,22,19,21, 0,
+ 13,13,16,16, 0,18,17,22,22, 0,15,15,16,16, 7, 7,
+ 7,13,13,11,10,10,15,15,12,10,10,14,14, 0,21, 0,
+ 18,17, 0,21,22,18,18,11,10,10,15,15,14,12,12,17,
+ 17,14,11,11,14,14, 0,21,20,18,18, 0,22,21,18,17,
+ 12,11,10,16,16,16,14,14,17,19,14,11,11,15,15, 0,
+ 0,22,19,19, 0,21,22,18,18, 0,21, 0,18,19, 0, 0,
+ 0,22, 0, 0,22,21,17,17, 0, 0, 0,20,22, 0, 0,21,
+ 18,18, 0, 0, 0,19,20, 0, 0, 0, 0, 0, 0, 0,21,17,
+ 17, 0, 0, 0,22,21, 0, 0, 0,19,19,10, 9, 9,14,13,
+ 13,10,10,12,12,13,10,10,14,14, 0,13,13,12,12, 0,
+ 15,14,16,15,13,10,10,14,14,15,12,12,14,14,15,10,
+ 10,14,14, 0,14,14,15,15, 0,14,13,14,14,13,10,10,
+ 15,15,17,13,13,15,15,14,10,10,14,14, 0,14,14,15,
+ 16, 0,14,14,15,15, 0,15,15,16,16, 0,21,22,17,18,
+ 0,12,12,14,14, 0,17,17,20,21, 0,14,14,14,14, 0,
+ 15,15,16,16, 0,21,22,18,18, 0,13,13,14,14, 0,18,
+ 18,22, 0, 0,15,15,14,14, 0,11,11,13,13, 0,12,12,
+ 16,15, 0,12,12,16,16, 0,16,16, 0, 0, 0,16,17, 0,
+ 22, 0,12,12,16,16, 0,14,14,17,18, 0,11,11,16,16,
+ 0,15,15, 0,21, 0,16,16,21,22, 0,12,12,16,16, 0,
+ 15,15,19,19, 0,12,12,17,16, 0,16,16,21,22, 0,16,
+ 16, 0, 0, 0,17,17, 0,22, 0, 0, 0, 0, 0, 0,15,15,
+ 19,20, 0,17,19, 0, 0, 0,17,17,22, 0, 0,17,17, 0,
+ 22, 0, 0, 0, 0, 0, 0,15,15,21, 0, 0,19,20, 0, 0,
+ 0,19,18,22, 0, 0,11,12,14,14, 0,11,11,14,14, 0,
+ 12,12,15,15, 0,13,13,13,13, 0,14,14,16,16, 0,12,
+ 12,15,15, 0,14,14,16,15, 0,11,11,15,15, 0,13,13,
+ 16,16, 0,13,13,15,15, 0,12,12,15,15, 0,15,14,16,
+ 16, 0,11,11,15,15, 0,14,14,17,17, 0,13,13,15,15,
+ 0,15,15,16,16, 0, 0, 0,18,18, 0,12,12,14,14, 0,
+ 16,16,22, 0, 0,14,14,15,15, 0,15,15,16,17, 0,21,
+ 22,18,18, 0,13,13,15,14, 0,18,17,22, 0, 0,14,14,
+ 15,15, 8, 8, 8,16,15,12,10,10,16,15,12,10,10,16,
+ 16, 0,14,14,16,17, 0,14,14,17,16,12,10,10,17,18,
+ 14,12,12,18,18,14,10,10,16,16, 0,14,14,18,18, 0,
+ 14,14,16,16,12, 9, 9,16,16,17,13,13,16,17,14, 9,
+ 9,15,15, 0,14,14,18,19, 0,13,13,15,15, 0,15,15,
+ 18,19, 0, 0, 0,22,21, 0,13,13,16,16, 0,16,16,22,
+ 0, 0,15,15,16,16, 0,14,14,18,17, 0, 0, 0,20, 0,
+ 0,13,13,16,16, 0,18,18, 0, 0, 0,15,15,16,16, 8,
+ 7, 7,13,13,12,10,10,15,15,12,10,10,14,14, 0,22,
+ 22,19,18, 0, 0, 0,18,18,12,10,10,15,15,14,13,13,
+ 17,17,14,11,11,15,15, 0,19,20,18,18, 0,22,21,17,
+ 18,13,11,11,15,15,16,13,13,18,18,14,11,11,14,15,
+ 0,22,21,20,19, 0,22,21,17,17, 0, 0,22,19,18, 0,
+ 0, 0, 0, 0, 0,22,20,17,17, 0, 0, 0,21,20, 0, 0,
+ 0,19,17, 0, 0,22,19,19, 0, 0, 0, 0, 0, 0,22,20,
+ 18,17, 0, 0, 0, 0, 0, 0, 0, 0,18,18, 0,10,10,14,
+ 14, 0,11,11,14,14, 0,11,11,15,15, 0,14,14,14,14,
+ 0,15,15,16,16, 0,11,11,16,16, 0,13,13,16,16, 0,
+ 11,11,15,15, 0,14,14,16,16, 0,14,14,15,15, 0,11,
+ 11,15,15, 0,13,13,15,15, 0,10,10,15,15, 0,15,15,
+ 17,17, 0,14,14,14,14, 0,16,16,16,16, 0, 0,22,19,
+ 19, 0,13,13,14,14, 0,17,17, 0, 0, 0,15,15,14,14,
+ 0,16,16,17,17, 0, 0,22,18,18, 0,13,13,14,14, 0,
+ 21,18, 0, 0, 0,15,15,14,14, 0,11,11,13,13, 0,12,
+ 12,15,15, 0,12,12,16,15, 0,16,16, 0, 0, 0,17,17,
+ 22,22, 0,12,12,16,16, 0,14,14,18,18, 0,11,12,16,
+ 16, 0,15,16, 0,21, 0,16,16,22,21, 0,12,12,16,16,
+ 0,15,15,19,20, 0,11,12,16,16, 0,15,15,20,22, 0,
+ 16,16, 0,22, 0,17,17,22, 0, 0, 0, 0, 0, 0, 0,15,
+ 15,21,22, 0,19,18, 0, 0, 0,17,17, 0, 0, 0,17,17,
+ 0,22, 0, 0, 0, 0, 0, 0,16,15,22, 0, 0,19,19, 0,
+ 0, 0,17,18, 0, 0, 0,12,12,15,15, 0,12,12,15,15,
+ 0,12,12,15,15, 0,13,13,14,14, 0,15,15,16,17, 0,
+ 12,12,16,16, 0,14,14,16,16, 0,12,11,15,16, 0,14,
+ 14,16,17, 0,14,14,16,16, 0,13,12,16,16, 0,15,15,
+ 16,16, 0,11,11,15,15, 0,14,14,16,16, 0,14,14,15,
+ 15, 0,15,15,18,17, 0, 0,22, 0,20, 0,13,13,15,15,
+ 0,16,17,22,22, 0,14,14,15,15, 0,15,15,17,18, 0,
+ 20, 0,19,19, 0,13,13,15,15, 0,18,18,22, 0, 0,14,
+ 14,15,15, 0,11,11,16,16, 0,14,14,17,16, 0,13,13,
+ 17,17, 0,16,16,17,17, 0,17,17,18,19, 0,12,12,16,
+ 17, 0,15,15,18,18, 0,12,12,16,16, 0,16,16,19,18,
+ 0,16,16,17,16, 0,12,13,17,17, 0,17,16,18,17, 0,
+ 13,12,16,16, 0,16,16,18,19, 0,16,16,16,17, 0,16,
+ 16,18,18, 0,22, 0,22,22, 0,13,13,16,16, 0,19,18,
+ 22,20, 0,16,15,16,16, 0,16,17,18,18, 0, 0, 0,22,
+ 20, 0,14,14,16,16, 0,19,19, 0, 0, 0,16,16,16,16,
+ 0, 9, 9,13,13, 0,13,13,15,15, 0,14,14,15,15, 0,
+ 0,22,17,18, 0,22, 0,18,19, 0,12,12,15,15, 0,15,
+ 16,17,17, 0,14,14,14,14, 0,22, 0,18,18, 0,21,22,
+ 17,17, 0,13,13,15,15, 0,17,17,17,18, 0,14,14,15,
+ 15, 0,22,21,21,19, 0,20,21,17,17, 0,21,21,19,18,
+ 0, 0, 0, 0, 0, 0,21,21,17,17, 0, 0, 0,22,22, 0,
+ 0,22,19,18, 0, 0,21,19,18, 0, 0, 0, 0,22, 0,19,
+ 20,17,17, 0, 0, 0, 0,22, 0, 0, 0,19,18, 0,19,19,
+ 15,16, 0,21,19,16,17, 0, 0,21,17,17, 0, 0,22,17,
+ 17, 0,22,22,18,19, 0,20,20,16,16, 0, 0,22,18,18,
+ 0,20,19,16,17, 0,22,21,20,19, 0, 0,21,17,17, 0,
+ 21,20,17,17, 0, 0, 0,18,18, 0,19,19,17,16, 0,22,
+ 0,19,19, 0,21,22,17,18, 0, 0,22,19,18, 0, 0, 0,
+ 19,20, 0,19,19,16,16, 0,22,22,22, 0, 0,20,22,16,
+ 16, 0,22,20,18,19, 0, 0, 0,20,19, 0,20,20,16,16,
+ 0, 0, 0, 0, 0, 0,22,20,17,16, 0,11,11,13,13, 0,
+ 14,13,15,15, 0,13,13,16,15, 0,18,17,21, 0, 0,18,
+ 18,21, 0, 0,12,12,15,15, 0,15,16,17,18, 0,12,12,
+ 15,15, 0,17,17,22,20, 0,17,18,22, 0, 0,12,12,17,
+ 16, 0,16,17,19,19, 0,13,13,16,16, 0,17,17, 0,22,
+ 0,17,17, 0,21, 0,18,18,20,22, 0, 0, 0, 0, 0, 0,
+ 15,15,21,20, 0,20,19, 0, 0, 0,18,18,22, 0, 0,17,
+ 17,22, 0, 0, 0, 0, 0, 0, 0,15,16,20,22, 0,20,21,
+ 0, 0, 0,19,18, 0, 0, 0,15,15,19,19, 0,17,16,20,
+ 20, 0,16,17,20,21, 0,18,17, 0, 0, 0,19,19, 0, 0,
+ 0,15,15,21,19, 0,19,19, 0, 0, 0,15,15,22,22, 0,
+ 18,18, 0,22, 0,17,18,22,21, 0,15,15,20,19, 0,19,
+ 19, 0, 0, 0,15,15,20,22, 0,18,19,20, 0, 0,18,17,
+ 21,21, 0,18,18,19,22, 0, 0, 0, 0, 0, 0,15,15,20,
+ 19, 0,19,19, 0, 0, 0,18,18,21,22, 0,18,18,22, 0,
+ 0, 0, 0, 0, 0, 0,15,15,19,20, 0,21,21, 0, 0, 0,
+ 17,17,20,20, 0,12,12,17,17, 0,14,14,16,17, 0,13,
+ 14,17,17, 0,16,16,17,17, 0,17,17,17,19, 0,13,13,
+ 17,17, 0,16,16,18,18, 0,13,13,16,16, 0,16,16,18,
+ 18, 0,16,16,17,17, 0,13,13,17,17, 0,17,17,18,17,
+ 0,12,12,15,16, 0,17,18,19,20, 0,16,16,16,16, 0,
+ 17,16,18,19, 0, 0,22,21,22, 0,14,14,16,16, 0,19,
+ 19, 0, 0, 0,16,16,16,16, 0,16,16,18,17, 0, 0,22,
+ 21,21, 0,14,14,16,16, 0,22,20,22, 0, 0,16,16,15,
+ 15, 0, 9, 9,13,13, 0,14,14,15,15, 0,14,14,14,14,
+ 0,22,22,18,18, 0, 0,22,18,18, 0,12,12,15,15, 0,
+ 16,16,18,17, 0,14,14,14,14, 0,20,21,18,18, 0,22,
+ 21,17,17, 0,13,13,15,15, 0,17,17,18,18, 0,14,14,
+ 14,14, 0, 0,21,18,19, 0, 0,22,17,17, 0,22,22,19,
+ 18, 0, 0, 0, 0, 0, 0,19,21,17,17, 0, 0, 0,22,20,
+ 0, 0,21,18,19, 0, 0,22,18,18, 0, 0, 0, 0,22, 0,
+ 20,22,17,17, 0, 0, 0,20,22, 0, 0, 0,18,18, 0,19,
+ 21,16,16, 0,20,22,16,17, 0,20, 0,17,17, 0,22, 0,
+ 18,17, 0,21, 0,18,19, 0,20,20,17,17, 0,22, 0,18,
+ 18, 0,21,20,17,17, 0, 0,20,20,19, 0, 0,21,18,17,
+ 0,21,21,17,17, 0,22, 0,18,17, 0,19,19,17,17, 0,
+ 0,22,20,21, 0, 0,21,17,17, 0,22, 0,18,18, 0, 0,
+ 0,20,22, 0,20,19,16,16, 0, 0, 0, 0, 0, 0,22,22,
+ 17,17, 0,22, 0,18,19, 0, 0, 0,21,20, 0,19,21,16,
+ 17, 0, 0, 0, 0, 0, 0,22,22,17,16, 0,11,11,13,13,
+ 0,13,13,15,15, 0,13,13,15,15, 0,17,17,22,21, 0,
+ 18,18,22, 0, 0,12,13,16,15, 0,15,16,18,18, 0,13,
+ 13,16,16, 0,17,17, 0,22, 0,17,17,22,22, 0,13,13,
+ 16,16, 0,16,16,19,18, 0,13,13,16,16, 0,18,17, 0,
+ 20, 0,18,17,20, 0, 0,17,17,21, 0, 0, 0, 0, 0, 0,
+ 0,15,15,21,22, 0,19,20, 0, 0, 0,18,18, 0, 0, 0,
+ 18,17, 0, 0, 0, 0, 0, 0, 0, 0,16,16,22,22, 0,20,
+ 20, 0, 0, 0,21,19, 0, 0, 0,15,15,20,19, 0,16,16,
+ 22,20, 0,17,17, 0,22, 0,18,18, 0,22, 0,19,17, 0,
+ 0, 0,15,16,22,20, 0,18,19, 0, 0, 0,16,16,22,20,
+ 0,18,18, 0,22, 0,18,18,22, 0, 0,16,16,21,20, 0,
+ 19,20, 0,22, 0,16,16, 0,22, 0,18,18, 0,22, 0,18,
+ 18, 0,21, 0,19,18, 0,22, 0, 0, 0, 0, 0, 0,16,16,
+ 21,20, 0,20, 0, 0, 0, 0,18,18,21, 0, 0,18,18, 0,
+ 0, 0, 0, 0, 0, 0, 0,16,16,21,19, 0, 0, 0, 0, 0,
+ 0,18,18, 0,21,
+};
+
+static const static_codebook _44p3_p5_0 = {
+ 5, 3125,
+ (char *)_vq_lengthlist__44p3_p5_0,
+ 1, -528744448, 1616642048, 3, 0,
+ (long *)_vq_quantlist__44p3_p5_0,
+ 0
+};
+
+static const long _vq_quantlist__44p3_p5_1[] = {
+ 3,
+ 2,
+ 4,
+ 1,
+ 5,
+ 0,
+ 6,
+};
+
+static const char _vq_lengthlist__44p3_p5_1[] = {
+ 2, 3, 3, 3, 3, 3, 3,
+};
+
+static const static_codebook _44p3_p5_1 = {
+ 1, 7,
+ (char *)_vq_lengthlist__44p3_p5_1,
+ 1, -533200896, 1611661312, 3, 0,
+ (long *)_vq_quantlist__44p3_p5_1,
+ 0
+};
+
+static const long _vq_quantlist__44p3_p6_0[] = {
+ 1,
+ 0,
+ 2,
+};
+
+static const char _vq_lengthlist__44p3_p6_0[] = {
+ 1, 6, 6, 7, 7, 7, 7, 8, 8, 7, 9, 9,11,11,11, 9,
+ 8, 8, 8, 9, 9,12,11,11, 9, 8, 8, 6, 7, 7,10,11,
+ 10,10,10,10,11,11,10,14,13,14,12,11,11,11,11,11,
+ 15,14,14,13,12,12, 5, 6, 6, 8, 5, 5, 8, 7, 7, 8,
+ 8, 8,12,10,10, 9, 7, 7, 9, 7, 8,12,10,10,10, 7,
+ 7, 7, 8, 8,12,10,10,12,10,10,11,10,10,15,13,13,
+ 13,10,10,11,10,10,16,13,14,14,10,10, 7, 7, 7,12,
+ 11,11,12,11,11,11,11,11,16,15,15,14,12,12,12,11,
+ 11,16,15,16,14,12,12,10, 9, 9,14,11,11,13,11,11,
+ 12,11,11,16,14,14,14,11,11,12,11,11,17,15,15,14,
+ 11,11, 7, 8, 8,12,11,11,12,10,10,12,10,10,16,14,
+ 13,14,10,10,12,10,10,17,14,14,14,10,10, 8, 7, 7,
+ 13,11,11,12,11,11,12,11,11,16,15,14,14,12,12,12,
+ 11,11,16,15,14,15,12,12,11,10,10,13,11,11,13,12,
+ 11,13,11,11,17,14,14,14,11,11,13,11,11,17,14,15,
+ 14,11,11,
+};
+
+static const static_codebook _44p3_p6_0 = {
+ 5, 243,
+ (char *)_vq_lengthlist__44p3_p6_0,
+ 1, -527106048, 1620377600, 2, 0,
+ (long *)_vq_quantlist__44p3_p6_0,
+ 0
+};
+
+static const long _vq_quantlist__44p3_p6_1[] = {
+ 1,
+ 0,
+ 2,
+};
+
+static const char _vq_lengthlist__44p3_p6_1[] = {
+ 2, 6, 6, 7, 7, 7, 7, 7, 7, 7, 8, 8, 9, 9, 9, 9,
+ 7, 7, 8, 8, 8, 9, 9, 9, 9, 7, 8, 6, 7, 7, 8, 8,
+ 8, 8, 8, 8, 9, 8, 8,10, 9, 9,10, 8, 8,10, 8, 8,
+ 10, 9, 9,10, 8, 8, 6, 6, 6, 8, 6, 6, 8, 7, 7, 8,
+ 7, 7,10, 8, 8, 9, 7, 7, 9, 7, 7,10, 8, 9, 9, 7,
+ 7, 7, 7, 7,10, 8, 8,11, 8, 8,10, 8, 8,12, 9, 9,
+ 12, 8, 8,11, 9, 9,12, 9, 9,11, 8, 8, 7, 7, 7,10,
+ 9, 9,10, 9, 9,10, 9, 9,11,10,10,10, 9, 9,11, 9,
+ 9,11,10,10,11, 9, 9, 9, 8, 8,10, 9, 9,10, 9, 9,
+ 11, 9, 9,11,10,10,11, 9, 9,11, 9, 9,11,10,10,11,
+ 9, 9, 8, 8, 8,11, 9, 9,11, 9, 9,11, 9, 9,12, 9,
+ 9,12, 8, 8,12, 9, 9,12, 9, 9,12, 8, 8, 8, 7, 7,
+ 10, 9, 9,10, 9, 9,11, 9, 9,11,11,11,11, 9, 9,11,
+ 10,10,11,11,11,11, 9, 9,10, 9, 9,11, 9, 9,11, 9,
+ 10,11,10, 9,11,10,10,11, 9, 9,11, 9,10,11,10,10,
+ 11, 9, 9,
+};
+
+static const static_codebook _44p3_p6_1 = {
+ 5, 243,
+ (char *)_vq_lengthlist__44p3_p6_1,
+ 1, -530841600, 1616642048, 2, 0,
+ (long *)_vq_quantlist__44p3_p6_1,
+ 0
+};
+
+static const long _vq_quantlist__44p3_p7_0[] = {
+ 1,
+ 0,
+ 2,
+};
+
+static const char _vq_lengthlist__44p3_p7_0[] = {
+ 1, 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, 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,
+ 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, 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, 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, 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, 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, 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, 9, 9, 9, 9,
+ 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9,
+ 9, 9, 9,
+};
+
+static const static_codebook _44p3_p7_0 = {
+ 5, 243,
+ (char *)_vq_lengthlist__44p3_p7_0,
+ 1, -513979392, 1633504256, 2, 0,
+ (long *)_vq_quantlist__44p3_p7_0,
+ 0
+};
+
+static const long _vq_quantlist__44p3_p7_1[] = {
+ 1,
+ 0,
+ 2,
+};
+
+static const char _vq_lengthlist__44p3_p7_1[] = {
+ 1, 9, 9, 6, 9, 9, 5, 9, 9, 8, 9, 9, 9, 9, 9, 9,
+ 9, 9, 9, 9, 9, 9, 9, 9, 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, 9, 9, 9, 9, 9, 9, 8, 9, 9, 9, 9, 9, 9,
+ 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9,
+ 9, 7, 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, 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, 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,
+ 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, 9, 9, 9, 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,10,10,10,10,10,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 const static_codebook _44p3_p7_1 = {
+ 5, 243,
+ (char *)_vq_lengthlist__44p3_p7_1,
+ 1, -516716544, 1630767104, 2, 0,
+ (long *)_vq_quantlist__44p3_p7_1,
+ 0
+};
+
+static const long _vq_quantlist__44p3_p7_2[] = {
+ 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 const char _vq_lengthlist__44p3_p7_2[] = {
+ 1, 3, 2, 5, 4, 7, 7, 8, 8, 9, 9,10,10,11,11,12,
+ 12,13,13,14,14,15,15,15,15,
+};
+
+static const static_codebook _44p3_p7_2 = {
+ 1, 25,
+ (char *)_vq_lengthlist__44p3_p7_2,
+ 1, -518864896, 1620639744, 5, 0,
+ (long *)_vq_quantlist__44p3_p7_2,
+ 0
+};
+
+static const long _vq_quantlist__44p3_p7_3[] = {
+ 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 const char _vq_lengthlist__44p3_p7_3[] = {
+ 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 5, 5, 5,
+ 5, 5, 5, 5, 5, 5, 5, 5, 5,
+};
+
+static const static_codebook _44p3_p7_3 = {
+ 1, 25,
+ (char *)_vq_lengthlist__44p3_p7_3,
+ 1, -529006592, 1611661312, 5, 0,
+ (long *)_vq_quantlist__44p3_p7_3,
+ 0
+};
+
+static const char _huff_lengthlist__44p3_short[] = {
+ 4, 5,16, 9, 9,12,17,18, 4, 2,18, 6, 5, 9,13,15,
+ 10, 7, 7, 6, 7, 9,13,13, 8, 5, 6, 5, 5, 7,11,12,
+ 8, 4, 7, 4, 3, 6,10,12,11, 8, 9, 7, 6, 8,11,12,
+ 15,13,13,11, 9, 7,10,12,16,12,16,12, 6, 5, 8,11,
+};
+
+static const static_codebook _huff_book__44p3_short = {
+ 2, 64,
+ (char *)_huff_lengthlist__44p3_short,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
+static const long _vq_quantlist__44p4_l0_0[] = {
+ 6,
+ 5,
+ 7,
+ 4,
+ 8,
+ 3,
+ 9,
+ 2,
+ 10,
+ 1,
+ 11,
+ 0,
+ 12,
+};
+
+static const char _vq_lengthlist__44p4_l0_0[] = {
+ 1, 4, 4, 8, 8, 9, 8, 9, 9,10,10,10,10, 4, 6, 5,
+ 8, 7, 9, 9, 9, 9,10, 9,10,10, 4, 5, 6, 7, 8, 9,
+ 9, 9, 9, 9,10, 9,10, 8, 9, 8, 9, 8,10, 9,11, 9,
+ 12,10,11,10, 8, 8, 9, 8, 9, 9,10, 9,11,10,11,10,
+ 12, 9,10,10,11,10,11,11,12,11,12,12,12,12, 9,10,
+ 10,11,11,11,11,11,12,12,12,12,12,10,11,11,12,12,
+ 12,12,12,12,12,12,12,12,10,11,11,12,12,12,12,12,
+ 12,12,12,12,12,11,12,12,12,12,12,12,12,12,12,13,
+ 12,12,11,12,11,12,12,12,12,12,12,12,12,12,12,12,
+ 12,12,12,12,12,13,12,12,12,12,12,12,11,13,12,12,
+ 12,13,12,12,12,12,12,12,12,
+};
+
+static const static_codebook _44p4_l0_0 = {
+ 2, 169,
+ (char *)_vq_lengthlist__44p4_l0_0,
+ 1, -526516224, 1616117760, 4, 0,
+ (long *)_vq_quantlist__44p4_l0_0,
+ 0
+};
+
+static const long _vq_quantlist__44p4_l0_1[] = {
+ 2,
+ 1,
+ 3,
+ 0,
+ 4,
+};
+
+static const char _vq_lengthlist__44p4_l0_1[] = {
+ 3, 4, 4, 5, 5, 4, 4, 5, 5, 5, 4, 5, 4, 5, 5, 5,
+ 5, 6, 5, 6, 5, 6, 5, 6, 5,
+};
+
+static const static_codebook _44p4_l0_1 = {
+ 2, 25,
+ (char *)_vq_lengthlist__44p4_l0_1,
+ 1, -533725184, 1611661312, 3, 0,
+ (long *)_vq_quantlist__44p4_l0_1,
+ 0
+};
+
+static const long _vq_quantlist__44p4_l1_0[] = {
+ 1,
+ 0,
+ 2,
+};
+
+static const char _vq_lengthlist__44p4_l1_0[] = {
+ 1, 4, 4, 4, 4, 4, 4, 4, 4,
+};
+
+static const static_codebook _44p4_l1_0 = {
+ 2, 9,
+ (char *)_vq_lengthlist__44p4_l1_0,
+ 1, -516716544, 1630767104, 2, 0,
+ (long *)_vq_quantlist__44p4_l1_0,
+ 0
+};
+
+static const char _huff_lengthlist__44p4_lfe[] = {
+ 1, 3, 2, 3,
+};
+
+static const static_codebook _huff_book__44p4_lfe = {
+ 2, 4,
+ (char *)_huff_lengthlist__44p4_lfe,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
+static const char _huff_lengthlist__44p4_long[] = {
+ 3, 5,13, 9, 9,12,16,18, 4, 2,20, 6, 7,10,15,20,
+ 10, 7, 5, 5, 6, 8,10,13, 8, 5, 5, 3, 5, 7,10,11,
+ 9, 7, 6, 5, 5, 7, 9, 9,11,10, 8, 7, 6, 6, 8, 8,
+ 15,15,10,10, 9, 7, 8, 9,17,19,13,12,10, 8, 9, 9,
+};
+
+static const static_codebook _huff_book__44p4_long = {
+ 2, 64,
+ (char *)_huff_lengthlist__44p4_long,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
+static const long _vq_quantlist__44p4_p1_0[] = {
+ 1,
+ 0,
+ 2,
+};
+
+static const char _vq_lengthlist__44p4_p1_0[] = {
+ 1, 2, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0,
+};
+
+static const static_codebook _44p4_p1_0 = {
+ 5, 243,
+ (char *)_vq_lengthlist__44p4_p1_0,
+ 1, -535822336, 1611661312, 2, 0,
+ (long *)_vq_quantlist__44p4_p1_0,
+ 0
+};
+
+static const long _vq_quantlist__44p4_p2_0[] = {
+ 2,
+ 1,
+ 3,
+ 0,
+ 4,
+};
+
+static const char _vq_lengthlist__44p4_p2_0[] = {
+ 3, 9, 9, 0, 0, 0, 8, 8, 0, 0, 0, 9, 9, 0, 0, 0,
+ 12,12, 0, 0, 0, 0, 0, 0, 0, 0,10,10, 0, 0, 0, 0,
+ 0, 0, 0, 0, 9, 9, 0, 0, 0,11,11, 0, 0, 0, 0, 0,
+ 0, 0, 0,10,10, 0, 0, 0, 0, 0, 0, 0, 0, 9, 9, 0,
+ 0, 0,11,11, 0, 0, 0, 0, 0, 0, 0, 0,12,12, 0, 0,
+ 0, 0, 0, 0, 0, 0,11,11, 0, 0, 0,12,12, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 7, 7,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 7, 7, 0, 0, 0,
+ 5, 5, 0, 0, 0, 7, 7, 0, 0, 0, 9, 9, 0, 0, 0, 0,
+ 0, 0, 0, 0, 7, 7, 0, 0, 0, 0, 0, 0, 0, 0, 5, 5,
+ 0, 0, 0, 7, 7, 0, 0, 0, 0, 0, 0, 0, 0, 7, 7, 0,
+ 0, 0, 0, 0, 0, 0, 0, 5, 5, 0, 0, 0, 7, 7, 0, 0,
+ 0, 0, 0, 0, 0, 0, 9, 9, 0, 0, 0, 0, 0, 0, 0, 0,
+ 7, 7, 0, 0, 0, 9, 9, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,11,11, 0, 0, 0, 9, 9, 0,
+ 0, 0,10,10, 0, 0, 0,10,10, 0, 0, 0, 0, 0, 0, 0,
+ 0,10,10, 0, 0, 0, 0, 0, 0, 0, 0, 9, 9, 0, 0, 0,
+ 10,10, 0, 0, 0, 0, 0, 0, 0, 0,10,10, 0, 0, 0, 0,
+ 0, 0, 0, 0, 9, 9, 0, 0, 0,10,10, 0, 0, 0, 0, 0,
+ 0, 0, 0,12,12, 0, 0, 0, 0, 0, 0, 0, 0,11,11, 0,
+ 0, 0,12,12, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 9, 9, 0, 0, 0, 7, 7, 0, 0, 0, 8, 8, 0, 0,
+ 0,10,10, 0, 0, 0, 0, 0, 0, 0, 0, 8, 8, 0, 0, 0,
+ 0, 0, 0, 0, 0, 7, 7, 0, 0, 0, 9, 9, 0, 0, 0, 0,
+ 0, 0, 0, 0, 9, 9, 0, 0, 0, 0, 0, 0, 0, 0, 8, 8,
+ 0, 0, 0, 9, 9, 0, 0, 0, 0, 0, 0, 0, 0,10,10, 0,
+ 0, 0, 0, 0, 0, 0, 0, 9, 9, 0, 0, 0,11,11, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 5,
+ 5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0,10,10, 0, 0, 0, 7, 7,
+ 0, 0, 0, 9, 9, 0, 0, 0,10,10, 0, 0, 0, 0, 0, 0,
+ 0, 0, 9, 9, 0, 0, 0, 0, 0, 0, 0, 0, 8, 8, 0, 0,
+ 0, 9, 9, 0, 0, 0, 0, 0, 0, 0, 0, 9, 9, 0, 0, 0,
+ 0, 0, 0, 0, 0, 8, 8, 0, 0, 0, 9, 9, 0, 0, 0, 0,
+ 0, 0, 0, 0,11,11, 0, 0, 0, 0, 0, 0, 0, 0, 9, 9,
+ 0, 0, 0,10,10, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 9, 9, 0, 0, 0, 7, 7, 0, 0, 0, 8, 8, 0,
+ 0, 0,10,11, 0, 0, 0, 0, 0, 0, 0, 0, 9, 9, 0, 0,
+ 0, 0, 0, 0, 0, 0, 8, 8, 0, 0, 0, 9, 9, 0, 0, 0,
+ 0, 0, 0, 0, 0, 8, 8, 0, 0, 0, 0, 0, 0, 0, 0, 7,
+ 7, 0, 0, 0, 9, 9, 0, 0, 0, 0, 0, 0, 0, 0,11,11,
+ 0, 0, 0, 0, 0, 0, 0, 0, 9, 9, 0, 0, 0,10,10, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 5, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,10,10, 0, 0, 0, 7,
+ 7, 0, 0, 0, 9, 9, 0, 0, 0,10,10, 0, 0, 0, 0, 0,
+ 0, 0, 0, 9, 9, 0, 0, 0, 0, 0, 0, 0, 0, 7, 8, 0,
+ 0, 0, 9, 9, 0, 0, 0, 0, 0, 0, 0, 0, 9, 9, 0, 0,
+ 0, 0, 0, 0, 0, 0, 8, 8, 0, 0, 0, 9, 9, 0, 0, 0,
+ 0, 0, 0, 0, 0,10,10, 0, 0, 0, 0, 0, 0, 0, 0, 9,
+ 9, 0, 0, 0,11,11, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0,10,10, 0, 0, 0, 9, 9, 0, 0, 0,10,10,
+ 0, 0, 0,11,11, 0, 0, 0, 0, 0, 0, 0, 0, 9, 9, 0,
+ 0, 0, 0, 0, 0, 0, 0, 8, 8, 0, 0, 0,10,10, 0, 0,
+ 0, 0, 0, 0, 0, 0,10,10, 0, 0, 0, 0, 0, 0, 0, 0,
+ 9, 9, 0, 0, 0,10,10, 0, 0, 0, 0, 0, 0, 0, 0,11,
+ 11, 0, 0, 0, 0, 0, 0, 0, 0, 9, 9, 0, 0, 0,12,12,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 7, 7, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,10,10, 0, 0, 0,
+ 9, 9, 0, 0, 0,10,10, 0, 0, 0,12,12, 0, 0, 0, 0,
+ 0, 0, 0, 0,10,10, 0, 0, 0, 0, 0, 0, 0, 0, 9, 9,
+ 0, 0, 0,10,10, 0, 0, 0, 0, 0, 0, 0, 0,10,10, 0,
+ 0, 0, 0, 0, 0, 0, 0, 8, 8, 0, 0, 0,10,10, 0, 0,
+ 0, 0, 0, 0, 0, 0,11,11, 0, 0, 0, 0, 0, 0, 0, 0,
+ 10,10, 0, 0, 0,11,11, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0,
+};
+
+static const static_codebook _44p4_p2_0 = {
+ 5, 3125,
+ (char *)_vq_lengthlist__44p4_p2_0,
+ 1, -533725184, 1611661312, 3, 0,
+ (long *)_vq_quantlist__44p4_p2_0,
+ 0
+};
+
+static const long _vq_quantlist__44p4_p3_0[] = {
+ 1,
+ 0,
+ 2,
+};
+
+static const char _vq_lengthlist__44p4_p3_0[] = {
+ 1, 6, 6, 5, 7, 8, 0, 8, 8, 6, 9, 9, 7,10,10, 0,
+ 8, 8, 0, 9, 9, 0,12,12, 0, 8, 8, 4, 7, 7, 6,10,
+ 10, 0,12,12, 7,11,11, 8,12,12, 0,12,12, 0,13,12,
+ 0,15,15, 0,12,12, 0, 7, 7, 0, 7, 7, 0, 7, 7, 0,
+ 8, 8, 0,10,10, 0, 7, 7, 0, 8, 8, 0,11,11, 0, 7,
+ 7, 5, 7, 7, 8, 9, 9, 0,10,10, 8, 9, 9,11,11,11,
+ 0,10, 9, 0,11,11, 0,13,13, 0,10,10, 6, 7, 7, 8,
+ 10,10, 0,12,12, 9,10,10,10,12,12, 0,12,12, 0,12,
+ 12, 0,15,15, 0,12,12, 0,10,10, 0,11,11, 0,11,11,
+ 0,11,11, 0,13,13, 0,11,11, 0,11,11, 0,15,15, 0,
+ 10,10, 0, 8, 8, 0,10,10, 0,12,12, 0,11,11, 0,12,
+ 12, 0,12,12, 0,12,12, 0,15,15, 0,11,11, 0, 7, 7,
+ 0,10,10, 0,12,12, 0,10,10, 0,12,12, 0,12,12, 0,
+ 13,13, 0,14,14, 0,12,12, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0,
+};
+
+static const static_codebook _44p4_p3_0 = {
+ 5, 243,
+ (char *)_vq_lengthlist__44p4_p3_0,
+ 1, -533200896, 1614282752, 2, 0,
+ (long *)_vq_quantlist__44p4_p3_0,
+ 0
+};
+
+static const long _vq_quantlist__44p4_p3_1[] = {
+ 1,
+ 0,
+ 2,
+};
+
+static const char _vq_lengthlist__44p4_p3_1[] = {
+ 3, 5, 5, 0, 8, 8, 0, 8, 8, 0, 9, 9, 0,10,10, 0,
+ 8, 8, 0, 8, 8, 0,10,10, 0, 8, 8, 0, 7, 7, 0, 8,
+ 8, 0, 7, 7, 0, 8, 8, 0, 8, 8, 0, 8, 8, 0, 8, 8,
+ 0, 8, 8, 0, 8, 8, 0, 7, 7, 0, 6, 6, 0, 7, 7, 0,
+ 7, 7, 0,10,10, 0, 6, 6, 0, 7, 7, 0,10,10, 0, 5,
+ 5, 0, 8, 8, 0, 7, 7, 0, 8, 8, 0, 8, 8, 0, 9, 9,
+ 0, 7, 7, 0, 8, 8, 0, 9, 9, 0, 7, 7, 0, 6, 6, 0,
+ 9,10, 0,10,10, 0,10,10, 0,11,11, 0, 9, 9, 0,10,
+ 10, 0,11,11, 0, 9, 9, 0, 8, 8, 0, 8, 8, 0, 8, 8,
+ 0, 9, 9, 0, 9, 9, 0, 7, 7, 0, 8, 8, 0, 9, 9, 0,
+ 7, 7, 0, 8, 8, 0, 7, 7, 0, 7, 7, 0, 8, 8, 0, 9,
+ 9, 0, 7, 7, 0, 7, 7, 0, 8, 8, 0, 6, 6, 0, 6, 6,
+ 0,10,10, 0,10,10, 0,10,10, 0,12,12, 0, 9, 9, 0,
+ 10,10, 0,12,12, 0, 9, 9, 0, 8, 8, 0, 7, 7, 0, 7,
+ 7, 0, 8, 8, 0, 9, 9, 0, 7, 7, 0, 8, 8, 0, 9, 9,
+ 0, 6, 6,
+};
+
+static const static_codebook _44p4_p3_1 = {
+ 5, 243,
+ (char *)_vq_lengthlist__44p4_p3_1,
+ 1, -535822336, 1611661312, 2, 0,
+ (long *)_vq_quantlist__44p4_p3_1,
+ 0
+};
+
+static const long _vq_quantlist__44p4_p4_0[] = {
+ 1,
+ 0,
+ 2,
+};
+
+static const char _vq_lengthlist__44p4_p4_0[] = {
+ 1, 6, 6, 6, 7, 7, 7, 8, 8, 7, 8, 8,10,11,11, 9,
+ 8, 8, 8, 8, 8,11,11,12, 9, 8, 8, 5, 7, 7, 9,11,
+ 11,10,11,11,10,11,11,12,14,14,11,12,12,10,12,12,
+ 13,14,14,12,12,12, 5, 6, 6, 7, 6, 6, 8, 7, 7, 8,
+ 7, 7,11,10,10,10, 7, 7, 9, 8, 8,12,11,11,10, 7,
+ 7, 7, 7, 7,11,10,10,12,10,10,11,10,10,15,13,13,
+ 13,10,10,12,11,11,15,13,13,14,11,11, 7, 7, 7,11,
+ 11,11,12,11,11,12,11,11,14,14,14,13,12,12,12,12,
+ 12,16,15,15,14,12,12, 0,10,10, 0,11,11, 0,12,12,
+ 0,11,11, 0,14,14, 0,11,11, 0,12,12, 0,15,15, 0,
+ 11,11, 7, 8, 8,12,11,10,12,10,10,12,11,11,15,13,
+ 13,14,11,11,12,10,10,16,14,14,14,10,10, 8, 7, 7,
+ 12,11,11,12,11,11,12,11,11,15,14,14,14,12,12,13,
+ 12,12,15,14,14,15,13,13, 0,11,11, 0,12,12, 0,12,
+ 12, 0,12,12, 0,15,15, 0,12,12, 0,13,13, 0,15,14,
+ 0,12,12,
+};
+
+static const static_codebook _44p4_p4_0 = {
+ 5, 243,
+ (char *)_vq_lengthlist__44p4_p4_0,
+ 1, -531365888, 1616117760, 2, 0,
+ (long *)_vq_quantlist__44p4_p4_0,
+ 0
+};
+
+static const long _vq_quantlist__44p4_p4_1[] = {
+ 2,
+ 1,
+ 3,
+ 0,
+ 4,
+};
+
+static const char _vq_lengthlist__44p4_p4_1[] = {
+ 4, 5, 5, 9, 9,12, 9, 9,12,12,12,10,10,13,13,13,
+ 11,11,12,12,13,13,13,12,12,13,10,10,13,13,13,13,
+ 13,13,13,13,10,10,13,12,13,11,11,13,13,13,14,14,
+ 13,12,13,10,10,13,13,12,13,13,13,13,13,10,10,12,
+ 12,13,11,11,13,13,13,14,14,12,12,13,12,12,13,13,
+ 13,13,13,13,13,13,11,11,12,12,13,11,11,13,13,13,
+ 14,14,12,12,13,14,14,13,13,14,13,13,14,14,14,14,
+ 14,12,12,13,14,14,13,13,14,14,14,12,12,12, 8, 8,
+ 12,12,13,12,12,11,11,13,11,11,11,11,14,12,12,11,
+ 11,14,12,12,10,11,14,12,12,12,12,14,12,12,12,12,
+ 13,13,13,11,11,14,12,12,11,11,14,12,12,12,12,14,
+ 12,12,12,12,14,12,12,12,12,14,13,13,11,11,14,12,
+ 12,11,11,14,12,12,12,12,14,13,13,12,12,14,12,12,
+ 12,12,14,13,13,11,11,14,12,12,11,11,14,13,13,11,
+ 11,15,13,13,12,12,14,12,12,12,12,15,13,13,12,12,
+ 14,12,12,11,11,15,13,13,11,11,12, 9, 9,11,11,13,
+ 7, 7,11,11,13, 8, 8,12,12,14,10,10,10,10,14,14,
+ 14,11,11,14, 8, 8,12,12,14,14,14,12,12,14, 7, 7,
+ 11,11,14, 9, 9,12,12,14,14,14,11,11,14, 8, 8,12,
+ 12,14,14,14,12,12,14, 7, 7,11,11,14, 9, 9,12,12,
+ 14,14,14,11,11,14,10,10,12,12,14,14,14,13,13,14,
+ 9, 9,11,11,14,10,10,12,11,15,14,14,11,11,14,15,
+ 15,12,12,15,14,14,14,14,15,14,14,11,11,15,14,14,
+ 12,12,15,14,14,11,11,14,11,11,10,10,15,10,10,10,
+ 10,15,10,10,10,10,15,11,11, 9, 9,15,12,13, 9, 9,
+ 15,11,11,11,11,15,13,13,11,11,15,10,10,10,10,15,
+ 11,11,10,10,15,13,13,11,11,15,11,11,11,11,15,13,
+ 13,11,11,15,10,10,10,10,15,11,11,10,10,15,13,13,
+ 10,11,15,12,12,11,11,15,13,13,11,10,15,11,11,10,
+ 10,15,11,12,10, 9,15,13,13,10,10,15,14,14,11,11,
+ 15,13,13,11,11,15,14,14,10,10,15,13,13,10,10,15,
+ 14,14,10,10,14,13,13,10,10,15,13,13,10,10,15,13,
+ 13,10,10,14,14,14, 8, 9,15,14,14, 9, 9,15,14,14,
+ 11,11,15,14,14,10,10,15,14,14,10,10,15,14,14,11,
+ 11,15,14,14,10,10,15,14,14,11,11,15,14,14,10,10,
+ 15,14,14,10,10,15,14,14,10,10,15,14,14, 9, 9,15,
+ 14,14,11,11,15,14,14,11,11,15,14,14,10,10,15,14,
+ 14,10,10,14,14,14, 9, 9,15,15,15,11,11,15,14,14,
+ 12,12,15,15,15,10,10,15,14,15,10,10,15,15,15, 9,
+ 9,15,10,10,13,13,17, 8, 8,12,12,17,10, 9,13,13,
+ 18,11,11,12,12,18,14,14,12,12,17, 9, 9,13,13,17,
+ 13,13,12,12,18, 8, 8,12,12,18,10,10,12,12,18,14,
+ 14,12,12,18,10,10,13,13,18,13,13,13,13,18, 9, 9,
+ 12,12,18,10,10,13,13,18,14,14,12,12,18,11,11,13,
+ 13,18,14,14,13,13,18,10,10,12,12,17,11,11,12,12,
+ 18,14,14,12,12,18,14,14,13,13,18,14,14,13,13,19,
+ 14,15,12,12,18,14,14,12,12,18,15,15,12,12,13, 7,
+ 7,11,11,14,15,15,11,11,14,16,15,11,11,14,15,15,
+ 11,11,14,15,15,11,11,14,15,15,11,12,14,15,15,12,
+ 12,13,15,15,11,11,14,15,15,11,11,15,15,15,12,12,
+ 14,15,15,12,12,14,16,16,12,12,14,15,15,11,11,14,
+ 15,15,11,11,15,15,15,12,12,15,15,15,12,12,14,15,
+ 15,12,12,14,15,15,11,11,14,15,15,11,11,15,14,15,
+ 12,12,15,15,15,12,12,15,16,16,12,12,15,15,15,12,
+ 12,14,15,15,12,12,15,15,15,12,12,13,13,13,11,11,
+ 14,14,15,11,11,14,14,14,12,12,14,15,15,10,10,15,
+ 15,15,11,11,14,15,15,12,12,14,14,14,11,11,14,15,
+ 15,11,11,14,15,15,12,12,15,15,15,11,11,14,15,15,
+ 12,12,14,14,15,11,11,14,15,15,11,11,14,15,15,12,
+ 12,15,15,15,11,11,15,15,15,12,12,14,15,15,12,12,
+ 14,15,15,10,10,14,15,15,11,11,15,15,15,10,10,15,
+ 15,15,12,12,15,15,15,14,14,15,15,15,11,11,15,15,
+ 15,11,11,15,15,15,11,11,14,10,10,10,10,15, 9, 9,
+ 12,11,15,10,10,12,12,15,11,11,11,11,15,13,13,12,
+ 12,16,10,10,12,12,15,13,13,12,12,15, 9, 9,11,11,
+ 15,10,10,13,12,15,13,13,11,11,15,10,10,12,12,15,
+ 13,13,12,12,15, 9, 9,11,11,15,10,10,12,12,15,13,
+ 13,11,11,15,11,11,12,12,15,13,13,13,13,15,10,10,
+ 11,11,15,11,11,12,12,15,13,14,11,11,15,14,14,13,
+ 13,16,14,14,20,19,15,14,14,11,11,15,13,14,12,12,
+ 15,14,14,11,11,14,13,13,10,10,14,14,13,11,11,15,
+ 13,14,12,12,15,14,14,12,12,15,14,14,11,11,15,14,
+ 14,12,12,15,15,14,13,13,15,14,14,11,11,15,14,14,
+ 11,11,15,14,14,13,13,15,14,14,12,12,15,14,14,13,
+ 13,15,14,14,11,11,15,14,14,11,11,15,14,14,13,13,
+ 15,14,14,12,12,15,14,14,12,12,15,14,14,12,12,15,
+ 14,14,11,11,15,15,15,12,12,15,15,15,13,13,16,14,
+ 14,12,12,15,15,15,13,13,15,15,15,12,12,15,15,15,
+ 12,12,14,10,10,13,13,17, 9, 9,12,12,17, 9, 9,13,
+ 13,17,11,11,12,12,18,14,14,12,12,18,10,10,13,13,
+ 18,14,13,12,12,18, 9, 9,12,12,18,10,10,12,13,18,
+ 14,14,12,12,17, 9, 9,12,12,17,13,14,12,12,17, 9,
+ 9,12,12,17,10,10,12,12,17,14,14,11,11,18,11,11,
+ 12,12,18,14,14,12,13,18,10,10,12,12,18,11,11,12,
+ 12,18,14,14,11,11,18,15,15,12,12,18,14,14,13,13,
+ 18,14,15,12,12,17,14,14,12,12,17,15,15,12,12,13,
+ 7, 7,11,11,14,15,15,11,11,14,15,15,11,11,14,15,
+ 15,11,11,14,15,15,11,11,14,15,15,11,11,14,15,15,
+ 12,12,14,15,15,11,11,14,15,15,11,11,15,15,15,12,
+ 12,14,15,15,11,11,14,15,15,12,12,14,15,15,11,11,
+ 15,15,15,11,11,15,15,15,12,12,14,15,15,12,12,14,
+ 15,16,12,12,14,15,15,11,11,14,15,15,11,11,15,15,
+ 15,12,12,15,15,15,12,12,15,16,16,12,12,15,15,15,
+ 12,12,15,15,15,12,12,15,15,15,12,12,13,13,13,12,
+ 12,14,14,14,11,11,14,14,14,12,12,14,14,14,10,10,
+ 15,15,15,11,11,14,15,15,12,12,14,14,14,11,11,14,
+ 15,15,11,11,14,14,14,12,12,15,15,14,11,11,14,15,
+ 15,12,12,14,14,14,11,11,14,15,15,11,11,14,14,14,
+ 11,11,15,14,14,10,10,14,15,15,12,12,14,14,14,12,
+ 12,14,15,15,10,10,14,15,15,11,11,15,15,15,10,10,
+ 15,15,15,12,12,15,14,14,13,13,15,15,15,10,10,15,
+ 14,14,11,11,15,15,15,10,10,14,10,10,10,10,14, 9,
+ 9,12,12,15,10,10,12,12,14,11,11,11,11,15,13,14,
+ 12,12,15,10,10,13,13,15,13,13,12,12,15, 9, 9,12,
+ 12,15,10,10,13,13,15,13,14,11,11,15,10,10,12,12,
+ 15,13,13,12,12,15, 9, 9,11,11,15,10,10,12,12,15,
+ 13,13,11,11,15,11,11,12,12,15,13,13,13,13,15,10,
+ 10,11,11,15,11,11,12,12,15,14,14,11,11,15,14,14,
+ 13,13,15,14,14,20,19,15,14,14,11,11,15,14,14,12,
+ 12,15,14,14,11,11,14,13,13,11,11,15,13,13,11,11,
+ 15,14,13,12,12,15,14,14,11,12,15,14,14,11,11,15,
+ 14,14,12,12,14,14,14,13,13,15,14,14,11,11,15,14,
+ 14,11,11,15,14,14,13,13,15,14,14,12,12,15,14,14,
+ 13,13,14,14,14,11,11,15,14,14,11,11,15,14,14,13,
+ 13,15,14,14,12,12,15,14,14,12,12,15,14,14,12,12,
+ 15,14,14,11,11,14,14,14,12,12,15,15,15,13,13,16,
+ 14,14,12,12,15,15,15,13,13,15,14,14,12,12,15,15,
+ 15,12,12,15,11,11,13,13,18,10,10,12,12,17,11,11,
+ 12,12,18,12,12,11,11,18,14,14,12,12,18,10,10,13,
+ 13,18,14,14,12,12,18,10,10,12,12,18,11,11,12,12,
+ 18,14,14,12,12,18,11,11,12,13,18,14,14,12,12,18,
+ 10,10,12,12,18,11,11,12,12,18,14,14,11,11,18,11,
+ 11,12,12,18,14,14,12,12,17,10,10,11,11,17,12,12,
+ 11,11,17,14,14,11,11,18,15,15,12,12,18,14,14,13,
+ 13,18,15,15,11,11,18,15,14,12,12,18,15,15,11,11,
+ 14, 8, 8,11,11,14,15,15,10,10,14,15,15,11,11,14,
+ 15,15,11,11,15,15,15,12,12,15,15,15,11,11,15,15,
+ 15,12,12,14,15,15,10,10,15,15,15,11,11,15,15,15,
+ 12,12,15,15,15,11,11,15,15,15,13,13,14,15,15,10,
+ 10,15,15,15,11,11,15,15,15,12,12,15,15,15,12,12,
+ 15,16,16,12,12,15,14,14,11,11,15,15,15,11,11,15,
+ 15,15,12,12,16,15,15,13,13,15,16,16,13,13,16,15,
+ 15,12,12,15,15,15,12,12,15,15,15,12,12,14,13,13,
+ 11,11,14,14,14,11,11,14,14,14,12,12,15,14,14,11,
+ 11,15,15,14,11,11,15,14,14,12,12,15,14,14,12,12,
+ 14,15,15,11,11,15,14,14,12,12,15,14,14,11,11,15,
+ 14,15,12,12,15,14,14,12,12,14,15,15,11,11,15,14,
+ 14,11,11,15,14,14,11,11,15,15,14,12,12,15,14,14,
+ 12,12,15,15,15,10,11,15,14,14,11,11,15,15,15,10,
+ 10,15,15,15,12,12,16,14,14,13,13,15,15,15,11,11,
+ 15,14,14,11,11,15,15,15,11,11,14,11,11, 9, 9,14,
+ 10,10,12,12,15,11,11,12,12,15,12,12,12,12,15,14,
+ 14,13,13,15,11,11,12,12,15,14,14,13,13,14,10,10,
+ 12,12,15,11,11,13,13,15,14,14,12,12,15,10,10,12,
+ 12,14,14,14,13,13,14,10,10,11,11,15,11,11,12,12,
+ 15,14,14,12,12,15,12,12,13,13,15,14,14,14,14,15,
+ 11,11,11,11,15,12,11,12,12,15,14,14,11,11,15,15,
+ 15,13,14,15,14,14,20,19,15,14,14,12,12,15,14,14,
+ 13,13,15,14,14,12,12,14,13,13,10,10,14,13,13,11,
+ 11,14,13,13,11,11,15,14,14,12,12,15,14,14,12,12,
+ 15,14,14,12,11,14,14,14,13,13,15,14,14,11,11,15,
+ 14,14,11,11,15,14,14,14,14,15,14,14,11,12,15,14,
+ 14,13,13,14,14,14,11,11,15,14,14,11,11,15,14,14,
+ 14,14,15,14,14,12,12,15,14,14,13,13,15,14,14,11,
+ 11,14,14,14,12,12,15,14,14,13,13,15,15,15,13,13,
+ 15,14,14,13,13,15,15,15,13,13,15,14,14,13,13,15,
+ 15,15,13,13,15,14,14,13,13,18,15,15,12,12,18,15,
+ 15,12,12,18,16,16,11,11,18,17,17,12,12,18,15,15,
+ 13,13,18,17,17,12,12,18,15,15,12,12,18,15,16,12,
+ 12,18,17,17,12,12,18,15,15,13,12,17,16,17,12,12,
+ 17,15,15,11,12,18,15,15,12,12,18,17,17,11,11,18,
+ 16,16,12,12,18,17,16,12,12,18,15,15,11,11,18,15,
+ 15,12,12,18,17,17,11,11,18,17,17,12,12,18,16,16,
+ 13,13,18,17,17,11,11,17,16,16,11,11,18,17,17,11,
+ 11,15,15,15,11,11,16,15,15,11,11,16,15,15,11,11,
+ 16,15,15,12,12,17,15,15,14,14,16,15,15,11,11,17,
+ 15,15,14,14,16,15,15,11,11,16,15,15,12,12,18,15,
+ 15,13,13,16,15,15,11,11,17,15,15,14,14,16,15,15,
+ 11,11,16,15,15,12,12,17,15,15,13,13,16,15,15,12,
+ 12,17,16,15,14,14,16,15,15,11,11,16,15,15,12,12,
+ 18,15,15,13,13,17,15,15,14,14,17,16,16,15,15,18,
+ 14,15,13,13,18,15,15,14,14,18,15,15,13,13,15,13,
+ 13,12,12,15,14,14,12,12,16,14,14,12,12,16,14,14,
+ 12,12,17,14,15,12,12,16,14,14,12,12,17,14,14,13,
+ 13,16,15,15,12,12,16,14,14,12,12,17,14,14,12,12,
+ 16,14,14,12,12,17,14,14,13,13,15,15,15,11,11,16,
+ 14,14,12,12,17,14,14,12,12,16,15,15,12,12,17,14,
+ 14,13,12,16,15,15,11,11,16,14,14,12,12,17,15,15,
+ 11,11,17,15,15,13,13,17,14,14,13,13,18,15,15,12,
+ 12,17,14,14,12,12,17,15,15,12,12,14,15,15, 9, 9,
+ 14,15,15,12,12,15,16,15,13,13,15,15,15,14,14,15,
+ 15,15,21,19,15,15,15,13,13,15,15,15,19,19,15,15,
+ 15,12,12,15,16,16,14,14,15,15,15,19,19,15,16,15,
+ 13,13,15,16,16,19,20,15,15,15,12,13,15,16,16,14,
+ 14,15,15,15,20,19,15,15,15,14,14,15,16,16,19,19,
+ 15,15,15,14,13,15,15,15,14,14,15,15,15,19,19,15,
+ 16,16,20,19,15,17,16,21,20,15,15,15,20,19,15,16,
+ 16,20,20,15,15,15,19,20,14,13,13,10,10,14,14,14,
+ 11,11,14,14,14,12,12,15,14,14,13,13,15,15,14,20,
+ 20,15,14,14,12,12,14,14,14,19,19,15,14,14,11,11,
+ 15,14,14,12,12,15,14,14,20,19,15,14,14,12,12,14,
+ 14,14,20,20,14,14,14,11,11,15,14,14,12,12,15,14,
+ 14,20,21,15,14,14,13,13,15,14,14,20,20,15,14,14,
+ 12,12,15,14,14,13,13,14,15,15,20,20,15,15,15,20,
+ 19,15,14,14,20,19,15,15,15,20,20,15,14,14,21,20,
+ 15,15,15,20,20,
+};
+
+static const static_codebook _44p4_p4_1 = {
+ 5, 3125,
+ (char *)_vq_lengthlist__44p4_p4_1,
+ 1, -533725184, 1611661312, 3, 0,
+ (long *)_vq_quantlist__44p4_p4_1,
+ 0
+};
+
+static const long _vq_quantlist__44p4_p5_0[] = {
+ 2,
+ 1,
+ 3,
+ 0,
+ 4,
+};
+
+static const char _vq_lengthlist__44p4_p5_0[] = {
+ 1, 7, 6,15,15, 7, 8, 8,15,15, 8, 8, 8,15,15, 0,
+ 13,13,16,16, 0,14,14,16,16, 7, 9, 9,16,16,10,11,
+ 11,17,17,10, 8, 8,15,16, 0,14,14,18,18, 0,14,14,
+ 16,16, 9, 9, 9,16,16,12,11,11,17,17,10, 9, 9,15,
+ 15, 0,14,14,19,19, 0,14,14,16,16, 0,15,15,18,17,
+ 0, 0, 0,20,20, 0,13,13,16,16, 0,17,17,22,20, 0,
+ 15,15,17,17, 0,15,15,18,18, 0,22,21,20,21, 0,13,
+ 13,16,16, 0,18,18, 0,22, 0,15,15,17,17, 6, 7, 7,
+ 13,13, 9,10,10,15,15,11,10,10,15,15, 0,21,22,18,
+ 18, 0, 0, 0,18,18,10,10,10,15,15,12,13,13,17,17,
+ 12,11,11,15,15, 0,22,22,18,18, 0, 0,21,18,18,12,
+ 11,11,15,15,15,14,14,18,18,13,11,11,15,15, 0, 0,
+ 21,18,19, 0,21,22,18,19, 0,22, 0,18,19, 0, 0, 0,
+ 0, 0, 0,21,21,18,18, 0,22, 0, 0,21, 0, 0, 0,19,
+ 18, 0, 0, 0,18,19, 0, 0, 0, 0, 0, 0,20,20,18,17,
+ 0, 0,22, 0,21, 0, 0, 0,19,19, 6, 6, 6,13,13, 8,
+ 6, 6,11,11, 9, 7, 7,13,13, 0,10,10,11,11, 0,12,
+ 12,14,14, 9, 8, 8,14,14,12,10,10,13,13,10, 7, 7,
+ 13,13, 0,11,11,15,15, 0,11,11,13,13, 9, 8, 8,14,
+ 14,13,10,10,13,14,11, 7, 7,13,13, 0,11,11,15,15,
+ 0,11,11,13,13, 0,12,12,15,15, 0,21,21,17,17, 0,
+ 10,10,13,13, 0,14,14,20,20, 0,12,12,13,13, 0,12,
+ 12,15,15, 0,21,22,17,18, 0,10,10,13,13, 0,16,16,
+ 20,21, 0,12,12,13,13, 0,11,11,13,13, 0,12,12,16,
+ 16, 0,12,12,16,16, 0,16,16, 0,21, 0,17,18, 0, 0,
+ 0,12,12,15,15, 0,15,15,18,18, 0,12,12,16,16, 0,
+ 16,16,21,22, 0,17,17,22,21, 0,12,12,16,16, 0,15,
+ 15,19,19, 0,12,12,16,16, 0,16,16,22,22, 0,17,16,
+ 22, 0, 0,17,18, 0, 0, 0, 0, 0, 0, 0, 0,15,15,21,
+ 20, 0,19,20, 0,22, 0,18,18, 0, 0, 0,18,17, 0, 0,
+ 0, 0, 0, 0, 0, 0,16,16,22,21, 0,20,20, 0,22, 0,
+ 20,19, 0, 0, 0,11,11,12,12, 0,10,10,11,11, 0,11,
+ 11,12,12, 0,12,12,10,10, 0,13,13,12,12, 0,11,11,
+ 13,13, 0,13,13,12,12, 0,10,10,12,12, 0,13,13,14,
+ 13, 0,12,12,12,12, 0,12,12,13,13, 0,14,14,13,13,
+ 0,10,10,12,12, 0,13,13,14,14, 0,13,12,12,12, 0,
+ 14,14,14,14, 0,21,21,16,16, 0,12,12,12,12, 0,16,
+ 16,20,21, 0,13,13,11,11, 0,14,14,14,14, 0,20,20,
+ 16,15, 0,12,12,12,12, 0,17,17,20,20, 0,13,13,11,
+ 11, 7, 8, 8,16,16,11,10,10,15,15,12,10,10,17,17,
+ 0,14,14,16,15, 0,15,15,17,17,11, 9, 9,16,16,14,
+ 12,12,17,17,13, 9, 9,16,15, 0,14,14,19,18, 0,14,
+ 14,16,16,12,10,10,17,18,16,13,13,17,18,14,10,10,
+ 16,16, 0,14,14,19,19, 0,14,15,17,17, 0,15,15,18,
+ 19, 0, 0, 0,20,20, 0,13,13,17,17, 0,17,18, 0,22,
+ 0,15,15,16,17, 0,15,15,18,18, 0, 0, 0,20,21, 0,
+ 14,14,17,17, 0,19,18, 0, 0, 0,16,16,17,17, 8, 7,
+ 7,14,14,12,11,11,15,15,13,11,11,15,15, 0, 0, 0,
+ 18,19, 0,21,20,18,18,12,10,11,15,16,14,13,13,18,
+ 18,14,11,11,15,15, 0,20,20,19,18, 0,20, 0,18,18,
+ 13,11,11,16,16,17,15,15,19,19,14,12,12,15,15, 0,
+ 21, 0,18,20, 0,22,22,18,19, 0,22,22,19,19, 0, 0,
+ 0, 0, 0, 0,21,22,19,18, 0, 0, 0, 0,21, 0, 0, 0,
+ 19,19, 0, 0,22,20,20, 0, 0, 0, 0, 0, 0,22, 0,18,
+ 18, 0, 0, 0, 0,22, 0, 0, 0,19,20,11,10,10,14,14,
+ 14,11,11,13,13,14,11,11,15,15, 0,14,13,12,12, 0,
+ 15,15,16,16,13,11,11,15,15,16,13,13,15,15,15,10,
+ 10,14,15, 0,14,14,16,16, 0,14,14,15,15,13,11,11,
+ 15,15,18,14,14,15,15,15,10,10,15,14, 0,14,14,16,
+ 16, 0,14,14,15,15, 0,15,15,17,16, 0,21,22,18,18,
+ 0,13,13,14,14, 0,18,17,20,21, 0,15,15,14,14, 0,
+ 15,16,16,17, 0, 0, 0,19,18, 0,13,13,15,14, 0,19,
+ 19, 0, 0, 0,15,15,14,14, 0,12,12,14,13, 0,13,13,
+ 16,16, 0,12,12,16,16, 0,16,16,22, 0, 0,17,18, 0,
+ 22, 0,13,13,16,16, 0,15,15,18,18, 0,12,12,16,16,
+ 0,16,16,22,22, 0,17,17, 0, 0, 0,13,13,17,17, 0,
+ 16,16,19,20, 0,12,12,17,17, 0,17,17,22, 0, 0,17,
+ 17,22,21, 0,18,18, 0, 0, 0, 0, 0, 0, 0, 0,16,16,
+ 21,21, 0,19,19, 0, 0, 0,18,18, 0,22, 0,18,18, 0,
+ 22, 0, 0, 0, 0, 0, 0,16,16,22, 0, 0,20,20, 0, 0,
+ 0,19,18, 0, 0, 0,12,12,15,15, 0,12,12,15,14, 0,
+ 13,13,15,15, 0,14,14,14,14, 0,15,15,16,16, 0,13,
+ 13,15,16, 0,15,15,16,16, 0,12,12,15,15, 0,14,14,
+ 16,16, 0,14,14,15,15, 0,13,13,15,16, 0,15,15,16,
+ 16, 0,12,12,15,15, 0,15,15,17,17, 0,14,14,15,15,
+ 0,15,15,17,17, 0,21,21,19,19, 0,13,13,14,14, 0,
+ 17,17,22, 0, 0,14,14,15,15, 0,15,15,17,17, 0,22,
+ 0,18,20, 0,13,13,15,15, 0,18,18, 0,22, 0,15,15,
+ 14,15, 8, 8, 8,17,16,12,10,10,16,16,13,10,10,17,
+ 16, 0,15,15,17,17, 0,15,15,17,17,12,11,11,18,18,
+ 15,12,12,18,18,15,10,10,16,17, 0,14,14,18,18, 0,
+ 14,14,17,17,13,10,10,16,16,17,14,14,17,17,15,10,
+ 10,16,15, 0,15,15,19,20, 0,14,14,15,16, 0,16,16,
+ 19,19, 0, 0, 0,21,22, 0,13,13,17,17, 0,18,17, 0,
+ 21, 0,15,15,17,17, 0,15,15,18,19, 0, 0,22, 0,21,
+ 0,13,13,16,17, 0,19,19, 0,22, 0,16,15,16,16, 9,
+ 8, 8,14,14,12,11,11,15,15,13,11,11,15,15, 0,21,
+ 20,19,18, 0, 0, 0,19,18,12,11,11,16,15,15,13,13,
+ 17,18,14,11,11,15,15, 0,22,22,19,18, 0,22,21,18,
+ 18,14,11,11,15,15,17,14,14,18,18,15,12,12,15,15,
+ 0,22,22,20,19, 0, 0,21,18,18, 0, 0,22,20,20, 0,
+ 0, 0, 0, 0, 0,20,21,18,18, 0, 0, 0,21,21, 0, 0,
+ 0,20,19, 0,22,21,19,19, 0, 0, 0, 0, 0, 0, 0,22,
+ 17,18, 0, 0,22, 0,22, 0,22, 0,19,19, 0,11,11,15,
+ 15, 0,11,11,14,14, 0,12,12,15,15, 0,15,15,14,14,
+ 0,16,16,16,16, 0,12,12,16,16, 0,14,14,16,16, 0,
+ 11,11,15,15, 0,15,15,17,17, 0,15,15,15,15, 0,12,
+ 12,16,16, 0,14,14,15,15, 0,11,11,15,15, 0,15,15,
+ 17,17, 0,15,15,14,15, 0,16,16,17,17, 0, 0, 0,19,
+ 19, 0,14,14,15,15, 0,18,18,21, 0, 0,15,15,14,15,
+ 0,16,16,17,17, 0,21, 0,19,19, 0,14,14,15,15, 0,
+ 20,20,22, 0, 0,16,15,14,14, 0,12,12,13,13, 0,12,
+ 12,16,16, 0,12,12,16,16, 0,16,16,22,21, 0,18,17,
+ 21, 0, 0,13,13,16,16, 0,15,15,18,19, 0,12,12,16,
+ 16, 0,16,17,22, 0, 0,17,17, 0,22, 0,13,13,17,16,
+ 0,15,15,19,19, 0,12,12,16,16, 0,16,16,21,20, 0,
+ 17,16,22, 0, 0,18,18,22,21, 0, 0, 0, 0, 0, 0,15,
+ 16,21,21, 0,19,19, 0, 0, 0,18,17, 0, 0, 0,18,18,
+ 21, 0, 0, 0, 0, 0, 0, 0,16,16,22,22, 0,20,21, 0,
+ 0, 0,18,19, 0,22, 0,13,13,16,16, 0,12,12,15,15,
+ 0,13,13,16,16, 0,14,14,15,15, 0,15,15,17,17, 0,
+ 13,13,17,16, 0,15,15,17,17, 0,12,12,16,16, 0,15,
+ 15,17,17, 0,14,14,16,16, 0,13,13,16,17, 0,15,15,
+ 17,17, 0,12,12,16,16, 0,14,14,17,17, 0,14,14,16,
+ 16, 0,16,16,17,17, 0,21, 0,21,19, 0,13,13,16,16,
+ 0,17,17, 0, 0, 0,15,15,16,16, 0,16,15,18,18, 0,
+ 22, 0,20,20, 0,13,13,15,15, 0,18,18, 0, 0, 0,15,
+ 15,15,15, 0,12,12,17,17, 0,14,14,17,17, 0,14,14,
+ 17,17, 0,17,17,18,17, 0,17,17,19,18, 0,13,13,17,
+ 17, 0,16,16,18,18, 0,13,13,16,16, 0,17,17,19,19,
+ 0,16,16,17,17, 0,13,13,18,18, 0,17,17,18,18, 0,
+ 13,13,17,17, 0,17,17,19,19, 0,16,17,17,17, 0,17,
+ 17,19,19, 0,21, 0,21,19, 0,14,14,16,16, 0,20,19,
+ 0,21, 0,16,16,16,16, 0,17,18,19,19, 0, 0, 0, 0,
+ 21, 0,15,15,16,17, 0,21,20, 0, 0, 0,17,18,16,17,
+ 0, 9, 9,14,14, 0,14,14,15,16, 0,14,14,15,15, 0,
+ 0, 0,18,18, 0,21, 0,18,19, 0,12,12,15,15, 0,16,
+ 16,17,17, 0,14,14,14,14, 0,22, 0,19,18, 0,22, 0,
+ 17,18, 0,14,14,16,15, 0,18,18,19,18, 0,14,15,15,
+ 15, 0, 0,21,20,20, 0, 0, 0,18,18, 0,21,21,19,19,
+ 0, 0, 0, 0, 0, 0,21,21,18,18, 0,22, 0,20,20, 0,
+ 22, 0,19,19, 0,22, 0,19,20, 0, 0, 0, 0, 0, 0, 0,
+ 21,17,18, 0, 0, 0,22,22, 0, 0, 0,19,18, 0,18,20,
+ 16,16, 0,21,20,17,17, 0, 0,21,18,18, 0,22,21,18,
+ 18, 0, 0,22,19,19, 0,20,20,17,17, 0, 0, 0,18,18,
+ 0,19,20,17,17, 0,22, 0,19,21, 0,22,21,18,18, 0,
+ 20,19,17,18, 0, 0, 0,19,19, 0,20,20,17,17, 0,22,
+ 22,21,21, 0,20, 0,18,18, 0,22,22,18,18, 0, 0, 0,
+ 20,22, 0,20,20,16,16, 0, 0, 0,21, 0, 0,21,20,16,
+ 17, 0,22, 0,19,20, 0, 0, 0,21,20, 0,19,21,17,17,
+ 0, 0, 0, 0, 0, 0,21,21,17,17, 0,12,12,13,13, 0,
+ 14,14,16,16, 0,14,14,16,16, 0,18,18, 0, 0, 0,19,
+ 18,22, 0, 0,13,13,16,16, 0,16,16,18,18, 0,13,13,
+ 16,16, 0,17,18,21, 0, 0,18,18,21, 0, 0,13,13,16,
+ 16, 0,17,17,19,20, 0,13,13,16,17, 0,18,18,21, 0,
+ 0,18,18,21, 0, 0,18,19, 0,21, 0, 0, 0, 0, 0, 0,
+ 16,16,21,20, 0,20,20, 0, 0, 0,18,19, 0, 0, 0,18,
+ 18, 0, 0, 0, 0, 0, 0, 0, 0,16,16, 0,21, 0,22,22,
+ 0, 0, 0,19,19, 0, 0, 0,16,16,19,20, 0,17,16,22,
+ 21, 0,17,17,21,20, 0,19,18, 0,22, 0,19,19,22,22,
+ 0,16,15,22,22, 0,19,19, 0,21, 0,15,15,20,20, 0,
+ 18,19, 0,21, 0,18,18,22,22, 0,16,16,21,20, 0,20,
+ 19,21,22, 0,16,15,20,20, 0,19,19, 0,22, 0,18,18,
+ 21, 0, 0,19,18,21,22, 0, 0, 0, 0, 0, 0,16,16,19,
+ 21, 0,20,22, 0,22, 0,18,18,20,21, 0,19,18, 0,22,
+ 0, 0, 0,22, 0, 0,16,16,20,20, 0,21,21, 0, 0, 0,
+ 18,18,21, 0, 0,12,12,17,17, 0,15,14,17,17, 0,14,
+ 14,18,18, 0,17,17,17,18, 0,18,18,18,18, 0,13,13,
+ 18,18, 0,16,17,19,18, 0,13,13,16,17, 0,17,17,18,
+ 19, 0,17,17,17,17, 0,13,13,17,17, 0,17,18,18,18,
+ 0,13,13,16,16, 0,18,18,19,20, 0,16,17,17,16, 0,
+ 17,18,19,18, 0, 0, 0,22,21, 0,15,15,16,16, 0,20,
+ 20,21,22, 0,17,17,16,16, 0,16,17,18,18, 0, 0, 0,
+ 21,21, 0,15,15,16,16, 0,21,20, 0, 0, 0,17,17,16,
+ 16, 0,10,10,14,14, 0,14,14,15,15, 0,14,14,15,15,
+ 0,22, 0,18,18, 0, 0, 0,19,19, 0,13,13,15,16, 0,
+ 17,16,18,18, 0,14,14,15,15, 0,21,21,19,18, 0,22,
+ 21,18,17, 0,14,14,15,15, 0,18,18,19,18, 0,15,15,
+ 14,14, 0,22,21,19,19, 0,22,21,17,18, 0, 0, 0,19,
+ 19, 0, 0, 0, 0, 0, 0,20,22,17,17, 0, 0,22,22,20,
+ 0, 0, 0,19,18, 0,21,22,19,18, 0, 0, 0, 0, 0, 0,
+ 22,22,17,18, 0, 0, 0,21,22, 0, 0, 0,19,18, 0,20,
+ 20,17,17, 0,21,21,17,18, 0,21,22,18,18, 0,21, 0,
+ 18,18, 0,22, 0,19,19, 0,19,21,18,18, 0, 0,22,18,
+ 18, 0,22,21,17,17, 0,22, 0,20,20, 0, 0, 0,18,18,
+ 0,22,21,18,18, 0,21, 0,19,19, 0,20,21,17,17, 0,
+ 0,22,22,20, 0,21,22,17,17, 0, 0,21,19,18, 0, 0,
+ 0,21,21, 0,21,20,16,17, 0, 0, 0, 0, 0, 0,21, 0,
+ 17,17, 0,21, 0,19,20, 0, 0, 0,20,22, 0,20,20,17,
+ 17, 0, 0, 0, 0, 0, 0,21,21,17,17, 0,12,12,13,13,
+ 0,14,14,16,16, 0,14,14,16,16, 0,18,18,21, 0, 0,
+ 19,19,22, 0, 0,13,13,16,16, 0,16,16,18,18, 0,13,
+ 13,16,16, 0,18,18,21,22, 0,18,18, 0,22, 0,13,13,
+ 16,16, 0,17,17,20,18, 0,13,13,16,16, 0,19,18, 0,
+ 22, 0,18,18,22,21, 0,18,19, 0, 0, 0, 0, 0, 0, 0,
+ 0,16,16,21,21, 0,21,21, 0, 0, 0,18,19, 0, 0, 0,
+ 19,19,21, 0, 0, 0, 0, 0, 0, 0,16,16, 0,21, 0,20,
+ 20, 0, 0, 0,20,20, 0, 0, 0,16,16,21,20, 0,18,17,
+ 21,22, 0,17,18, 0,21, 0,18,19,22,22, 0,19,19, 0,
+ 22, 0,16,17,21,22, 0,20,19, 0, 0, 0,16,16,20,21,
+ 0,19,19, 0, 0, 0,19,19, 0,22, 0,17,17,21,21, 0,
+ 19,20, 0, 0, 0,16,16, 0,20, 0,19,20, 0,21, 0,18,
+ 18, 0,22, 0,19,20,22,22, 0, 0, 0, 0,22, 0,17,17,
+ 0,21, 0,21,21, 0, 0, 0,18,19,23,21, 0,20,19, 0,
+ 0, 0, 0, 0, 0, 0, 0,17,17, 0,20, 0, 0, 0, 0, 0,
+ 0,19,19,23,22,
+};
+
+static const static_codebook _44p4_p5_0 = {
+ 5, 3125,
+ (char *)_vq_lengthlist__44p4_p5_0,
+ 1, -528744448, 1616642048, 3, 0,
+ (long *)_vq_quantlist__44p4_p5_0,
+ 0
+};
+
+static const long _vq_quantlist__44p4_p5_1[] = {
+ 3,
+ 2,
+ 4,
+ 1,
+ 5,
+ 0,
+ 6,
+};
+
+static const char _vq_lengthlist__44p4_p5_1[] = {
+ 2, 3, 3, 3, 3, 3, 3,
+};
+
+static const static_codebook _44p4_p5_1 = {
+ 1, 7,
+ (char *)_vq_lengthlist__44p4_p5_1,
+ 1, -533200896, 1611661312, 3, 0,
+ (long *)_vq_quantlist__44p4_p5_1,
+ 0
+};
+
+static const long _vq_quantlist__44p4_p6_0[] = {
+ 1,
+ 0,
+ 2,
+};
+
+static const char _vq_lengthlist__44p4_p6_0[] = {
+ 1, 7, 7, 7, 8, 8, 7, 8, 8, 7, 9, 9,11,11,11, 9,
+ 8, 8, 8, 9, 9,12,11,12, 9, 8, 8, 6, 7, 7,10,11,
+ 11,10,10,10,11,11,11,14,14,14,12,11,12,11,11,11,
+ 15,15,14,13,12,12, 5, 6, 6, 8, 5, 5, 8, 7, 7, 8,
+ 7, 7,12,10,10,10, 7, 6, 9, 8, 8,12,10,10,10, 6,
+ 6, 7, 8, 8,12,10,10,12,10,10,11,10,10,16,14,14,
+ 13,10,10,12,10,10,15,14,14,14,10,10, 7, 7, 7,13,
+ 11,11,13,11,11,12,11,11,16,14,14,14,12,12,12,11,
+ 11,18,15,15,14,12,12,10, 9,10,14,11,11,13,11,11,
+ 12,11,11,17,14,14,14,11,11,13,11,11,16,15,15,14,
+ 11,11, 7, 8, 8,13,11,11,12,10,10,12,10,10,16,14,
+ 13,13,10,10,12,10,10,17,14,14,14,10,10, 8, 7, 7,
+ 12,11,11,13,11,11,12,11,11,16,15,14,14,12,12,12,
+ 11,11,16,15,15,14,12,12,11,10,10,14,11,11,13,11,
+ 11,13,11,11,17,14,14,14,11,11,13,11,11,18,14,15,
+ 15,11,10,
+};
+
+static const static_codebook _44p4_p6_0 = {
+ 5, 243,
+ (char *)_vq_lengthlist__44p4_p6_0,
+ 1, -527106048, 1620377600, 2, 0,
+ (long *)_vq_quantlist__44p4_p6_0,
+ 0
+};
+
+static const long _vq_quantlist__44p4_p6_1[] = {
+ 1,
+ 0,
+ 2,
+};
+
+static const char _vq_lengthlist__44p4_p6_1[] = {
+ 2, 6, 6, 6, 7, 7, 7, 7, 7, 7, 8, 8, 9, 9, 9, 9,
+ 7, 7, 8, 8, 8, 9, 9, 9, 9, 8, 8, 6, 7, 7, 8, 8,
+ 8, 8, 8, 8, 9, 8, 8, 9, 8, 9, 9, 8, 8,10, 8, 8,
+ 10, 9, 9,10, 8, 8, 6, 6, 6, 8, 6, 6, 8, 7, 7, 8,
+ 7, 7,10, 8, 8, 9, 7, 7, 9, 7, 7,10, 8, 8, 9, 7,
+ 7, 7, 7, 7,10, 8, 8,11, 9, 9,10, 9, 9,11, 9, 9,
+ 11, 8, 8,11, 9, 9,12, 9, 9,12, 8, 8, 7, 7, 7,10,
+ 9, 9,10, 9, 9,10, 9, 9,11,10,10,10, 9, 9,11, 9,
+ 10,11,10,11,10, 9, 9, 9, 8, 8,10, 9, 9,10, 9, 9,
+ 11, 9, 9,11,10,10,11, 9, 9,11, 9, 9,11,10,10,11,
+ 9, 9, 8, 8, 8,11, 9, 9,11, 9, 9,11, 9, 9,12, 9,
+ 9,12, 8, 8,11, 9, 9,12, 9, 9,12, 8, 8, 8, 7, 7,
+ 10, 9, 9,10, 9, 9,10, 9, 9,11,11,11,11, 9, 9,11,
+ 10,10,11,11,11,11, 9, 9,10, 9, 9,11, 9, 9,11, 9,
+ 10,11,10,10,11,10,10,11, 9, 9,11,10,10,11,10,10,
+ 11, 9, 9,
+};
+
+static const static_codebook _44p4_p6_1 = {
+ 5, 243,
+ (char *)_vq_lengthlist__44p4_p6_1,
+ 1, -530841600, 1616642048, 2, 0,
+ (long *)_vq_quantlist__44p4_p6_1,
+ 0
+};
+
+static const long _vq_quantlist__44p4_p7_0[] = {
+ 1,
+ 0,
+ 2,
+};
+
+static const char _vq_lengthlist__44p4_p7_0[] = {
+ 1, 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, 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,
+ 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, 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, 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, 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, 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, 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, 9, 9, 9, 9,
+ 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9,
+ 9, 9, 9,
+};
+
+static const static_codebook _44p4_p7_0 = {
+ 5, 243,
+ (char *)_vq_lengthlist__44p4_p7_0,
+ 1, -513979392, 1633504256, 2, 0,
+ (long *)_vq_quantlist__44p4_p7_0,
+ 0
+};
+
+static const long _vq_quantlist__44p4_p7_1[] = {
+ 1,
+ 0,
+ 2,
+};
+
+static const char _vq_lengthlist__44p4_p7_1[] = {
+ 1, 9, 9, 7, 9, 9, 8, 8, 9, 9, 9, 9, 9, 9, 9, 8,
+ 9, 9, 7, 9, 9, 9, 9, 9, 9, 9, 9, 7, 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, 6, 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, 5, 9, 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, 8, 9, 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, 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, 5,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, 8,10,10,
+ 10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,
+ 10,10,10,10,10,10,10,10,10,10,10,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 const static_codebook _44p4_p7_1 = {
+ 5, 243,
+ (char *)_vq_lengthlist__44p4_p7_1,
+ 1, -516716544, 1630767104, 2, 0,
+ (long *)_vq_quantlist__44p4_p7_1,
+ 0
+};
+
+static const long _vq_quantlist__44p4_p7_2[] = {
+ 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 const char _vq_lengthlist__44p4_p7_2[] = {
+ 1, 3, 2, 5, 4, 7, 7, 8, 8, 9, 9,10,10,11,11,12,
+ 12,13,13,14,14,15,15,15,15,
+};
+
+static const static_codebook _44p4_p7_2 = {
+ 1, 25,
+ (char *)_vq_lengthlist__44p4_p7_2,
+ 1, -518864896, 1620639744, 5, 0,
+ (long *)_vq_quantlist__44p4_p7_2,
+ 0
+};
+
+static const long _vq_quantlist__44p4_p7_3[] = {
+ 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 const char _vq_lengthlist__44p4_p7_3[] = {
+ 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 5, 5, 5,
+ 5, 5, 5, 5, 5, 5, 5, 5, 5,
+};
+
+static const static_codebook _44p4_p7_3 = {
+ 1, 25,
+ (char *)_vq_lengthlist__44p4_p7_3,
+ 1, -529006592, 1611661312, 5, 0,
+ (long *)_vq_quantlist__44p4_p7_3,
+ 0
+};
+
+static const char _huff_lengthlist__44p4_short[] = {
+ 3, 5,16, 9, 9,13,18,21, 4, 2,21, 6, 6,10,15,21,
+ 16,19, 6, 5, 7,10,13,16, 8, 6, 5, 4, 4, 8,13,16,
+ 8, 5, 6, 4, 4, 7,12,15,13,10, 9, 7, 7, 9,13,16,
+ 18,15,13,12, 9, 7,10,14,21,18,13,13, 7, 5, 8,12,
+};
+
+static const static_codebook _huff_book__44p4_short = {
+ 2, 64,
+ (char *)_huff_lengthlist__44p4_short,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
+static const long _vq_quantlist__44p5_l0_0[] = {
+ 6,
+ 5,
+ 7,
+ 4,
+ 8,
+ 3,
+ 9,
+ 2,
+ 10,
+ 1,
+ 11,
+ 0,
+ 12,
+};
+
+static const char _vq_lengthlist__44p5_l0_0[] = {
+ 1, 4, 4, 8, 8,10,10,10,10, 9, 8,11,11, 4, 6, 5,
+ 8, 6,10,10,10,10,10, 9,10, 9, 4, 5, 6, 6, 9,10,
+ 10,10,10, 9,10, 9,10, 8, 9, 8, 9, 8, 9, 9,10, 9,
+ 11,10,12,10, 8, 8, 9, 8, 9, 9, 9, 9,10,10,11,10,
+ 12, 9,10,10,11,10,11,10,12,11,12,11,13,11, 9,10,
+ 10,10,11,10,11,11,12,11,12,11,12,11,12,12,12,12,
+ 13,12,13,12,13,12,13,13,11,12,12,12,12,12,12,12,
+ 13,13,13,13,13,12,12,12,13,13,13,13,13,13,13,13,
+ 13,13,12,13,12,13,13,13,13,13,13,13,13,13,13,12,
+ 13,13,13,14,14,13,13,13,13,13,13,13,12,13,12,13,
+ 13,13,13,13,13,13,13,13,13,
+};
+
+static const static_codebook _44p5_l0_0 = {
+ 2, 169,
+ (char *)_vq_lengthlist__44p5_l0_0,
+ 1, -526516224, 1616117760, 4, 0,
+ (long *)_vq_quantlist__44p5_l0_0,
+ 0
+};
+
+static const long _vq_quantlist__44p5_l0_1[] = {
+ 2,
+ 1,
+ 3,
+ 0,
+ 4,
+};
+
+static const char _vq_lengthlist__44p5_l0_1[] = {
+ 4, 4, 4, 5, 5, 4, 5, 5, 5, 5, 4, 5, 4, 4, 5, 5,
+ 5, 5, 5, 5, 5, 5, 5, 5, 5,
+};
+
+static const static_codebook _44p5_l0_1 = {
+ 2, 25,
+ (char *)_vq_lengthlist__44p5_l0_1,
+ 1, -533725184, 1611661312, 3, 0,
+ (long *)_vq_quantlist__44p5_l0_1,
+ 0
+};
+
+static const long _vq_quantlist__44p5_l1_0[] = {
+ 1,
+ 0,
+ 2,
+};
+
+static const char _vq_lengthlist__44p5_l1_0[] = {
+ 1, 4, 4, 4, 4, 4, 4, 4, 4,
+};
+
+static const static_codebook _44p5_l1_0 = {
+ 2, 9,
+ (char *)_vq_lengthlist__44p5_l1_0,
+ 1, -516716544, 1630767104, 2, 0,
+ (long *)_vq_quantlist__44p5_l1_0,
+ 0
+};
+
+static const char _huff_lengthlist__44p5_lfe[] = {
+ 1, 3, 2, 3,
+};
+
+static const static_codebook _huff_book__44p5_lfe = {
+ 2, 4,
+ (char *)_huff_lengthlist__44p5_lfe,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
+static const char _huff_lengthlist__44p5_long[] = {
+ 3, 7,12,14,14,16,18,19, 6, 2, 4, 6, 8, 9,12,14,
+ 12, 3, 3, 5, 7, 8,11,13,13, 6, 4, 5, 7, 8,10,11,
+ 14, 8, 7, 7, 7, 7, 9,10,15, 9, 8, 7, 7, 6, 8, 9,
+ 17,11,11,10, 9, 8, 9, 9,19,14,13,11,10, 9, 9, 9,
+};
+
+static const static_codebook _huff_book__44p5_long = {
+ 2, 64,
+ (char *)_huff_lengthlist__44p5_long,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
+static const long _vq_quantlist__44p5_p1_0[] = {
+ 1,
+ 0,
+ 2,
+};
+
+static const char _vq_lengthlist__44p5_p1_0[] = {
+ 2, 5, 5, 5, 7, 7, 5, 7, 7, 5, 7, 7, 7, 8, 9, 7,
+ 9, 9, 5, 7, 7, 7, 9, 9, 7, 9, 8, 5, 7, 8, 8, 9,
+ 10, 8, 9,10, 8, 9,10, 9,10,12,10,11,11, 8,10,10,
+ 10,11,11, 9,11,11, 5, 8, 7, 8, 9, 9, 8,10, 9, 8,
+ 10,10, 9,11,11,10,11,11, 8,10, 9,10,11,11, 9,12,
+ 10, 5, 8, 8, 7, 9,10, 8,10, 9, 7, 9, 9, 9,10,11,
+ 9,11,11, 8,10, 9,10,11,11,10,11,11, 7, 9, 9, 9,
+ 10,11, 9,11,11, 9, 9,11,10,10,13,11,11,12, 9,11,
+ 11,11,12,13,11,13,12, 7, 9, 9, 9,11,11, 9,11,10,
+ 9,11,10,10,11,12,11,13,12, 9,11,11,11,12,13,11,
+ 13,11, 5, 8, 8, 8, 9,10, 7,10, 9, 8, 9,10,10,11,
+ 11,10,11,11, 7, 9, 9, 9,11,11, 9,11,10, 7, 9, 9,
+ 9,10,11, 9,11,11, 9,11,11,11,11,13,11,13,12, 9,
+ 10,11,11,12,13,10,12,11, 7, 9, 9, 9,11,11, 9,11,
+ 10, 9,11,11,11,12,13,11,13,12, 9,11, 9,11,12,11,
+ 10,13,10,
+};
+
+static const static_codebook _44p5_p1_0 = {
+ 5, 243,
+ (char *)_vq_lengthlist__44p5_p1_0,
+ 1, -535822336, 1611661312, 2, 0,
+ (long *)_vq_quantlist__44p5_p1_0,
+ 0
+};
+
+static const long _vq_quantlist__44p5_p2_0[] = {
+ 2,
+ 1,
+ 3,
+ 0,
+ 4,
+};
+
+static const char _vq_lengthlist__44p5_p2_0[] = {
+ 4, 6, 6, 9, 9, 6, 7, 8,10,10, 6, 8, 7,10,10, 8,
+ 10,10,12,13, 8,10,10,13,12, 6, 7, 8,10,10, 7, 8,
+ 9,10,11, 8, 9, 9,11,11,10,10,11,12,14,10,11,11,
+ 14,13, 6, 8, 7,10,10, 8, 9, 9,11,11, 7, 9, 8,11,
+ 10,10,11,11,13,14,10,11,10,14,12, 9,10,10,12,12,
+ 10,10,11,12,13,10,11,11,13,13,12,12,13,12,15,13,
+ 14,13,15,14, 9,10,10,12,12,10,11,11,13,13,10,11,
+ 10,13,12,13,13,14,14,15,12,13,12,15,12, 6, 7, 8,
+ 10,11, 8, 9,10,11,12, 8, 9, 9,11,12,10,11,12,13,
+ 14,10,11,11,14,13, 8, 9,10,11,12, 9,10,11,12,13,
+ 9,10,11,12,13,11,12,13,13,15,12,12,13,15,14, 8,
+ 9, 9,12,12, 9,10,11,12,13, 9,10,10,13,12,12,12,
+ 13,14,15,11,12,12,14,14,11,11,12,13,14,11,12,13,
+ 13,15,12,13,13,14,15,14,13,15,14,16,14,15,15,16,
+ 16,11,12,11,14,13,12,13,13,15,14,11,13,12,14,13,
+ 14,15,15,15,16,13,14,14,16,14, 6, 8, 7,11,10, 8,
+ 9, 9,11,12, 8,10, 9,12,11,10,11,11,13,14,10,12,
+ 11,14,13, 8, 9, 9,12,12, 9,10,10,12,13, 9,11,10,
+ 13,12,11,12,12,13,14,12,13,12,15,14, 8,10, 9,12,
+ 11, 9,11,10,13,12, 9,11,10,13,12,12,13,12,14,15,
+ 11,13,12,15,13,11,11,12,13,14,11,12,13,13,15,12,
+ 13,13,14,15,13,14,14,14,16,14,15,15,16,16,11,12,
+ 11,14,13,12,13,13,15,14,11,13,12,15,13,14,15,15,
+ 16,16,13,15,13,16,14, 9,10,11,12,14,11,11,12,13,
+ 15,11,12,12,13,14,13,14,15,15,17,13,14,14,15,16,
+ 11,11,12,13,15,12,12,13,14,16,12,13,13,14,15,14,
+ 14,16,15,17,15,15,15,16,17,11,12,12,14,14,12,13,
+ 13,15,16,12,13,13,15,15,15,15,15,16,17,14,15,15,
+ 16,16,14,14,15,15,17,14,15,15,15,17,15,15,16,16,
+ 17,16,16,17,16,18,17,17,17,18,18,14,15,14,16,16,
+ 15,15,16,17,17,14,15,15,17,16,17,17,17,18,18,16,
+ 16,16,17,17, 9,11,10,14,12,11,12,12,14,13,11,12,
+ 11,15,13,13,14,14,16,15,13,15,14,17,15,11,12,12,
+ 15,14,12,13,13,15,15,12,13,13,15,15,14,15,15,16,
+ 16,15,15,15,17,16,11,12,11,15,13,12,13,13,15,14,
+ 12,13,12,16,14,15,15,15,17,16,14,15,14,17,15,14,
+ 14,15,16,16,14,15,15,16,16,15,16,15,17,17,16,16,
+ 16,17,17,17,17,17,18,17,14,15,14,16,15,15,15,15,
+ 17,16,15,15,15,17,15,17,17,17,18,18,16,17,16,18,
+ 16, 6, 8, 8,11,11, 8, 9, 9,11,12, 8, 9, 9,12,11,
+ 10,11,11,13,14,10,12,11,14,13, 7, 9, 9,11,12, 9,
+ 10,10,12,13, 9,10,10,13,13,11,11,12,13,15,11,12,
+ 12,15,14, 8, 9, 9,12,11, 9,11,10,13,13, 9,11,10,
+ 13,12,12,13,12,14,15,11,13,12,15,13,10,11,12,13,
+ 14,11,12,12,13,15,12,12,13,14,15,13,13,14,14,16,
+ 14,15,15,16,16,11,12,11,14,13,12,13,13,15,14,11,
+ 13,12,15,13,14,15,15,15,16,13,14,14,16,14, 7, 9,
+ 9,11,12, 9,10,11,12,13, 9,10,10,13,12,11,12,12,
+ 14,15,11,12,12,15,14, 9, 9,11,11,13,10,10,12,12,
+ 14,10,11,12,13,14,12,12,13,14,16,12,13,13,15,15,
+ 9,11,10,13,13,10,12,12,13,14,10,12,11,14,13,12,
+ 13,13,15,16,12,13,13,15,14,11,11,13,13,15,12,12,
+ 14,13,16,13,13,13,14,15,14,14,15,14,17,15,15,15,
+ 16,16,12,13,12,15,14,13,14,14,15,15,12,14,13,16,
+ 14,15,15,16,16,17,14,15,14,17,15, 7, 9, 9,12,11,
+ 9,10,10,12,13, 9,11,10,13,12,11,12,12,14,14,11,
+ 13,12,15,14, 9,10,10,13,12,10,10,11,12,13,10,12,
+ 11,14,13,12,12,13,13,15,12,14,13,16,15, 9,10,10,
+ 13,12,11,11,12,13,13,10,12,10,14,12,13,13,13,15,
+ 15,12,13,12,15,13,11,12,12,14,14,12,12,13,14,15,
+ 13,14,13,15,15,14,13,15,13,16,15,16,15,17,16,12,
+ 13,12,14,14,13,14,14,15,15,12,13,12,15,14,15,15,
+ 16,16,17,14,15,13,16,13,10,11,12,13,14,11,12,13,
+ 14,15,12,13,13,15,15,14,14,15,15,17,14,15,15,16,
+ 16,12,12,13,12,15,12,12,14,13,16,13,13,14,14,16,
+ 14,14,16,15,17,15,15,16,16,17,12,13,13,15,15,13,
+ 14,14,16,16,13,14,13,16,15,15,16,16,17,17,14,15,
+ 15,17,16,14,14,15,14,17,15,15,16,15,17,15,15,16,
+ 15,17,16,16,17,16,18,17,17,17,17,18,14,15,15,17,
+ 16,15,16,16,17,17,15,16,15,17,16,17,17,17,18,18,
+ 16,17,16,18,17,10,12,11,14,14,12,13,13,15,15,12,
+ 13,12,15,14,14,15,15,16,16,14,15,15,17,16,11,13,
+ 12,15,14,12,13,13,15,15,13,14,13,16,14,15,15,15,
+ 16,16,15,16,15,17,16,12,13,13,15,15,13,14,14,16,
+ 16,12,14,13,16,15,15,16,16,17,17,15,16,15,17,16,
+ 14,15,15,16,16,14,15,15,16,16,15,16,16,17,16,16,
+ 16,16,16,17,17,18,17,18,17,14,15,15,17,16,15,16,
+ 16,17,17,15,16,15,17,16,17,17,18,18,18,16,17,16,
+ 18,16, 6, 8, 8,11,11, 8, 9, 9,11,12, 8, 9, 9,12,
+ 11,10,11,12,13,14,10,11,11,14,13, 8, 9, 9,11,12,
+ 9,10,11,12,13, 9,10,11,13,13,11,12,13,13,15,12,
+ 12,12,15,14, 7, 9, 9,12,11, 9,10,10,13,13, 9,10,
+ 10,13,12,11,12,12,14,15,11,12,11,15,13,11,11,12,
+ 13,14,11,12,13,13,15,12,13,13,14,15,13,14,14,14,
+ 16,14,15,15,16,16,10,12,11,14,13,12,13,12,14,14,
+ 11,12,12,15,13,14,15,15,16,16,13,14,13,16,14, 7,
+ 9, 9,11,12, 9,10,11,12,13, 9,10,10,13,12,11,12,
+ 13,14,15,11,12,12,14,14, 9,10,10,12,13,10,10,12,
+ 12,14,11,12,11,13,13,12,12,14,13,15,13,13,13,15,
+ 15, 9,10,10,12,13,10,11,12,13,14,10,11,10,13,12,
+ 13,13,14,15,16,12,13,12,15,13,12,13,13,14,14,12,
+ 12,13,14,15,13,14,14,15,15,14,13,15,13,16,15,16,
+ 15,17,16,11,12,12,14,14,13,13,14,15,15,12,13,12,
+ 15,14,15,15,16,16,17,14,14,13,16,13, 7, 9, 9,12,
+ 11, 9,10,10,12,13, 9,11,10,13,12,11,12,12,14,15,
+ 11,12,12,15,14, 9,10,11,13,13,10,11,12,13,14,10,
+ 12,12,14,13,12,13,13,14,16,12,13,13,16,15, 9,11,
+ 9,13,11,10,12,11,13,13,10,12,10,14,12,12,13,13,
+ 15,15,12,13,12,16,14,12,12,13,14,15,12,13,14,14,
+ 15,13,14,14,15,15,14,14,15,15,17,15,16,15,17,16,
+ 11,13,11,15,13,13,14,13,15,14,12,14,12,16,13,15,
+ 15,15,16,16,14,15,14,17,14,10,11,12,14,14,12,12,
+ 13,14,15,12,13,13,15,15,14,15,15,16,17,14,15,15,
+ 16,16,12,12,13,15,15,13,13,14,15,16,13,14,14,16,
+ 16,15,15,16,16,17,15,16,16,17,17,11,12,13,14,15,
+ 13,13,14,15,16,12,13,13,15,15,15,15,16,16,17,15,
+ 15,15,16,16,14,15,15,16,17,15,15,16,16,17,15,16,
+ 16,17,17,16,16,17,16,18,17,17,17,18,18,14,15,15,
+ 16,16,15,16,16,16,17,15,15,15,16,16,17,17,17,18,
+ 18,16,16,16,17,16,10,12,11,14,13,12,13,13,15,15,
+ 11,13,12,15,14,14,15,15,16,16,14,15,14,17,15,12,
+ 13,13,15,15,13,13,14,16,16,13,14,14,16,16,15,15,
+ 15,16,17,15,16,16,17,17,12,13,12,15,12,13,14,13,
+ 16,14,12,14,12,16,13,15,16,15,17,16,14,16,14,17,
+ 15,14,15,15,16,17,15,15,16,17,17,15,16,16,17,17,
+ 16,16,17,17,18,17,18,17,18,18,14,15,14,17,14,15,
+ 16,15,17,15,15,16,15,17,15,17,17,17,18,17,16,17,
+ 16,18,16, 9,11,11,14,14,11,12,12,14,14,11,12,12,
+ 15,14,13,14,14,16,16,13,15,14,16,16,10,11,12,14,
+ 14,11,12,13,15,15,12,13,13,15,15,13,14,15,16,17,
+ 14,15,15,17,16,11,12,12,15,14,12,13,13,15,15,12,
+ 13,13,15,15,14,15,15,16,16,14,15,15,17,16,12,13,
+ 14,15,16,13,14,14,15,16,13,14,15,16,16,15,15,16,
+ 16,18,16,16,16,18,17,14,14,14,16,15,15,15,15,17,
+ 16,14,15,15,17,16,16,17,17,18,17,16,16,16,18,16,
+ 10,12,12,14,14,11,12,13,15,15,12,13,13,15,15,13,
+ 14,15,16,17,14,15,15,17,16,11,12,13,14,15,12,12,
+ 14,15,16,13,13,14,15,16,14,14,15,16,17,15,15,16,
+ 17,17,12,13,13,15,15,13,14,14,16,16,13,14,13,16,
+ 15,15,16,15,17,17,15,16,15,17,16,13,13,15,14,17,
+ 14,13,16,15,17,15,14,16,15,17,15,15,17,16,18,16,
+ 16,17,17,18,14,15,15,17,16,15,16,16,17,17,15,16,
+ 15,17,16,17,17,17,18,18,16,17,16,18,17,10,12,11,
+ 14,14,11,12,13,15,15,12,13,12,15,15,14,15,15,16,
+ 16,14,15,15,17,16,11,12,12,15,15,12,13,13,15,15,
+ 13,14,13,16,15,14,15,15,16,16,15,16,15,17,16,11,
+ 13,13,15,15,13,14,14,15,15,12,14,13,16,15,15,16,
+ 15,17,17,15,16,15,17,16,13,15,14,16,16,14,15,14,
+ 16,16,15,16,15,17,16,15,16,16,16,17,16,17,16,18,
+ 17,14,15,15,16,16,15,16,16,17,17,15,15,15,17,16,
+ 17,17,17,18,18,16,16,16,18,16,12,13,13,15,16,13,
+ 14,14,15,16,13,14,14,16,16,15,15,16,16,18,15,16,
+ 16,17,17,13,13,14,15,16,14,14,15,15,17,14,15,15,
+ 16,17,15,15,17,16,18,16,16,17,17,17,13,14,14,16,
+ 16,14,15,15,17,17,14,15,14,17,16,16,17,16,17,18,
+ 16,17,16,18,17,15,15,16,14,17,16,15,17,14,18,16,
+ 16,16,15,18,16,16,18,15,19,18,18,18,17,19,15,16,
+ 16,18,17,16,17,17,18,17,16,17,16,18,17,18,18,18,
+ 19,19,17,18,16,18,17,11,12,12,15,15,13,13,14,15,
+ 16,13,14,13,16,15,15,16,16,16,17,15,16,16,17,16,
+ 12,14,13,16,15,13,13,14,15,16,14,15,14,17,15,15,
+ 15,16,16,17,16,17,16,18,17,12,13,14,15,16,14,15,
+ 15,16,16,13,14,13,16,15,16,16,16,17,17,15,16,15,
+ 17,15,15,16,15,17,16,15,15,15,16,16,16,17,16,18,
+ 16,16,15,16,15,17,17,18,17,18,17,15,15,16,17,17,
+ 16,16,17,17,17,15,16,15,17,16,18,18,18,18,18,16,
+ 17,16,18,15, 9,11,11,14,14,11,12,12,14,15,10,12,
+ 12,15,14,13,14,15,16,16,13,14,14,16,16,11,12,12,
+ 14,15,12,12,13,15,15,12,13,13,15,15,14,15,15,16,
+ 17,14,15,15,16,16,10,12,12,14,14,12,13,13,15,15,
+ 11,13,12,15,15,14,15,15,16,17,13,15,14,16,16,14,
+ 14,14,15,16,14,15,15,16,17,14,15,15,16,17,16,16,
+ 17,16,18,16,17,17,17,17,12,14,13,16,15,13,15,14,
+ 16,16,13,14,14,16,15,16,16,16,17,17,15,16,15,17,
+ 16,10,11,11,14,14,12,12,13,14,15,11,13,12,15,14,
+ 14,15,15,16,17,14,15,15,16,16,12,13,13,15,15,12,
+ 13,14,15,16,13,14,14,15,15,15,15,16,16,17,15,15,
+ 16,17,17,11,12,12,15,15,13,13,14,15,16,12,13,13,
+ 15,15,15,15,16,16,17,14,15,15,16,16,14,15,15,16,
+ 16,15,15,15,16,17,15,16,16,17,17,16,16,17,16,18,
+ 17,17,17,17,18,13,14,15,16,16,15,15,16,16,17,14,
+ 14,14,16,16,16,16,17,17,18,16,16,16,17,16,10,12,
+ 12,14,14,12,13,13,15,15,11,13,12,15,15,14,15,15,
+ 16,17,13,15,14,17,16,12,13,13,15,15,13,13,14,15,
+ 16,13,14,14,16,16,15,15,16,16,17,15,15,16,17,17,
+ 11,13,12,15,14,13,14,13,16,15,12,14,12,16,15,15,
+ 16,15,17,17,14,15,14,17,16,14,15,15,16,17,15,15,
+ 16,16,17,15,16,16,17,17,16,16,17,17,18,17,17,17,
+ 18,18,13,15,13,17,14,14,16,14,17,16,14,15,13,17,
+ 15,16,17,16,18,17,15,17,15,18,16,11,12,12,15,15,
+ 13,13,14,15,16,13,14,13,16,15,15,16,16,16,17,15,
+ 16,16,17,16,12,14,13,16,15,13,13,14,15,16,14,15,
+ 15,16,16,16,15,16,16,17,16,16,16,17,17,12,13,14,
+ 15,16,14,14,15,15,17,13,14,13,16,15,16,16,17,17,
+ 18,15,16,15,17,15,15,16,15,17,17,15,15,16,16,17,
+ 16,17,16,17,17,16,15,17,15,18,17,18,17,18,18,15,
+ 15,16,16,17,16,16,17,16,18,15,15,15,16,16,17,17,
+ 18,17,18,16,16,15,17,15,12,13,13,15,15,13,14,14,
+ 16,16,13,14,14,16,16,15,16,16,17,18,15,16,15,18,
+ 16,13,14,14,16,16,14,14,15,16,17,14,15,15,17,17,
+ 16,16,17,17,18,16,16,17,18,17,13,14,13,16,14,14,
+ 15,15,17,16,14,15,14,17,15,16,17,17,18,17,15,17,
+ 15,18,16,15,16,16,17,17,16,16,17,17,18,16,17,17,
+ 18,18,17,16,18,17,19,18,18,18,18,18,15,16,15,17,
+ 14,16,16,16,18,15,16,17,15,18,14,18,18,18,18,17,
+ 17,18,16,19,15,
+};
+
+static const static_codebook _44p5_p2_0 = {
+ 5, 3125,
+ (char *)_vq_lengthlist__44p5_p2_0,
+ 1, -533725184, 1611661312, 3, 0,
+ (long *)_vq_quantlist__44p5_p2_0,
+ 0
+};
+
+static const long _vq_quantlist__44p5_p3_0[] = {
+ 1,
+ 0,
+ 2,
+};
+
+static const char _vq_lengthlist__44p5_p3_0[] = {
+ 1, 5, 6, 5, 7, 8, 5, 8, 7, 5, 7, 8, 7, 8,10, 8,
+ 10,10, 5, 8, 7, 8,10,10, 7,10, 8, 6, 8, 9, 8,10,
+ 11, 9,10,10, 9,10,11,10,11,12,11,12,12, 9,11,10,
+ 11,12,12,10,12,11, 6, 9, 8, 9,10,10, 8,11,10, 9,
+ 10,11,10,11,12,11,12,12, 9,11,10,11,12,12,10,12,
+ 11, 6, 9, 9, 8,10,11, 9,11,10, 8,10,10,10,10,12,
+ 11,12,12, 9,11,10,11,12,12,10,12,11, 8,10,10,10,
+ 11,12,10,12,11,10,10,12,11,11,13,12,13,13,10,12,
+ 11,12,13,13,11,13,11, 7,10,10,10,11,12,10,12,11,
+ 10,12,11,11,11,12,12,14,13,10,12,12,12,14,14,11,
+ 13,11, 6, 9, 9, 9,10,11, 8,11,10, 9,10,11,10,11,
+ 12,11,12,12, 8,11,10,11,12,12,10,12,10, 7,10,10,
+ 10,11,12,10,12,11,10,12,12,11,11,13,12,13,13,10,
+ 11,12,12,13,14,11,12,11, 8,10,10,10,11,12,10,12,
+ 11,10,11,12,11,11,13,12,13,13,10,12,10,12,13,13,
+ 11,13,11,
+};
+
+static const static_codebook _44p5_p3_0 = {
+ 5, 243,
+ (char *)_vq_lengthlist__44p5_p3_0,
+ 1, -533200896, 1614282752, 2, 0,
+ (long *)_vq_quantlist__44p5_p3_0,
+ 0
+};
+
+static const long _vq_quantlist__44p5_p3_1[] = {
+ 1,
+ 0,
+ 2,
+};
+
+static const char _vq_lengthlist__44p5_p3_1[] = {
+ 5, 6, 6, 6, 7, 7, 6, 7, 7, 6, 7, 7, 7, 7, 8, 7,
+ 8, 8, 6, 7, 7, 7, 8, 8, 7, 8, 7, 7, 8, 8, 8, 8,
+ 8, 8, 8, 8, 8, 8, 8, 8, 8, 9, 8, 9, 9, 8, 8, 8,
+ 8, 9, 9, 8, 9, 9, 7, 8, 7, 8, 8, 8, 8, 8, 8, 8,
+ 8, 8, 8, 9, 9, 8, 9, 9, 8, 8, 8, 8, 9, 9, 8, 9,
+ 8, 6, 8, 8, 7, 8, 8, 7, 8, 8, 7, 8, 8, 8, 8, 9,
+ 8, 9, 9, 8, 8, 8, 8, 9, 9, 8, 9, 8, 7, 8, 8, 8,
+ 9, 9, 8, 9, 9, 8, 8, 9, 9, 9, 9, 9, 9, 9, 8, 9,
+ 9, 9, 9, 9, 9, 9, 9, 7, 8, 8, 8, 8, 9, 8, 9, 8,
+ 8, 8, 8, 8, 9, 9, 9, 9, 9, 8, 9, 8, 9, 9, 9, 8,
+ 9, 9, 6, 8, 8, 7, 8, 8, 7, 8, 8, 8, 8, 8, 8, 8,
+ 9, 8, 9, 9, 7, 8, 8, 8, 9, 9, 8, 9, 8, 7, 8, 8,
+ 8, 8, 9, 8, 9, 8, 8, 8, 9, 8, 9, 9, 9, 9, 9, 8,
+ 8, 8, 9, 9, 9, 8, 9, 9, 7, 8, 8, 8, 9, 9, 8, 9,
+ 9, 8, 9, 9, 9, 9, 9, 9, 9, 9, 8, 9, 8, 9, 9, 9,
+ 9, 9, 9,
+};
+
+static const static_codebook _44p5_p3_1 = {
+ 5, 243,
+ (char *)_vq_lengthlist__44p5_p3_1,
+ 1, -535822336, 1611661312, 2, 0,
+ (long *)_vq_quantlist__44p5_p3_1,
+ 0
+};
+
+static const long _vq_quantlist__44p5_p4_0[] = {
+ 1,
+ 0,
+ 2,
+};
+
+static const char _vq_lengthlist__44p5_p4_0[] = {
+ 1, 5, 5, 5, 7, 9, 5, 9, 7, 5, 7, 8, 7, 7,10, 9,
+ 10,10, 5, 8, 7, 9,10,10, 7,10, 7, 6, 8, 9, 9,10,
+ 12, 9,11,11, 9,10,11,11,11,13,12,13,13, 9,11,11,
+ 11,12,13,11,13,11, 6, 9, 8, 9,11,11, 9,12,10, 9,
+ 11,11,11,11,13,11,13,12, 9,11,10,12,13,13,11,13,
+ 11, 6, 9, 9, 8,10,11, 9,12,11, 9,10,11,10,10,12,
+ 11,13,13, 9,11,11,11,13,12,11,13,11, 8,10,10, 9,
+ 10,12,10,12,11,10,10,12,10,10,13,12,13,13,10,12,
+ 11,12,13,13,10,13,10, 7,10,10,11,11,13,11,14,11,
+ 10,12,11,11,11,13,13,14,13,10,12,12,14,14,14,11,
+ 14,11, 6, 9, 9, 9,11,12, 8,11,10, 9,11,11,11,11,
+ 13,11,12,13, 8,11,10,11,13,13,10,12,10, 7,10,10,
+ 11,11,14,11,13,11,10,12,12,11,11,14,14,14,14,10,
+ 11,12,13,13,14,11,13,11, 8,10,10,10,11,12, 9,12,
+ 10,10,11,12,11,10,13,12,13,13,10,12,10,12,13,13,
+ 11,13,10,
+};
+
+static const static_codebook _44p5_p4_0 = {
+ 5, 243,
+ (char *)_vq_lengthlist__44p5_p4_0,
+ 1, -531365888, 1616117760, 2, 0,
+ (long *)_vq_quantlist__44p5_p4_0,
+ 0
+};
+
+static const long _vq_quantlist__44p5_p4_1[] = {
+ 2,
+ 1,
+ 3,
+ 0,
+ 4,
+};
+
+static const char _vq_lengthlist__44p5_p4_1[] = {
+ 5, 7, 7,10,10, 7, 8, 9,10,11, 7, 9, 8,11,10, 9,
+ 10,10,11,11, 9,10,10,11,11, 7, 9, 9,10,10, 8, 9,
+ 10,10,11, 9,10,10,11,11,10,10,11,11,11,10,11,11,
+ 12,12, 7, 9, 9,10,10, 9,10,10,11,11, 8,10, 9,11,
+ 10,10,11,11,11,11,10,11,10,11,11,10,10,10,11,11,
+ 10,10,11,11,11,11,11,11,11,11,11,11,12,11,12,11,
+ 12,11,12,12,10,10,10,11,11,10,11,11,11,11,10,11,
+ 10,11,11,11,12,11,12,12,11,12,11,12,11, 8, 9, 9,
+ 11,11, 9,10,10,11,12, 9,10,10,11,11,10,11,11,12,
+ 12,10,11,11,12,12, 9,10,10,11,11,10,10,11,11,12,
+ 10,11,11,12,12,11,11,12,12,12,11,12,12,12,12, 9,
+ 10,10,11,11,10,11,11,12,12,10,11,10,12,12,11,12,
+ 12,12,12,11,12,12,12,12,11,11,11,12,12,11,11,12,
+ 12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,
+ 12,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,
+ 12,12,12,12,12,12,12,12,12,12, 8, 9, 9,11,11, 9,
+ 10,10,11,11, 9,10,10,11,11,10,11,11,12,12,10,11,
+ 11,12,12, 9,10,10,11,11,10,10,11,12,12,10,11,11,
+ 12,12,11,12,12,12,12,11,12,12,12,12, 9,10,10,11,
+ 11,10,11,11,12,12,10,11,10,12,11,11,12,12,12,12,
+ 11,12,11,12,12,11,11,11,12,12,11,12,12,12,12,11,
+ 12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,11,
+ 11,12,12,11,12,12,12,12,11,12,11,12,12,12,12,12,
+ 12,12,12,12,12,12,12,10,11,11,12,12,11,12,12,12,
+ 12,11,12,12,12,12,12,12,13,13,13,12,12,12,13,13,
+ 11,12,12,12,12,12,12,12,12,13,12,12,12,13,13,12,
+ 12,13,13,13,12,13,13,13,13,11,12,12,12,12,12,12,
+ 12,13,13,12,12,12,13,13,12,13,13,13,13,12,13,13,
+ 13,13,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,12,12,12,13,12,
+ 13,13,13,13,13,12,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,10,11,11,12,12,11,12,12,12,12,11,12,
+ 11,12,12,12,12,12,13,12,12,12,12,13,13,11,12,12,
+ 12,12,12,12,12,13,13,12,12,12,13,13,12,13,13,13,
+ 13,12,13,13,13,13,11,12,12,12,12,12,12,12,13,13,
+ 12,12,12,13,12,12,13,13,13,13,12,13,12,13,13,12,
+ 12,12,12,13,12,13,13,13,13,12,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,12,12,12,13,12,13,13,13,
+ 13,13,12,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13, 8, 9, 9,11,11, 9,10,10,11,11, 9,10,10,12,11,
+ 10,11,11,12,12,10,11,11,12,12, 9,10,10,11,11,10,
+ 10,11,11,12,10,11,11,12,12,11,11,12,12,12,11,12,
+ 12,12,12, 9,10,10,11,11,10,11,11,12,12,10,11,10,
+ 12,12,11,12,12,12,12,11,12,12,12,12,11,11,11,12,
+ 12,11,11,12,12,12,11,12,12,12,12,12,12,12,12,12,
+ 12,12,12,12,12,11,11,11,12,12,11,12,12,12,12,11,
+ 12,12,12,12,12,12,12,12,12,12,12,12,12,12, 9,10,
+ 10,11,11,10,10,11,12,12,10,11,11,12,12,11,11,12,
+ 12,12,11,12,12,12,12,10,10,11,11,12,11,11,12,12,
+ 12,11,11,12,12,12,11,11,12,12,13,12,12,12,12,12,
+ 10,11,11,12,12,11,12,11,12,12,11,12,11,12,12,12,
+ 12,12,12,12,12,12,12,12,12,11,11,12,12,12,12,12,
+ 12,12,12,12,12,12,12,13,12,12,13,12,13,12,12,13,
+ 13,13,11,12,12,12,12,12,12,12,12,12,12,12,12,12,
+ 12,12,12,12,13,12,12,12,12,13,12, 8,10,10,11,11,
+ 10,11,11,12,12,10,11,10,12,12,11,12,12,12,12,11,
+ 12,12,12,12,10,11,10,12,12,10,10,11,12,12,11,12,
+ 12,12,12,12,12,12,12,13,12,12,12,13,13,10,11,11,
+ 12,12,11,12,12,12,12,10,12,11,12,12,12,12,12,13,
+ 13,12,13,12,13,12,11,12,12,12,12,11,12,12,12,13,
+ 12,12,12,13,13,12,12,13,12,13,12,13,13,13,13,11,
+ 12,12,12,12,12,12,12,13,13,12,12,12,13,12,12,13,
+ 13,13,13,12,13,12,13,12,11,11,11,12,12,11,12,12,
+ 12,13,11,12,12,12,12,12,12,12,13,13,12,12,13,13,
+ 13,11,12,12,12,12,12,12,12,12,13,12,12,13,13,13,
+ 12,12,13,13,13,13,13,13,13,13,11,12,12,12,12,12,
+ 13,12,13,13,12,12,12,13,13,12,13,13,13,13,12,13,
+ 13,13,13,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,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,10,11,11,12,12,11,12,12,12,13,11,
+ 12,12,13,12,12,13,13,13,13,12,13,13,13,13,11,12,
+ 12,12,12,12,12,12,13,13,12,13,12,13,13,13,13,13,
+ 13,13,13,13,13,13,13,11,12,12,13,12,12,13,12,13,
+ 13,12,13,12,13,13,13,13,13,13,13,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,13,13,13,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, 8, 9, 9,11,11, 9,10,10,11,12, 9,10,10,11,
+ 11,10,11,11,12,12,10,11,11,12,12, 9,10,10,11,11,
+ 10,10,11,12,12,10,11,11,12,12,11,11,12,12,12,11,
+ 12,12,12,12, 9,10,10,11,11,10,11,11,12,12,10,11,
+ 10,12,12,11,12,12,12,12,11,12,11,12,12,11,11,11,
+ 12,12,11,11,12,12,12,12,12,12,12,12,12,12,12,12,
+ 12,12,12,12,12,12,11,11,11,12,12,11,12,12,12,12,
+ 11,12,11,12,12,12,12,12,12,12,12,12,12,12,12, 8,
+ 10,10,11,11,10,10,11,12,12,10,11,11,12,12,11,12,
+ 12,12,12,11,12,12,12,12,10,11,11,12,12,10,11,12,
+ 12,12,11,12,12,12,12,12,12,12,12,13,12,12,12,13,
+ 13,10,10,11,12,12,11,12,12,12,12,10,11,10,12,12,
+ 12,12,12,13,13,12,12,12,13,12,11,12,12,12,12,11,
+ 12,12,12,13,12,12,12,13,13,12,12,13,12,13,12,13,
+ 13,13,13,11,12,12,12,12,12,12,12,13,13,11,12,12,
+ 13,12,12,13,13,13,13,12,13,12,13,12, 9,10,10,11,
+ 11,10,11,11,12,12,10,11,11,12,12,11,12,12,12,12,
+ 11,12,11,12,12,10,11,11,12,12,11,11,12,12,12,11,
+ 11,12,12,12,12,12,12,12,13,12,12,12,13,12,10,11,
+ 10,12,11,11,12,11,12,12,11,12,11,12,12,12,12,12,
+ 12,12,12,12,11,12,12,11,12,12,12,12,12,12,12,12,
+ 12,12,12,12,12,12,12,12,13,12,13,12,13,13,13,13,
+ 11,12,11,12,12,12,12,12,13,12,12,12,12,12,12,12,
+ 13,12,13,13,12,12,12,13,12,10,11,11,12,12,11,12,
+ 12,12,13,11,12,12,13,12,12,12,13,13,13,12,13,13,
+ 13,13,11,12,12,12,13,12,12,13,13,13,12,12,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,11,12,12,12,12,
+ 12,12,13,13,13,12,13,12,13,13,13,13,13,13,13,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,13,13,13,13,12,12,13,
+ 13,13,13,13,13,13,13,12,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,11,11,11,12,12,11,12,12,12,12,
+ 11,12,12,12,12,12,12,13,13,13,12,13,12,13,13,11,
+ 12,12,12,12,12,12,13,13,13,12,12,13,13,13,12,13,
+ 13,13,13,12,13,13,13,13,11,12,12,12,12,12,13,12,
+ 13,13,12,12,12,13,12,13,13,13,13,13,12,13,12,13,
+ 13,12,12,12,13,13,12,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,12,12,12,13,12,13,
+ 13,13,13,13,12,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,10,11,11,12,12,11,12,12,12,12,11,12,12,
+ 12,12,12,12,12,13,13,12,12,12,13,13,11,12,12,12,
+ 12,11,12,12,13,13,12,12,12,13,13,12,12,13,13,13,
+ 12,13,13,13,13,11,12,12,12,12,12,12,12,13,13,12,
+ 12,12,13,12,12,13,13,13,13,12,13,12,13,13,12,12,
+ 12,12,12,12,12,13,13,13,12,13,13,13,13,12,13,13,
+ 13,13,13,13,13,13,13,12,12,12,13,12,12,13,13,13,
+ 13,12,13,12,13,13,13,13,13,13,13,13,13,13,13,13,
+ 10,11,11,12,12,11,12,12,12,13,11,12,12,13,12,12,
+ 12,12,13,13,12,12,12,13,13,11,12,12,12,12,12,12,
+ 13,13,13,12,12,12,13,13,12,12,13,13,13,12,13,13,
+ 13,13,11,12,12,12,12,12,12,12,13,13,12,12,12,13,
+ 13,12,13,13,13,13,12,13,13,13,13,12,12,12,12,13,
+ 12,12,13,13,13,12,13,13,13,13,12,13,13,13,13,13,
+ 13,13,13,13,12,12,12,13,13,13,13,13,13,13,12,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,10,11,11,
+ 12,12,11,12,12,12,13,11,12,12,13,12,12,13,13,13,
+ 13,12,13,12,13,13,11,12,12,13,13,12,12,12,13,13,
+ 12,12,13,13,13,12,13,13,13,13,13,13,13,13,13,11,
+ 12,12,13,12,12,13,12,13,13,12,13,12,13,13,13,13,
+ 13,13,13,12,13,13,13,13,12,12,12,13,13,12,13,13,
+ 13,13,12,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,12,12,12,13,13,12,13,13,13,13,12,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,11,11,11,12,12,11,
+ 12,12,12,12,11,12,12,12,12,12,12,12,13,13,12,12,
+ 12,13,13,11,12,12,12,12,12,12,12,12,13,12,12,12,
+ 13,13,12,12,13,13,13,12,13,13,13,13,11,12,12,12,
+ 12,12,12,12,13,13,12,12,12,13,12,12,13,13,13,13,
+ 12,13,12,13,13,12,12,12,12,12,12,12,13,12,13,12,
+ 13,13,13,13,12,13,13,12,13,13,13,13,13,13,12,12,
+ 12,12,12,12,13,13,13,13,12,13,12,13,13,13,13,13,
+ 13,13,12,13,13,13,12,10,11,11,12,12,11,12,12,12,
+ 12,11,12,12,12,12,12,12,12,13,13,12,13,12,13,13,
+ 11,12,12,12,12,12,12,12,13,13,12,12,12,13,13,12,
+ 12,13,13,13,13,13,13,13,13,11,12,12,12,12,12,13,
+ 12,13,13,12,13,12,13,13,12,13,13,13,13,12,13,12,
+ 13,13,12,12,12,12,12,12,13,13,13,13,12,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,12,12,12,13,12,
+ 12,13,13,13,13,12,13,12,13,13,13,13,13,13,13,13,
+ 13,13,13,13,10,11,11,12,12,11,12,12,12,12,11,12,
+ 12,12,12,12,12,12,13,13,12,12,12,13,13,11,12,12,
+ 12,12,12,12,12,13,13,12,12,12,13,13,12,12,13,13,
+ 13,12,12,13,13,13,11,12,11,12,12,12,12,12,13,13,
+ 11,12,12,13,13,12,13,13,13,13,12,13,12,13,13,12,
+ 12,12,12,12,12,13,13,13,13,12,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,12,12,12,13,12,12,13,13,
+ 13,13,12,13,12,13,13,13,13,13,13,13,12,13,13,13,
+ 13,10,11,11,12,12,11,12,12,12,13,11,12,12,13,12,
+ 12,12,13,13,13,12,13,13,13,13,11,12,12,13,13,12,
+ 12,13,13,13,12,12,13,13,13,12,13,13,13,13,13,13,
+ 13,13,13,11,12,12,13,12,12,13,12,13,13,12,12,12,
+ 13,13,12,13,13,13,13,13,13,13,13,13,12,12,13,13,
+ 13,12,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,12,12,12,13,13,13,13,13,13,13,12,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,10,12,
+ 11,12,12,11,12,12,12,13,11,12,12,12,12,12,12,12,
+ 13,13,12,12,12,13,13,11,12,12,12,13,12,12,12,13,
+ 13,12,12,12,13,13,12,13,13,13,13,12,13,13,13,13,
+ 11,12,12,13,12,12,12,12,13,13,12,12,12,13,13,12,
+ 13,13,13,13,12,13,12,13,13,12,13,12,13,13,12,13,
+ 13,13,13,12,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,12,12,12,13,12,13,13,13,13,13,12,13,12,13,
+ 13,13,13,13,13,13,12,13,13,13,13,10,11,11,12,12,
+ 11,12,12,12,13,11,12,12,12,12,12,12,12,13,13,12,
+ 12,12,13,13,11,12,12,12,12,12,12,13,13,13,12,13,
+ 13,13,13,12,12,13,13,13,13,13,13,13,13,11,12,12,
+ 12,12,12,13,12,13,13,12,12,12,13,13,12,13,13,13,
+ 13,12,13,12,13,13,12,12,12,12,13,12,13,13,13,13,
+ 12,13,13,13,13,12,13,13,13,13,13,13,13,13,13,12,
+ 12,12,12,12,12,13,13,13,13,12,13,13,13,13,13,13,
+ 13,13,13,12,13,13,13,13,11,12,11,12,12,11,12,12,
+ 12,12,11,12,12,12,12,12,12,12,12,13,12,12,12,13,
+ 12,11,12,12,12,12,12,12,12,12,13,12,12,12,13,13,
+ 12,12,13,13,13,12,13,13,13,13,11,12,12,12,12,12,
+ 12,12,13,13,12,12,12,13,12,12,13,13,13,13,12,13,
+ 12,13,13,12,12,12,12,12,12,12,13,13,13,12,13,13,
+ 13,13,13,13,13,12,13,13,13,13,13,13,12,12,12,12,
+ 12,12,13,13,13,13,12,13,12,13,12,13,13,13,13,13,
+ 13,13,13,13,12,
+};
+
+static const static_codebook _44p5_p4_1 = {
+ 5, 3125,
+ (char *)_vq_lengthlist__44p5_p4_1,
+ 1, -533725184, 1611661312, 3, 0,
+ (long *)_vq_quantlist__44p5_p4_1,
+ 0
+};
+
+static const long _vq_quantlist__44p5_p5_0[] = {
+ 2,
+ 1,
+ 3,
+ 0,
+ 4,
+};
+
+static const char _vq_lengthlist__44p5_p5_0[] = {
+ 1, 6, 6,10,10, 6, 7, 9,11,13, 5, 9, 7,13,11, 8,
+ 11,12,13,15, 8,12,11,15,13, 6, 7, 8,11,11, 7, 8,
+ 10,11,13, 9,10,10,13,13,11,11,13,12,16,12,13,13,
+ 16,15, 6, 8, 7,11,11, 9,10,10,13,13, 7,10, 7,13,
+ 11,12,13,13,15,16,11,13,11,16,12,10,11,11,11,13,
+ 11,11,13,12,15,13,13,13,14,15,13,12,15,12,17,15,
+ 16,16,16,16,10,11,11,14,11,13,13,13,15,14,11,13,
+ 11,15,12,15,15,16,16,16,13,15,12,17,12, 6, 8, 9,
+ 12,12, 9,10,12,13,15, 9,11,11,15,14,12,13,15,16,
+ 18,13,14,14,17,16, 9,10,11,13,14,11,10,13,14,16,
+ 11,12,12,15,15,14,13,16,15,18,14,15,15,17,17, 9,
+ 11,11,14,14,11,12,13,15,16,11,13,11,15,14,15,15,
+ 15,17,18,14,15,14,17,15,13,14,14,15,16,14,14,15,
+ 15,17,15,16,15,17,17,16,16,17,15,19,17,18,18,19,
+ 18,13,14,14,16,15,15,15,16,17,17,14,15,14,18,15,
+ 17,17,17,19,19,16,17,15,19,16, 6, 9, 8,13,12, 9,
+ 11,11,14,15, 9,12,10,15,13,13,14,14,16,17,12,15,
+ 13,18,16, 9,11,11,14,14,11,11,13,14,15,11,13,12,
+ 16,15,14,14,15,15,18,14,15,15,18,17, 9,11,10,14,
+ 13,11,12,12,15,15,11,13,10,16,14,14,15,15,16,18,
+ 14,16,13,18,15,13,14,14,16,16,14,14,15,15,17,15,
+ 16,15,17,17,16,16,17,16,19,17,18,17,18,19,13,14,
+ 14,16,15,15,15,15,17,17,14,15,14,17,15,17,17,17,
+ 18,19,16,17,15,19,15,11,13,13,15,16,13,14,15,16,
+ 18,14,15,15,17,17,16,16,18,18,20,17,18,17,19,20,
+ 13,14,14,16,17,15,15,16,17,18,15,16,16,17,17,18,
+ 17,19,18,19,18,18,18,19,21,14,14,15,16,17,15,15,
+ 16,18,18,15,16,16,17,18,18,18,19,19,21,18,19,19,
+ 22,20,16,16,17,17,19,17,17,17,18,20,17,18,18,20,
+ 19,19,19,20,19, 0,19,19,20,20,21,17,17,17,19,18,
+ 18,18,20,19,19,18,18,18,20,20,19,19,20,20,20,20,
+ 21,20,21,19,11,13,13,16,15,14,15,15,17,17,14,15,
+ 14,18,16,16,18,18,20,19,16,19,17,21,18,13,14,15,
+ 16,17,15,15,16,18,18,15,16,15,19,18,18,18,18,19,
+ 19,18,18,18,22,20,13,14,14,16,16,15,16,16,18,17,
+ 15,16,15,18,17,18,18,18,19,19,17,18,17,21,18,16,
+ 17,17,18,18,17,18,19,19,19,18,20,18,19,19,19,20,
+ 21,19,21,20,20,20, 0,21,16,17,17,19,19,18,18,18,
+ 19,21,17,18,18,19,18,20,19,21,20,21,19,20,20,22,
+ 19, 7, 9, 9,13,13, 8,10,11,14,15, 9,12,11,15,14,
+ 11,13,14,16,17,13,15,14,17,16, 8,10,11,14,14,10,
+ 10,12,14,16,11,12,12,16,15,13,12,15,15,18,14,15,
+ 15,19,17, 9,11,11,14,14,11,12,12,15,15,11,13,11,
+ 16,14,14,15,14,17,17,14,16,14,18,15,12,13,14,15,
+ 16,13,13,15,14,17,15,15,15,17,17,15,14,17,14,19,
+ 17,18,18,19,18,13,14,14,16,16,15,15,15,17,17,14,
+ 15,14,18,15,17,18,17,18,17,16,18,16,19,15, 7,10,
+ 10,13,13, 9,10,12,14,15,10,12,11,15,14,12,13,14,
+ 16,17,13,15,14,18,16,10,10,12,13,14,10,10,13,13,
+ 16,12,12,13,15,15,13,12,15,15,18,15,15,16,18,17,
+ 10,11,11,14,14,12,13,13,15,16,10,13,10,16,14,14,
+ 15,15,17,17,14,15,13,17,15,13,13,14,15,16,14,13,
+ 15,14,18,15,15,16,16,17,16,15,18,15,18,17,18,18,
+ 18,18,13,15,14,17,16,15,16,16,17,17,14,15,13,17,
+ 15,17,17,18,18,18,16,17,14,20,14, 8,10,10,14,14,
+ 11,11,13,14,16,11,13,11,16,14,14,15,16,16,18,14,
+ 16,15,18,16,10,12,11,15,14,11,11,13,14,16,13,14,
+ 13,16,15,15,14,16,15,19,16,17,16,20,18,10,11,12,
+ 14,15,13,13,14,16,16,11,14,11,16,14,16,16,17,18,
+ 19,15,17,14,20,15,14,15,14,17,16,13,14,15,15,18,
+ 16,17,16,19,18,16,15,18,15,19,18,19,18,21,21,14,
+ 14,15,16,17,16,16,17,18,18,13,15,14,17,15,18,18,
+ 19,18,22,16,18,15,21,15,12,13,14,16,16,14,14,16,
+ 16,18,14,15,15,17,18,16,16,18,18,20,18,18,17,20,
+ 20,13,14,15,15,17,15,14,16,16,18,16,16,16,17,19,
+ 17,15,18,17,21,18,18,18,19,19,14,15,15,18,17,15,
+ 16,16,18,19,15,16,15,18,18,17,18,18,20,21,17,19,
+ 17,20,19,16,16,17,16,19,17,17,18,17,20,18,18,18,
+ 18,19,19,18,20,17,22,20,20,19,20,20,17,17,18,18,
+ 19,18,18,20,21,20,17,18,17,20,20,21,21,21,21,21,
+ 19,21,18,22,20,11,13,13,17,16,14,14,16,16,18,14,
+ 16,14,18,16,17,18,19,19,20,18,19,18,21,19,14,15,
+ 14,17,16,14,14,16,18,18,16,17,16,18,17,18,17,19,
+ 18,20,19,19,18,20,20,13,14,15,16,17,16,16,17,18,
+ 19,14,16,14,19,17,18,19,18,20,20,18,20,17,21,18,
+ 17,17,17,19,18,16,17,18,18,19,18,19,18,21,21,18,
+ 18,20,17,21,19,20,20,22,21,16,17,18,18,19,18,18,
+ 19,21,20,16,17,17,20,18,21,21,22,21,22,18,21,18,
+ 0,18, 7, 9, 9,13,13, 9,11,12,14,15, 8,11,10,15,
+ 14,13,14,15,16,18,11,14,13,17,15, 9,11,11,14,14,
+ 11,11,13,14,16,11,12,12,15,15,14,14,16,15,18,14,
+ 14,15,17,17, 8,11,10,14,14,11,12,12,15,15,10,12,
+ 10,16,14,14,15,15,17,18,13,15,12,18,15,13,14,14,
+ 16,16,14,14,15,15,17,15,15,15,16,17,16,15,17,15,
+ 19,17,17,17,18,18,12,14,13,16,15,15,15,15,17,17,
+ 13,15,13,17,14,17,18,18,18,19,15,17,14,19,14, 8,
+ 10,10,14,14,11,11,13,14,16,11,13,11,16,14,14,15,
+ 16,17,19,14,16,15,18,17,10,12,11,15,14,11,11,14,
+ 14,17,13,14,13,17,15,15,14,17,15,19,16,17,16,19,
+ 17,10,11,12,14,15,13,13,14,15,17,11,13,11,17,14,
+ 16,16,17,18,19,15,16,14,18,15,14,15,14,16,16,13,
+ 14,15,15,18,16,16,16,18,18,16,15,18,15,20,18,19,
+ 18,21,18,14,14,15,16,17,16,16,17,17,18,13,15,14,
+ 17,16,19,19,19,19,19,15,18,15,20,15, 7,10,10,13,
+ 13,10,11,12,14,15, 9,12,10,15,14,13,14,15,16,17,
+ 12,15,13,17,16,10,11,11,14,14,10,10,13,14,16,12,
+ 13,13,16,15,14,13,16,15,18,15,15,16,17,17,10,12,
+ 10,14,13,12,13,12,15,15,10,13,10,16,13,15,16,15,
+ 17,18,13,16,12,18,15,13,14,14,16,17,14,13,15,15,
+ 18,15,16,15,17,17,16,14,17,15,19,17,18,18,19,19,
+ 13,15,13,17,14,15,15,15,18,17,14,15,13,17,14,18,
+ 17,18,18,19,15,17,15,19,15,11,13,13,16,17,14,14,
+ 16,16,18,14,16,15,18,17,17,18,19,18,21,18,18,17,
+ 20,18,13,15,14,17,16,14,14,16,17,18,16,17,16,19,
+ 17,18,17,19,18,22,18,19,19,21,21,13,14,15,16,18,
+ 16,16,17,17,20,14,16,14,18,17,18,18,19,19,21,17,
+ 18,17,21,18,17,18,17,19,18,16,17,17,18,19,18,18,
+ 18,22,22,18,17,19,17, 0,20,21,19,21,20,17,17,18,
+ 18,21,18,18,18,19,21,17,17,17,19,19,20,20,22,21,
+ 21,19,20,18,20,17,12,14,13,17,16,14,15,15,17,18,
+ 14,16,14,18,16,17,18,18,21,20,16,18,16,21,18,14,
+ 15,15,17,17,15,15,16,18,18,15,17,16,18,18,17,17,
+ 19,19,20,18,19,18,20,19,14,15,14,17,15,15,16,16,
+ 18,17,15,16,14,19,15,18,18,18,19,20,17,20,15,21,
+ 17,16,17,18,18,19,17,17,18,18,20,18,19,18,19,21,
+ 19,18,19,19,21,20, 0,19,21,20,16,17,16,19,16,18,
+ 18,18,19,19,17,18,17,20,17,19,20,20,22, 0,19,20,
+ 17,21,17,11,13,14,16,17,14,15,15,17,18,14,15,15,
+ 18,18,16,17,17,19,20,16,18,17,19,21,13,14,15,17,
+ 17,14,15,16,17,19,15,16,16,18,19,16,17,18,19,21,
+ 17,18,20,21,21,13,15,15,17,17,15,16,16,18,19,15,
+ 16,16,18,19,17,17,18,19,22,17,19,18,22,19,15,16,
+ 17,19,19,16,17,18,18,20,17,18,18,19,20,19,18,20,
+ 18,22,20,19,19,22,21,16,17,17,18,19,18,18,18,19,
+ 20,17,18,18,20,19,20,19,20,22,20,19,20,21,21,20,
+ 12,14,14,16,16,13,14,16,17,18,14,16,15,18,18,15,
+ 17,17,19,19,17,18,18,19,19,13,14,15,16,17,14,14,
+ 16,16,20,15,16,16,17,19,16,15,18,17,20,18,17,19,
+ 19,19,14,15,15,17,17,16,16,16,18,18,15,16,15,19,
+ 18,17,18,18,20,21,17,18,17,21,18,16,15,17,17,19,
+ 17,15,18,17,20,19,17,18,19,20,18,16,19,17,22,20,
+ 19,20,19,20,17,17,18,19,19,18,18,19,20,20,17,18,
+ 17,18,18,21,21,20,20,21,18,20,17,21,19,11,14,14,
+ 16,17,15,14,16,17,19,14,16,14,18,17,18,18,19,19,
+ 21,17,19,18,20,20,13,15,14,17,17,14,14,16,17,18,
+ 16,17,16,19,18,18,17,19,18,20,18,21,18,20,20,13,
+ 15,15,16,17,16,16,17,18,19,14,16,15,19,18,19,19,
+ 19,21,20,18,19,17,20,18,16,17,16,19,18,16,17,17,
+ 19,20,17,19,18,20,19,18,17,21,18, 0,21,20,20, 0,
+ 20,17,17,18,18,19,18,19,19,20,22,16,17,17,20,18,
+ 21,22,20,20,22,18,22,18,22,18,12,14,14,17,17,14,
+ 15,16,17,19,14,16,15,17,17,17,17,18,18,21,17,19,
+ 17,20,19,14,15,15,16,18,15,14,16,16,19,16,17,16,
+ 19,18,17,16,20,17,20,18,20,19,19,20,14,15,15,18,
+ 17,16,16,17,18,19,14,16,15,19,17,18,21,18,19,21,
+ 17,18,17,19,18,17,17,18,17,20,17,16,18,17,21,18,
+ 19,19,19,19,18,17,19,17,20,20,21,20,21,20,17,17,
+ 17,19,19,19,18,18,20,21,16,18,16,19,18,20,20,21,
+ 21,20,18,19,16, 0,17,12,14,14,17,17,15,15,18,17,
+ 19,15,18,15,20,16,20,19,21,18,22,20,20,20,22,19,
+ 14,16,14,20,17,14,15,17,17,20,18,18,17,20,18,18,
+ 17,19,17,21,20,21,20, 0,21,14,15,16,17,19,18,17,
+ 19,18,21,14,18,15,21,17,21,20,21,20, 0,18,21,17,
+ 21,17,18,19,17,20,18,16,17,17,19,19,19,21,20, 0,
+ 20,18,17,21,17, 0,22, 0,21, 0,22,17,17,19,18,20,
+ 20,20,21,19,22,16,17,18,20,18,22,22, 0,22, 0,17,
+ 21,17,22,17,11,14,13,16,16,14,15,15,17,18,14,15,
+ 14,18,17,17,18,18,19,20,16,17,17,21,19,13,14,15,
+ 17,17,15,16,16,18,18,15,16,16,19,18,18,18,18,19,
+ 20,17,18,18,20,19,13,15,14,17,17,15,16,16,17,18,
+ 14,16,15,19,17,17,18,19,21,21,17,18,17,20,18,16,
+ 17,17,19,19,17,18,19,19,20,18,19,18,21,21,21,20,
+ 19,21,22,20,20,19,21,20,15,17,16,19,19,17,18,18,
+ 20,21,16,18,17,20,18,19,19,21,21,21,19,19,19,20,
+ 18,11,14,13,17,16,14,14,16,16,19,14,16,15,19,16,
+ 18,18,18,19,22,17,18,17,20,19,13,15,14,17,17,15,
+ 15,16,17,19,16,17,16,20,18,18,17,19,18,21,19,19,
+ 18,22, 0,13,14,15,17,18,16,16,17,17,19,14,16,15,
+ 19,18,18,19,19,20,21,18,18,17,20,18,17,18,17,20,
+ 18,16,17,17,18,20,18,19,18,20,20,18,18,21,17,21,
+ 20,21,21, 0,19,16,16,18,18,19,19,18,20,19,20,16,
+ 17,17,20,18,21,20,21,22,22,18,20,17,21,17,12,14,
+ 14,17,16,14,15,16,18,18,13,15,14,18,17,17,18,18,
+ 19,19,15,17,16,19,19,14,15,15,17,17,15,15,16,18,
+ 19,15,16,16,19,18,17,17,18,18,20,18,18,18,21,20,
+ 13,15,14,17,16,15,16,15,18,18,14,16,14,18,17,18,
+ 18,18,19,21,16,18,16,20,17,17,18,17,18,19,17,17,
+ 18,18,19,18,19,19,21,19,19,18,20,18,21,21,20,20,
+ 21,20,16,17,15,20,17,17,19,17,19,19,17,18,15,20,
+ 17,19,20,19,21,22,17,20,16, 0,17,12,14,14,17,18,
+ 16,15,18,16,20,16,18,15,21,17,20,18,21,19,22,19,
+ 21,19, 0,19,14,16,15,19,17,14,15,17,16,21,18,19,
+ 18,21,17,19,17,21,17,22,20,21,21, 0,21,14,15,16,
+ 17,19,18,17,19,18,21,14,17,15,20,17,21,22,21,20,
+ 22,18,21,17,21,17,17,19,17,21,18,16,17,17,19,20,
+ 19,21,20,21,20,17,18,20,17,21, 0,22,20,21,22,17,
+ 17,20,18,21,21,20,22,20,21,16,17,17,21,19, 0,22,
+ 0,21,21,18,22,17,21,17,12,14,14,17,16,14,15,16,
+ 17,18,14,16,15,18,17,17,17,20,19,20,16,18,17,21,
+ 18,14,15,15,17,17,14,15,16,17,19,16,17,16,18,18,
+ 17,16,19,18,19,18,19,18,21,20,14,15,15,18,17,16,
+ 16,16,19,18,15,16,14,20,16,18,18,19,19,20,16,19,
+ 16,21,17,17,17,18,19,19,16,16,18,18,19,19,19,18,
+ 20,20,18,16,19,18,20,22,21,20,19,20,16,18,17,20,
+ 16,18,19,18,19,18,16,18,16,20,17,21,20,21,20,20,
+ 18,19,17,21,16,
+};
+
+static const static_codebook _44p5_p5_0 = {
+ 5, 3125,
+ (char *)_vq_lengthlist__44p5_p5_0,
+ 1, -528744448, 1616642048, 3, 0,
+ (long *)_vq_quantlist__44p5_p5_0,
+ 0
+};
+
+static const long _vq_quantlist__44p5_p5_1[] = {
+ 3,
+ 2,
+ 4,
+ 1,
+ 5,
+ 0,
+ 6,
+};
+
+static const char _vq_lengthlist__44p5_p5_1[] = {
+ 2, 3, 3, 3, 3, 3, 3,
+};
+
+static const static_codebook _44p5_p5_1 = {
+ 1, 7,
+ (char *)_vq_lengthlist__44p5_p5_1,
+ 1, -533200896, 1611661312, 3, 0,
+ (long *)_vq_quantlist__44p5_p5_1,
+ 0
+};
+
+static const long _vq_quantlist__44p5_p6_0[] = {
+ 1,
+ 0,
+ 2,
+};
+
+static const char _vq_lengthlist__44p5_p6_0[] = {
+ 1, 5, 5, 5, 7, 9, 5, 9, 7, 5, 7, 8, 7, 7,10, 9,
+ 9,10, 5, 8, 7, 9,10, 9, 7,10, 7, 6, 9, 9, 9,10,
+ 12,10,12,11, 9,10,11,11,10,13,12,12,13,10,11,11,
+ 12,13,13,11,13,11, 6, 9, 9,10,11,12, 9,12,11,10,
+ 11,11,11,11,13,12,13,13, 9,11,10,12,13,13,11,13,
+ 10, 6, 9,10, 9,11,12,10,12,11, 9,10,11,10,10,13,
+ 11,13,13,10,11,11,12,13,12,11,13,11, 7, 9,10, 9,
+ 10,12,10,11,11,10,10,11,10,10,12,12,11,12,10,11,
+ 10,12,12,12,10,12,10, 7,10,10,11,11,13,11,13,11,
+ 10,12,11,11,10,13,13,14,13,10,11,12,13,13,14,11,
+ 13,10, 6,10, 9,10,11,12, 9,12,11, 9,11,11,11,11,
+ 13,12,12,13, 9,11,10,12,13,13,10,13,10, 7,10,10,
+ 11,11,14,11,13,11,10,12,11,11,10,14,13,14,13,10,
+ 11,12,13,13,14,11,13,10, 7,10, 9,10,10,12, 9,12,
+ 10,10,11,11,10,10,12,12,12,12, 9,11,10,11,12,12,
+ 10,12, 9,
+};
+
+static const static_codebook _44p5_p6_0 = {
+ 5, 243,
+ (char *)_vq_lengthlist__44p5_p6_0,
+ 1, -527106048, 1620377600, 2, 0,
+ (long *)_vq_quantlist__44p5_p6_0,
+ 0
+};
+
+static const long _vq_quantlist__44p5_p6_1[] = {
+ 1,
+ 0,
+ 2,
+};
+
+static const char _vq_lengthlist__44p5_p6_1[] = {
+ 2, 6, 6, 5, 7, 8, 5, 8, 7, 6, 7, 7, 7, 7, 8, 8,
+ 8, 8, 6, 7, 7, 7, 8, 8, 7, 8, 7, 6, 8, 8, 8, 9,
+ 10, 8, 9, 9, 8, 9, 9, 9, 9,10,10,10,10, 8, 9, 9,
+ 10,10,10, 9,10,10, 6, 8, 8, 8, 9, 9, 8,10, 9, 9,
+ 9, 9, 9, 9,10,10,10,10, 8, 9, 9,10,10,10, 9,10,
+ 9, 6, 8, 9, 8, 9, 9, 8, 9, 9, 8, 9, 9, 9, 9,10,
+ 9,10,10, 8, 9, 9, 9,10,10, 9,10, 9, 7, 8, 9, 8,
+ 9, 9, 9, 9, 9, 8, 9, 9, 9, 9, 9, 9, 9, 9, 8, 9,
+ 9, 9, 9, 9, 9, 9, 9, 7, 9, 9, 9,10,10, 9,10,10,
+ 9,10, 9, 9, 9,10,10,10,10, 9,10, 9,10,10,10, 9,
+ 10, 9, 6, 8, 8, 8, 9, 9, 8, 9, 9, 8, 9, 9, 9, 9,
+ 10, 9,10,10, 8, 9, 9, 9,10,10, 9,10, 9, 7, 9, 9,
+ 9,10,10, 9,10, 9, 9, 9,10,10, 9,10,10,10,10, 9,
+ 9, 9,10,10,10, 9,10, 9, 7, 9, 8, 8, 9, 9, 8, 9,
+ 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 8, 9, 8, 9, 9, 9,
+ 9, 9, 9,
+};
+
+static const static_codebook _44p5_p6_1 = {
+ 5, 243,
+ (char *)_vq_lengthlist__44p5_p6_1,
+ 1, -530841600, 1616642048, 2, 0,
+ (long *)_vq_quantlist__44p5_p6_1,
+ 0
+};
+
+static const long _vq_quantlist__44p5_p7_0[] = {
+ 1,
+ 0,
+ 2,
+};
+
+static const char _vq_lengthlist__44p5_p7_0[] = {
+ 1, 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, 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,
+ 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, 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, 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, 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, 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, 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, 9, 9, 9, 9,
+ 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9,
+ 9, 9, 9,
+};
+
+static const static_codebook _44p5_p7_0 = {
+ 5, 243,
+ (char *)_vq_lengthlist__44p5_p7_0,
+ 1, -513979392, 1633504256, 2, 0,
+ (long *)_vq_quantlist__44p5_p7_0,
+ 0
+};
+
+static const long _vq_quantlist__44p5_p7_1[] = {
+ 1,
+ 0,
+ 2,
+};
+
+static const char _vq_lengthlist__44p5_p7_1[] = {
+ 1, 7, 7, 6, 9, 9, 7, 9, 9, 6, 9, 9, 9, 9, 9, 9,
+ 9, 9, 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, 9, 9, 9,
+ 9, 9, 9, 9, 9, 9, 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, 7, 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, 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, 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,
+ 9, 9, 7, 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, 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,10,10,10,10,10,10,10,10,10,10,10,10,
+ 10,10,10,
+};
+
+static const static_codebook _44p5_p7_1 = {
+ 5, 243,
+ (char *)_vq_lengthlist__44p5_p7_1,
+ 1, -516716544, 1630767104, 2, 0,
+ (long *)_vq_quantlist__44p5_p7_1,
+ 0
+};
+
+static const long _vq_quantlist__44p5_p7_2[] = {
+ 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 const char _vq_lengthlist__44p5_p7_2[] = {
+ 1, 2, 3, 5, 5, 6, 6, 7, 7, 8, 8, 9, 9,10,10,11,
+ 11,12,12,13,13,14,14,14,14,
+};
+
+static const static_codebook _44p5_p7_2 = {
+ 1, 25,
+ (char *)_vq_lengthlist__44p5_p7_2,
+ 1, -518864896, 1620639744, 5, 0,
+ (long *)_vq_quantlist__44p5_p7_2,
+ 0
+};
+
+static const long _vq_quantlist__44p5_p7_3[] = {
+ 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 const char _vq_lengthlist__44p5_p7_3[] = {
+ 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 5, 5, 5,
+ 5, 5, 5, 5, 5, 5, 5, 5, 5,
+};
+
+static const static_codebook _44p5_p7_3 = {
+ 1, 25,
+ (char *)_vq_lengthlist__44p5_p7_3,
+ 1, -529006592, 1611661312, 5, 0,
+ (long *)_vq_quantlist__44p5_p7_3,
+ 0
+};
+
+static const char _huff_lengthlist__44p5_short[] = {
+ 4, 7,12,14,15,18,20,20, 5, 3, 4, 6, 9,11,15,19,
+ 9, 4, 3, 4, 7, 9,13,18,11, 6, 3, 3, 5, 8,13,19,
+ 14, 9, 6, 5, 7,10,16,20,16,11, 9, 8,10,10,14,16,
+ 21,14,13,11, 8, 7,11,14,21,14,13, 9, 6, 5,10,12,
+};
+
+static const static_codebook _huff_book__44p5_short = {
+ 2, 64,
+ (char *)_huff_lengthlist__44p5_short,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
+static const long _vq_quantlist__44p6_l0_0[] = {
+ 6,
+ 5,
+ 7,
+ 4,
+ 8,
+ 3,
+ 9,
+ 2,
+ 10,
+ 1,
+ 11,
+ 0,
+ 12,
+};
+
+static const char _vq_lengthlist__44p6_l0_0[] = {
+ 1, 4, 4, 7, 7,10,10,12,12,12,12,13,12, 5, 5, 5,
+ 8, 6,11, 9,12,12,13,12,12,12, 4, 5, 5, 6, 8, 9,
+ 11,12,12,13,12,12,12, 7, 7, 8, 9, 9,11, 8,12, 9,
+ 12,12,12,12, 7, 8, 8, 9, 9, 8,11, 9,12,12,12,11,
+ 12,10,10,10,11,11,11,11,11,10,11,11,12,11,10,10,
+ 10,11,11,11,11,10,11,11,11,11,12,11,11,11,12,11,
+ 12,11,12,11,13,11,13,11,11,11,11,11,12,11,12,10,
+ 13,11,12,11,13,12,12,12,13,12,13,13,13,12,14,12,
+ 14,13,12,12,12,12,13,13,13,12,14,12,14,13,14,13,
+ 14,14,14,14,14,14,14,14,15,14,15,14,13,14,13,14,
+ 14,14,14,14,15,14,14,14,15,
+};
+
+static const static_codebook _44p6_l0_0 = {
+ 2, 169,
+ (char *)_vq_lengthlist__44p6_l0_0,
+ 1, -526516224, 1616117760, 4, 0,
+ (long *)_vq_quantlist__44p6_l0_0,
+ 0
+};
+
+static const long _vq_quantlist__44p6_l0_1[] = {
+ 2,
+ 1,
+ 3,
+ 0,
+ 4,
+};
+
+static const char _vq_lengthlist__44p6_l0_1[] = {
+ 4, 4, 4, 5, 5, 4, 5, 5, 5, 5, 4, 5, 5, 5, 5, 5,
+ 5, 5, 4, 5, 5, 5, 5, 5, 4,
+};
+
+static const static_codebook _44p6_l0_1 = {
+ 2, 25,
+ (char *)_vq_lengthlist__44p6_l0_1,
+ 1, -533725184, 1611661312, 3, 0,
+ (long *)_vq_quantlist__44p6_l0_1,
+ 0
+};
+
+static const long _vq_quantlist__44p6_l1_0[] = {
+ 1,
+ 0,
+ 2,
+};
+
+static const char _vq_lengthlist__44p6_l1_0[] = {
+ 1, 3, 2, 5, 5, 6, 6, 6, 6,
+};
+
+static const static_codebook _44p6_l1_0 = {
+ 2, 9,
+ (char *)_vq_lengthlist__44p6_l1_0,
+ 1, -516716544, 1630767104, 2, 0,
+ (long *)_vq_quantlist__44p6_l1_0,
+ 0
+};
+
+static const char _huff_lengthlist__44p6_lfe[] = {
+ 2, 3, 1, 3,
+};
+
+static const static_codebook _huff_book__44p6_lfe = {
+ 2, 4,
+ (char *)_huff_lengthlist__44p6_lfe,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
+static const char _huff_lengthlist__44p6_long[] = {
+ 2, 7,13,15,16,17,19,20, 6, 3, 4, 7, 9,10,12,15,
+ 13, 4, 3, 4, 7, 8,11,13,14, 7, 4, 4, 6, 7,10,11,
+ 16, 9, 7, 6, 7, 8, 9,10,16, 9, 8, 7, 7, 6, 8, 8,
+ 18,12,10,10, 9, 8, 8, 9,20,14,13,12,11, 8, 9, 9,
+};
+
+static const static_codebook _huff_book__44p6_long = {
+ 2, 64,
+ (char *)_huff_lengthlist__44p6_long,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
+static const long _vq_quantlist__44p6_p1_0[] = {
+ 1,
+ 0,
+ 2,
+};
+
+static const char _vq_lengthlist__44p6_p1_0[] = {
+ 2, 5, 5, 5, 7, 7, 5, 7, 7, 5, 7, 7, 7, 8, 9, 7,
+ 9, 9, 5, 7, 7, 7, 9, 9, 7, 9, 8, 5, 7, 8, 8, 9,
+ 10, 8, 9, 9, 8, 9,10, 9,10,12,10,11,11, 8, 9,10,
+ 10,11,11, 9,11,11, 5, 8, 7, 8, 9, 9, 8,10, 9, 8,
+ 10, 9, 9,11,11,10,11,11, 8,10, 9,10,11,11, 9,12,
+ 10, 5, 8, 8, 7, 9,10, 8,10, 9, 7, 9, 9, 9,10,11,
+ 9,11,11, 8,10,10,10,11,11,10,12,11, 7, 9, 9, 9,
+ 10,11, 9,11,11, 9, 9,11,10,10,13,11,11,12, 9,11,
+ 11,11,12,13,11,13,12, 7, 9, 9, 9,11,11, 9,12,10,
+ 9,11,10,10,11,12,11,13,12, 9,11,11,11,13,13,11,
+ 13,11, 5, 8, 8, 8, 9,10, 7,10, 9, 8,10,10,10,11,
+ 11,10,11,11, 7, 9, 9, 9,11,11, 9,11,10, 7, 9, 9,
+ 9,10,12, 9,11,11, 9,11,11,11,11,13,11,13,13, 9,
+ 10,11,11,12,13,10,12,11, 7, 9, 9, 9,11,11, 9,11,
+ 10, 9,11,11,11,12,13,11,13,12, 9,11, 9,11,12,11,
+ 10,13,10,
+};
+
+static const static_codebook _44p6_p1_0 = {
+ 5, 243,
+ (char *)_vq_lengthlist__44p6_p1_0,
+ 1, -535822336, 1611661312, 2, 0,
+ (long *)_vq_quantlist__44p6_p1_0,
+ 0
+};
+
+static const long _vq_quantlist__44p6_p2_0[] = {
+ 2,
+ 1,
+ 3,
+ 0,
+ 4,
+};
+
+static const char _vq_lengthlist__44p6_p2_0[] = {
+ 4, 6, 6, 9, 9, 6, 7, 8,10,10, 6, 8, 7,10,10, 8,
+ 10,10,12,13, 8,10,10,13,12, 6, 8, 8,10,10, 7, 8,
+ 9,10,11, 8, 9, 9,11,11,10,10,11,12,13,10,11,11,
+ 14,13, 6, 8, 8,10,10, 8, 9, 9,11,11, 7, 9, 8,11,
+ 10,10,11,11,13,14,10,11,10,13,12, 9,10,10,12,12,
+ 10,10,11,12,13,10,11,11,13,13,12,12,13,12,15,13,
+ 14,13,15,14, 9,10,10,13,12,10,11,11,13,13,10,11,
+ 10,13,12,13,13,14,14,15,12,13,12,15,12, 6, 8, 8,
+ 10,11, 8, 9,10,11,12, 8, 9, 9,11,11,10,11,12,13,
+ 14,10,11,11,14,13, 8, 9, 9,11,12, 9,10,11,12,13,
+ 9,10,11,12,13,11,11,13,13,15,11,12,12,14,14, 8,
+ 9, 9,12,12, 9,10,11,12,13, 9,10,10,13,12,11,12,
+ 13,14,15,11,12,12,14,14,11,11,12,13,14,11,12,13,
+ 13,15,12,13,13,14,15,13,13,14,14,16,14,15,15,16,
+ 16,11,12,11,14,13,12,13,13,14,14,11,13,12,14,13,
+ 14,15,15,16,16,13,14,14,16,14, 6, 8, 8,11,10, 8,
+ 9, 9,12,11, 8,10, 9,12,11,10,11,11,13,13,10,12,
+ 11,14,13, 8, 9, 9,12,12, 9,10,10,12,13, 9,11,10,
+ 13,12,11,12,12,14,14,11,13,12,15,14, 8, 9, 9,12,
+ 11, 9,10,10,13,12, 9,11,10,13,12,12,12,12,14,14,
+ 11,13,12,15,13,11,11,12,13,14,11,12,13,13,14,12,
+ 13,13,14,15,13,13,14,14,16,14,15,15,16,16,11,12,
+ 11,14,13,12,13,13,15,14,11,13,12,15,13,14,15,15,
+ 16,16,13,15,13,16,14, 9,10,11,12,13,11,11,12,13,
+ 14,11,12,12,13,14,13,13,14,14,16,13,14,14,15,16,
+ 11,11,12,13,14,12,12,13,14,15,12,13,13,14,15,14,
+ 14,15,15,17,14,15,15,16,17,11,12,12,14,14,12,13,
+ 13,14,15,12,13,12,15,15,14,15,15,16,17,14,15,15,
+ 16,16,13,14,14,15,16,14,14,15,15,17,15,15,15,16,
+ 17,16,16,17,16,18,16,17,17,18,18,13,14,14,16,15,
+ 14,15,15,17,16,14,15,15,16,16,16,17,17,18,18,16,
+ 16,16,17,16, 9,11,10,13,12,11,12,12,14,13,11,12,
+ 11,15,13,13,14,14,16,15,13,14,13,17,14,11,12,12,
+ 14,14,12,12,13,15,15,12,13,13,15,14,14,14,15,16,
+ 16,14,15,15,17,16,11,12,11,14,13,12,13,13,15,14,
+ 12,13,12,15,13,14,15,15,16,16,14,15,14,17,15,13,
+ 14,14,15,16,14,15,15,16,17,14,15,15,16,17,16,16,
+ 16,17,17,16,17,17,18,18,13,15,14,16,15,15,15,15,
+ 17,16,14,15,14,17,15,16,17,17,18,18,16,17,16,18,
+ 16, 6, 8, 8,11,11, 8, 9, 9,11,12, 8, 9, 9,12,11,
+ 10,11,11,13,14,10,12,11,14,13, 7, 9, 9,11,12, 9,
+ 10,10,12,13, 9,10,10,13,12,11,11,12,13,15,11,12,
+ 12,15,14, 8, 9, 9,12,11, 9,10,10,13,13, 9,11,10,
+ 13,12,12,12,12,14,15,11,13,12,15,13,10,11,11,13,
+ 14,11,12,12,13,15,11,12,12,14,14,13,13,14,14,16,
+ 14,15,14,16,16,11,12,11,14,13,12,13,13,15,14,11,
+ 13,12,15,13,14,15,15,16,16,13,14,14,16,14, 8, 9,
+ 9,11,12, 9,10,11,12,13, 9,10,10,13,12,11,12,13,
+ 14,15,11,12,12,15,14, 9, 9,11,11,13,10,10,12,12,
+ 14,10,10,11,13,14,12,12,13,14,16,12,13,13,15,15,
+ 9,11,10,13,12,10,11,11,13,14,10,12,11,14,13,12,
+ 13,13,15,16,12,13,13,15,15,11,11,13,13,15,12,12,
+ 14,13,15,13,13,14,14,15,14,14,15,14,17,15,15,15,
+ 16,16,12,13,12,15,14,13,14,14,15,15,12,14,13,15,
+ 14,15,15,15,17,17,14,15,14,17,15, 7, 9, 9,12,11,
+ 9,10,10,12,12, 9,11,10,13,12,11,12,12,14,14,11,
+ 13,12,15,14, 9,10,10,12,12,10,10,11,12,13,10,11,
+ 11,14,13,12,12,13,14,15,12,13,13,16,15, 9,10,10,
+ 13,12,10,11,11,13,13,10,11,10,14,12,13,13,13,15,
+ 15,12,13,12,15,14,11,12,12,14,14,12,12,13,14,15,
+ 13,14,13,15,15,14,13,15,14,16,15,16,15,17,16,12,
+ 12,12,14,14,13,13,14,15,15,12,13,12,15,14,15,15,
+ 16,16,17,14,15,14,17,14,10,11,12,13,14,11,12,13,
+ 14,15,11,12,13,14,15,13,14,15,15,17,14,15,15,16,
+ 16,11,12,13,12,15,12,12,14,13,16,13,13,14,13,16,
+ 14,14,16,14,18,15,15,16,16,17,12,13,12,15,15,13,
+ 14,14,15,16,13,14,13,16,15,15,15,16,17,18,15,15,
+ 15,17,16,14,14,15,14,17,15,14,16,14,17,15,15,16,
+ 15,18,16,16,17,16,19,17,17,17,17,18,14,15,15,17,
+ 16,15,16,16,17,17,15,16,15,18,16,17,17,18,18,18,
+ 16,17,16,18,17,10,11,11,14,13,11,12,12,15,14,11,
+ 13,12,15,14,14,15,15,16,16,14,15,15,17,16,11,12,
+ 12,15,14,12,13,13,15,14,13,14,13,16,14,14,15,15,
+ 16,16,15,16,15,18,16,11,13,12,15,15,13,14,14,15,
+ 15,12,14,13,16,15,15,16,16,17,17,15,16,15,17,16,
+ 14,15,14,16,16,14,15,15,16,16,15,16,15,17,16,16,
+ 16,17,16,17,17,18,17,19,18,14,15,15,17,16,15,16,
+ 16,17,17,15,15,15,18,16,17,18,18,18,18,16,17,16,
+ 19,16, 6, 8, 8,11,11, 8, 9, 9,11,12, 8, 9, 9,12,
+ 11,10,11,12,13,14,10,11,11,14,13, 8, 9, 9,11,12,
+ 9,10,11,12,13, 9,10,10,13,13,11,12,13,13,15,11,
+ 12,12,15,14, 7, 9, 9,12,11, 9,10,10,12,13, 9,10,
+ 10,13,12,11,12,12,14,15,11,12,11,14,13,11,11,12,
+ 13,14,11,12,13,13,15,12,13,13,14,15,13,14,14,14,
+ 16,14,15,15,16,16,10,11,11,14,13,11,12,12,14,14,
+ 11,12,12,15,13,14,14,14,16,16,13,14,13,16,14, 7,
+ 9, 9,11,12, 9,10,10,12,13, 9,10,10,12,12,11,12,
+ 13,14,15,11,12,12,14,14, 9,10,10,12,13,10,10,11,
+ 12,14,10,11,11,13,13,12,12,13,14,15,13,13,13,15,
+ 15, 9,10,10,12,12,10,11,11,13,14,10,11,10,13,12,
+ 12,13,13,15,16,12,13,12,15,14,11,12,13,14,14,12,
+ 12,13,14,15,13,14,13,15,15,14,14,15,14,17,15,16,
+ 15,17,16,11,12,12,14,14,13,13,13,15,15,12,13,12,
+ 15,14,15,15,15,16,17,14,15,14,16,14, 8, 9, 9,12,
+ 11, 9,10,10,12,13, 9,11,10,13,12,11,12,12,14,15,
+ 11,12,12,15,14, 9,10,11,13,13,10,11,12,13,14,10,
+ 11,11,14,13,12,13,13,15,15,12,13,13,16,15, 9,11,
+ 9,13,11,10,11,10,14,13,10,12,10,14,12,12,13,13,
+ 15,15,12,13,12,16,14,12,12,13,14,15,12,13,14,14,
+ 16,13,14,14,15,15,14,14,15,15,17,15,16,15,17,16,
+ 11,13,11,15,13,13,14,13,15,14,12,14,12,16,13,15,
+ 15,15,16,16,14,15,14,17,14,10,11,11,13,14,11,12,
+ 13,14,15,11,12,12,14,15,14,14,15,16,17,14,15,15,
+ 16,16,11,12,13,14,15,12,13,14,15,16,13,14,14,15,
+ 16,15,15,16,16,18,15,16,16,17,17,11,12,12,14,15,
+ 13,13,14,14,16,12,13,13,15,15,15,15,16,16,18,14,
+ 15,15,16,16,14,15,15,16,17,15,15,16,16,17,15,16,
+ 16,17,17,16,16,17,16,19,17,18,17,18,18,14,14,15,
+ 16,16,15,15,16,16,17,14,15,15,16,16,17,17,18,18,
+ 19,16,17,16,17,16,10,12,11,14,13,11,13,12,15,14,
+ 11,13,12,15,14,14,15,15,16,16,13,15,14,17,15,12,
+ 13,13,15,15,13,13,14,15,16,13,14,14,16,16,14,15,
+ 15,17,17,15,16,16,17,17,11,13,12,15,12,13,14,13,
+ 16,13,12,14,12,16,13,15,16,15,17,16,14,16,14,18,
+ 14,14,15,15,16,17,15,15,16,16,17,15,16,16,17,17,
+ 16,16,17,17,18,17,18,17,18,18,14,15,14,17,14,15,
+ 16,15,18,15,15,16,15,18,14,17,17,17,18,17,16,17,
+ 16,19,16, 9,11,11,13,13,10,12,12,14,14,11,12,12,
+ 15,14,13,14,14,16,16,13,14,14,16,16,10,11,12,14,
+ 14,11,12,13,14,15,12,13,13,15,15,13,14,15,16,16,
+ 14,15,15,17,16,11,12,12,15,14,12,13,13,15,15,12,
+ 13,12,15,15,14,15,15,16,17,14,15,14,17,16,12,13,
+ 14,15,16,13,13,14,15,16,13,14,15,16,16,14,15,16,
+ 16,18,15,16,16,18,18,13,14,14,16,15,14,15,15,17,
+ 16,14,15,15,17,16,16,17,17,18,18,16,17,16,18,17,
+ 10,12,12,14,14,11,12,13,15,15,12,13,13,15,15,13,
+ 14,15,16,17,14,15,15,17,16,11,11,13,14,15,12,12,
+ 14,15,16,13,13,14,15,16,14,14,15,16,17,15,15,16,
+ 17,17,12,13,12,15,15,13,14,14,16,16,13,14,13,16,
+ 15,15,16,15,17,17,15,16,15,18,16,13,12,15,14,17,
+ 14,13,16,14,17,14,14,16,15,18,15,14,17,16,18,16,
+ 16,17,17,18,14,15,15,17,16,15,16,16,17,17,15,16,
+ 15,18,16,17,17,17,18,18,16,17,16,19,17,10,11,11,
+ 14,14,11,12,12,15,15,11,13,12,15,15,14,15,14,16,
+ 16,14,15,15,17,16,11,12,12,15,14,12,12,13,15,15,
+ 13,14,13,16,15,14,15,15,16,16,15,16,15,18,17,11,
+ 13,12,15,15,13,14,13,15,15,12,14,13,16,15,15,16,
+ 15,17,17,15,16,15,18,16,13,14,13,16,16,14,15,14,
+ 16,16,14,15,15,17,16,16,16,16,16,18,16,18,17,19,
+ 18,14,15,15,17,16,15,16,16,17,17,15,15,15,17,16,
+ 17,17,18,18,19,16,17,16,18,16,12,13,13,15,16,13,
+ 14,14,16,17,13,14,14,16,16,15,15,16,17,18,15,16,
+ 16,18,17,13,13,14,14,17,14,14,15,15,17,14,14,15,
+ 16,17,15,15,17,16,18,16,17,17,18,18,13,14,14,17,
+ 16,14,15,15,17,17,14,15,14,17,16,16,17,17,18,18,
+ 16,17,16,18,17,15,14,16,13,18,16,15,17,14,19,16,
+ 16,17,15,18,17,16,18,15,19,18,18,18,17,19,15,16,
+ 16,18,17,16,17,17,18,18,16,17,16,19,17,18,19,18,
+ 19,19,17,18,17,20,18,11,12,12,15,15,13,13,14,15,
+ 16,13,14,13,16,15,15,16,16,17,17,15,16,16,18,17,
+ 12,14,13,16,15,13,13,14,15,16,14,15,14,17,16,16,
+ 16,16,16,17,16,17,17,19,17,12,13,14,16,16,14,15,
+ 15,16,17,13,15,13,17,15,16,17,17,18,18,16,17,16,
+ 18,16,15,16,15,17,16,15,15,15,17,17,16,17,16,18,
+ 17,17,16,17,16,18,18,19,18,20,18,15,16,16,17,17,
+ 16,17,17,18,18,15,16,15,18,17,18,18,19,19,19,17,
+ 18,16,19,16, 9,11,11,13,13,11,12,12,14,15,10,12,
+ 12,14,14,13,14,14,16,16,13,14,14,16,16,11,12,12,
+ 14,14,12,12,13,15,15,12,13,13,15,15,14,15,15,16,
+ 17,14,15,15,16,16,10,12,11,14,14,12,13,13,15,15,
+ 11,13,12,15,14,14,15,15,16,17,13,15,14,17,16,13,
+ 14,14,15,16,14,15,15,16,17,14,15,15,16,17,16,16,
+ 17,17,18,16,17,17,18,18,12,14,13,16,15,13,15,14,
+ 17,16,13,14,13,17,15,15,16,16,18,18,15,16,15,18,
+ 16,10,11,11,14,14,11,12,13,14,15,11,12,12,15,15,
+ 14,15,15,16,17,14,15,15,16,16,11,12,13,15,15,12,
+ 13,14,15,16,13,14,14,15,16,15,15,16,16,18,15,15,
+ 16,17,17,11,12,12,14,15,13,13,14,15,16,12,13,13,
+ 15,15,15,15,16,17,18,14,15,15,17,16,14,15,15,16,
+ 17,15,15,16,16,17,15,16,16,17,17,16,16,17,16,19,
+ 17,17,18,19,18,13,13,14,16,16,14,15,16,17,17,14,
+ 14,15,16,16,16,16,17,18,18,16,16,16,18,16,10,12,
+ 12,14,14,12,13,13,15,15,11,13,12,15,15,14,15,15,
+ 16,17,13,15,14,17,16,12,13,13,15,15,13,13,14,15,
+ 16,13,14,14,16,16,15,15,16,17,18,15,15,16,17,17,
+ 11,13,12,15,14,13,14,13,16,15,12,14,12,16,14,15,
+ 16,15,17,17,14,16,14,17,16,14,15,15,16,17,15,15,
+ 16,16,18,15,16,16,17,17,16,17,17,17,19,17,17,17,
+ 18,18,13,15,12,17,14,14,16,14,17,15,14,15,13,17,
+ 14,16,17,16,18,17,15,17,14,19,15,11,12,12,15,15,
+ 13,13,14,15,16,13,14,13,16,15,15,16,16,17,18,15,
+ 16,16,17,17,12,14,13,16,16,13,13,15,15,17,14,15,
+ 15,17,16,16,16,17,16,19,16,17,17,18,18,12,13,14,
+ 15,16,14,14,15,16,17,13,14,13,16,15,16,17,17,18,
+ 19,15,16,16,17,16,15,16,16,18,17,15,15,16,17,18,
+ 16,17,17,18,18,16,16,18,16,19,18,19,19,20,19,15,
+ 15,16,16,17,16,16,17,17,18,15,15,15,17,16,18,18,
+ 19,18,20,17,17,16,18,16,12,13,13,16,15,13,14,14,
+ 16,16,13,14,14,16,16,15,16,16,17,18,15,16,15,18,
+ 17,13,14,14,16,16,14,15,15,16,17,14,15,15,17,17,
+ 16,17,17,18,18,16,17,17,18,18,13,14,13,17,14,14,
+ 15,14,17,16,14,15,14,17,15,16,17,17,18,18,15,17,
+ 15,19,15,16,16,16,17,18,16,16,17,17,19,16,17,17,
+ 18,19,17,17,18,18,20,18,18,18,19,19,15,16,14,18,
+ 13,16,17,16,19,15,16,17,15,19,14,18,18,18,19,17,
+ 17,18,16,20,15,
+};
+
+static const static_codebook _44p6_p2_0 = {
+ 5, 3125,
+ (char *)_vq_lengthlist__44p6_p2_0,
+ 1, -533725184, 1611661312, 3, 0,
+ (long *)_vq_quantlist__44p6_p2_0,
+ 0
+};
+
+static const long _vq_quantlist__44p6_p3_0[] = {
+ 1,
+ 0,
+ 2,
+};
+
+static const char _vq_lengthlist__44p6_p3_0[] = {
+ 1, 5, 5, 5, 7, 8, 5, 8, 7, 5, 7, 8, 8, 8,10, 8,
+ 10,10, 5, 8, 7, 8,10,10, 8,10, 8, 6, 8, 9, 8,10,
+ 12, 9,11,11, 9,10,11,11,11,13,12,13,13, 9,11,11,
+ 11,13,13,11,13,12, 6, 9, 8, 9,11,11, 8,12,10, 9,
+ 11,11,11,12,13,11,13,13, 9,11,10,11,13,13,11,13,
+ 11, 5, 9, 9, 8,11,11, 9,12,11, 8,10,11,10,11,13,
+ 11,13,13, 9,11,11,11,13,13,11,13,12, 8,10,11,10,
+ 12,13,10,13,12,10,10,13,11,11,14,12,13,14,11,13,
+ 12,13,14,14,12,14,12, 8,11,10,11,12,13,11,14,12,
+ 10,13,12,12,12,13,13,15,14,11,12,13,13,14,15,12,
+ 14,12, 5, 9, 9, 9,11,12, 8,11,11, 9,11,11,11,12,
+ 13,11,13,13, 8,11,10,11,13,13,10,13,11, 8,10,11,
+ 11,12,14,11,13,12,11,13,12,12,12,14,13,15,14,10,
+ 12,13,13,14,15,12,13,12, 8,11,10,10,12,13,10,13,
+ 12,11,12,13,12,12,14,13,14,14,10,13,10,12,14,13,
+ 11,14,11,
+};
+
+static const static_codebook _44p6_p3_0 = {
+ 5, 243,
+ (char *)_vq_lengthlist__44p6_p3_0,
+ 1, -533200896, 1614282752, 2, 0,
+ (long *)_vq_quantlist__44p6_p3_0,
+ 0
+};
+
+static const long _vq_quantlist__44p6_p3_1[] = {
+ 1,
+ 0,
+ 2,
+};
+
+static const char _vq_lengthlist__44p6_p3_1[] = {
+ 5, 7, 7, 6, 7, 7, 6, 7, 7, 6, 7, 7, 7, 8, 8, 7,
+ 8, 8, 6, 7, 7, 7, 8, 8, 7, 8, 8, 7, 7, 8, 7, 8,
+ 8, 7, 8, 8, 8, 8, 8, 8, 8, 9, 8, 9, 9, 8, 8, 8,
+ 8, 9, 9, 8, 9, 8, 7, 8, 7, 7, 8, 8, 7, 8, 8, 8,
+ 8, 8, 8, 8, 9, 8, 9, 9, 8, 8, 8, 8, 9, 9, 8, 9,
+ 8, 6, 8, 8, 7, 8, 8, 7, 8, 8, 7, 8, 8, 8, 8, 9,
+ 8, 9, 9, 8, 8, 8, 8, 9, 9, 8, 9, 8, 7, 8, 8, 8,
+ 8, 9, 8, 9, 9, 8, 8, 9, 8, 9, 9, 9, 9, 9, 8, 9,
+ 9, 9, 9, 9, 9, 9, 9, 7, 8, 8, 8, 9, 9, 8, 9, 8,
+ 8, 8, 8, 8, 9, 9, 9, 9, 9, 8, 9, 8, 9, 9, 9, 9,
+ 9, 9, 6, 8, 8, 7, 8, 8, 7, 8, 8, 8, 8, 8, 8, 8,
+ 9, 8, 9, 9, 7, 8, 8, 8, 9, 9, 8, 9, 8, 7, 8, 8,
+ 8, 8, 9, 8, 9, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9, 8,
+ 8, 8, 9, 9, 9, 8, 9, 9, 7, 8, 8, 8, 9, 9, 8, 9,
+ 8, 8, 9, 9, 9, 9, 9, 9, 9, 9, 8, 9, 8, 9, 9, 9,
+ 9, 9, 9,
+};
+
+static const static_codebook _44p6_p3_1 = {
+ 5, 243,
+ (char *)_vq_lengthlist__44p6_p3_1,
+ 1, -535822336, 1611661312, 2, 0,
+ (long *)_vq_quantlist__44p6_p3_1,
+ 0
+};
+
+static const long _vq_quantlist__44p6_p4_0[] = {
+ 1,
+ 0,
+ 2,
+};
+
+static const char _vq_lengthlist__44p6_p4_0[] = {
+ 2, 5, 5, 5, 7, 8, 5, 8, 7, 5, 7, 7, 7, 7, 9, 7,
+ 9, 9, 5, 7, 7, 8, 9, 9, 7, 9, 7, 6, 8, 8, 8, 9,
+ 10, 8, 9, 9, 8, 9,10, 9, 9,11,10,11,11, 8, 9, 9,
+ 10,11,11, 9,11,10, 6, 8, 8, 8, 9, 9, 8,10, 9, 8,
+ 9, 9, 9,10,11,10,11,10, 8,10, 9,10,11,11, 9,11,
+ 9, 6, 8, 8, 7, 9, 9, 8,10, 9, 7, 9, 9, 9, 9,10,
+ 9,10,10, 8, 9, 9, 9,10,10, 9,11,10, 7, 9, 9, 8,
+ 10,10, 9,10,10, 9, 9,10,10,10,11,10,11,11, 9,10,
+ 10,10,11,11,10,11,10, 7, 9, 9, 9, 9,10, 9,10, 9,
+ 8,10, 9, 9, 9,11,10,11,11, 9,10,10,10,11,11, 9,
+ 11, 9, 6, 8, 8, 8, 9,10, 7, 9, 9, 8, 9, 9, 9,10,
+ 10, 9,10,10, 7, 9, 9, 9,10,10, 9,10, 9, 7, 9, 9,
+ 9, 9,10, 9,10, 9, 9,10,10, 9, 9,11,10,11,11, 8,
+ 9,10,10,11,11, 9,11, 9, 7, 9, 9, 9,10,10, 8,10,
+ 10, 9,10,10,10,10,11,10,11,11, 9,10, 9,10,11,11,
+ 10,11,10,
+};
+
+static const static_codebook _44p6_p4_0 = {
+ 5, 243,
+ (char *)_vq_lengthlist__44p6_p4_0,
+ 1, -531365888, 1616117760, 2, 0,
+ (long *)_vq_quantlist__44p6_p4_0,
+ 0
+};
+
+static const long _vq_quantlist__44p6_p4_1[] = {
+ 2,
+ 1,
+ 3,
+ 0,
+ 4,
+};
+
+static const char _vq_lengthlist__44p6_p4_1[] = {
+ 6, 8, 8,10,10, 8, 9, 9,10,11, 8,10, 9,11,10, 9,
+ 10,10,11,11, 9,10,10,11,11, 8, 9, 9,10,10, 9, 9,
+ 10,11,11,10,10,10,11,11,10,11,11,11,11,10,11,11,
+ 11,11, 8, 9, 9,11,10,10,10,10,11,11, 9,10, 9,11,
+ 11,10,11,11,11,11,10,11,10,11,11,10,10,11,11,11,
+ 10,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
+ 11,11,11,11,10,11,10,11,11,11,11,11,11,11,10,11,
+ 11,11,11,11,11,11,11,11,11,11,11,11,11, 8, 9,10,
+ 11,11,10,10,11,11,11,10,10,10,11,11,10,11,11,12,
+ 12,10,11,11,12,12,10,10,11,11,11,10,10,11,11,12,
+ 11,11,11,12,12,11,11,12,12,12,11,11,12,12,12,10,
+ 10,10,11,11,11,11,11,12,12,10,11,11,12,12,11,12,
+ 12,12,12,11,12,11,12,12,11,11,11,11,12,11,11,12,
+ 12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,
+ 12,11,11,11,12,11,11,12,12,12,12,11,12,12,12,12,
+ 12,12,12,12,12,12,12,12,12,12, 8,10, 9,11,11,10,
+ 10,10,11,11,10,11,10,11,11,10,11,11,12,12,10,11,
+ 11,12,12,10,10,10,11,11,10,11,11,12,12,11,11,11,
+ 12,12,11,11,12,12,12,11,12,12,12,12,10,11,10,11,
+ 11,11,11,11,12,12,10,11,10,12,11,11,12,11,12,12,
+ 11,12,11,12,12,11,11,11,12,12,11,11,12,12,12,11,
+ 12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,11,
+ 11,12,11,11,12,12,12,12,11,12,11,12,12,12,12,12,
+ 12,12,12,12,12,12,12,10,11,11,11,12,11,11,12,12,
+ 12,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,
+ 11,11,12,12,12,11,12,12,12,12,12,12,12,12,12,12,
+ 12,12,12,12,12,12,12,12,13,11,12,11,12,12,12,12,
+ 12,12,12,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,13,12,13,12,12,12,12,13,12,12,12,12,12,
+ 12,12,12,12,12,12,12,12,12,12,12,13,13,13,13,12,
+ 12,12,13,12,10,11,11,12,11,11,11,12,12,12,11,12,
+ 11,12,12,11,12,12,12,12,11,12,12,12,12,11,11,12,
+ 12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,
+ 12,12,12,12,12,12,11,12,11,12,12,12,12,12,12,12,
+ 11,12,12,12,12,12,12,12,12,12,12,12,12,13,12,12,
+ 12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,
+ 12,12,13,12,12,12,12,13,12,12,12,12,12,12,12,12,
+ 12,12,12,12,12,12,12,12,12,12,13,13,12,13,12,13,
+ 12, 8,10,10,11,11,10,10,11,11,11,10,11,10,11,11,
+ 10,11,11,12,12,10,11,11,12,12, 9,10,11,11,11,10,
+ 10,11,12,12,10,11,11,12,12,11,11,12,12,12,11,12,
+ 12,12,12,10,11,10,11,11,11,11,11,12,12,10,11,11,
+ 12,12,11,12,12,12,12,11,12,11,12,12,11,11,11,12,
+ 12,11,11,12,12,12,11,12,12,12,12,12,12,12,12,12,
+ 12,12,12,12,12,11,11,11,12,12,11,12,12,12,12,11,
+ 12,12,12,12,12,12,12,12,12,12,12,12,12,12, 9,10,
+ 10,11,11,10,11,11,12,12,10,11,11,12,12,11,11,12,
+ 12,12,11,12,12,12,12,10,11,11,12,12,11,11,12,12,
+ 12,11,11,12,12,12,11,11,12,12,12,12,12,12,12,12,
+ 10,11,11,12,12,11,12,12,12,12,11,12,11,12,12,12,
+ 12,12,12,12,12,12,12,12,12,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,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, 9,10,10,11,11,
+ 10,11,11,12,12,10,11,11,12,11,11,12,12,12,12,11,
+ 12,12,12,12,10,11,11,12,12,11,11,11,12,12,11,12,
+ 12,12,12,12,12,12,12,12,12,12,12,12,12,10,11,11,
+ 12,12,11,12,12,12,12,11,12,11,12,12,12,12,12,12,
+ 12,12,12,12,12,12,11,12,12,12,12,11,12,12,12,12,
+ 12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,
+ 12,12,12,12,12,12,12,12,12,11,12,12,12,12,12,12,
+ 12,12,12,12,12,12,12,12,11,11,11,12,12,11,12,12,
+ 12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,
+ 13,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,
+ 12,12,13,12,13,12,12,13,13,13,11,12,12,12,12,12,
+ 12,12,13,13,12,12,12,13,12,12,12,12,13,13,12,13,
+ 12,13,13,12,12,12,12,12,12,12,12,12,13,12,13,13,
+ 13,13,12,13,13,13,13,13,13,13,13,13,12,12,12,12,
+ 12,12,12,13,13,13,12,13,12,13,13,12,13,13,13,13,
+ 12,13,13,13,13,11,11,11,12,12,11,12,12,12,12,11,
+ 12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,12,
+ 12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,
+ 12,13,12,12,12,13,13,11,12,12,12,12,12,12,12,12,
+ 13,12,12,12,13,12,12,13,12,13,13,12,13,12,13,13,
+ 12,12,12,12,12,12,12,13,13,13,12,12,13,13,13,12,
+ 13,13,12,13,13,13,13,13,13,12,12,12,12,12,12,13,
+ 12,13,13,12,13,12,13,12,12,13,13,13,13,12,13,13,
+ 13,13, 8,10,10,11,11,10,10,11,11,11, 9,11,10,11,
+ 11,10,11,11,12,12,10,11,11,12,12,10,10,11,11,11,
+ 10,11,11,12,12,11,11,11,12,12,11,11,12,12,12,11,
+ 12,12,12,12, 9,11,10,11,11,10,11,11,12,12,10,11,
+ 10,12,12,11,12,12,12,12,11,12,11,12,12,11,11,11,
+ 12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,
+ 12,12,12,12,12,12,11,11,11,12,12,11,12,12,12,12,
+ 11,12,11,12,12,12,12,12,12,12,12,12,12,12,12, 9,
+ 10,10,11,11,10,11,11,12,12,10,11,11,12,12,11,12,
+ 12,12,12,11,12,12,12,12,10,11,11,12,12,11,11,12,
+ 12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,
+ 12,10,11,11,12,12,11,11,12,12,12,11,11,11,12,12,
+ 12,12,12,12,12,11,12,12,12,12,11,12,12,12,12,11,
+ 12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,
+ 12,12,12,11,12,12,12,12,12,12,12,12,12,11,12,12,
+ 12,12,12,12,12,12,12,12,12,12,12,12, 9,10,10,11,
+ 11,10,11,11,12,12,10,11,11,12,12,11,12,12,12,12,
+ 11,12,11,12,12,10,11,11,12,12,11,11,12,12,12,11,
+ 11,12,12,12,12,12,12,12,12,12,12,12,12,12,10,11,
+ 11,12,12,11,12,11,12,12,11,12,11,12,12,12,12,12,
+ 12,12,11,12,11,12,12,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,
+ 11,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,
+ 12,12,12,12,12,12,12,12,12,11,11,11,12,12,11,12,
+ 12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,
+ 12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,13,
+ 13,12,12,12,13,13,12,12,13,13,13,11,12,12,12,12,
+ 12,12,12,12,12,12,12,12,12,12,12,13,12,13,13,12,
+ 12,12,13,12,12,12,12,12,12,12,12,13,13,13,12,12,
+ 13,13,13,12,13,13,12,13,12,13,13,13,13,12,12,12,
+ 12,12,12,12,13,13,13,12,12,12,13,12,12,13,13,13,
+ 13,12,13,13,13,13,11,11,11,12,12,11,12,12,12,12,
+ 11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,
+ 12,12,12,12,12,12,12,12,12,12,12,12,13,12,12,12,
+ 13,13,13,12,12,12,13,13,11,12,12,12,12,12,12,12,
+ 13,12,12,12,12,13,12,12,13,12,13,13,12,13,12,13,
+ 12,12,12,12,12,12,12,12,13,13,13,12,13,13,13,13,
+ 12,13,13,13,13,13,13,13,13,13,12,12,12,12,12,12,
+ 13,12,13,12,12,13,12,13,12,13,13,13,13,13,12,13,
+ 13,13,13,10,11,11,12,12,11,12,12,12,12,11,12,12,
+ 12,12,12,12,12,12,12,12,12,12,12,12,11,11,12,12,
+ 12,11,12,12,12,12,12,12,12,12,12,12,12,12,13,13,
+ 12,12,12,13,13,11,12,12,12,12,12,12,12,12,12,12,
+ 12,12,12,12,12,12,12,13,13,12,12,12,13,12,12,12,
+ 12,12,12,12,12,12,12,13,12,12,12,12,13,12,12,13,
+ 12,13,12,13,13,13,13,12,12,12,12,12,12,12,12,13,
+ 12,12,12,12,13,12,12,13,13,13,13,12,13,12,13,13,
+ 11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,
+ 12,12,12,13,12,12,12,13,12,11,12,12,12,12,12,12,
+ 12,12,13,12,12,12,12,13,12,12,13,13,13,12,12,13,
+ 13,13,11,12,12,12,12,12,12,12,12,13,12,12,12,13,
+ 12,12,13,12,13,13,12,13,12,13,13,12,12,12,12,12,
+ 12,12,13,12,13,12,12,13,13,13,12,12,13,13,13,13,
+ 13,13,13,13,12,12,12,12,12,12,13,13,13,13,12,13,
+ 12,13,12,12,13,13,13,13,12,13,13,13,13,11,11,11,
+ 12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,
+ 12,12,12,12,12,13,11,12,12,12,12,12,12,12,12,13,
+ 12,12,12,13,13,12,12,13,13,13,12,12,13,13,13,11,
+ 12,12,12,12,12,12,12,13,13,12,12,12,13,12,12,13,
+ 12,13,13,12,13,12,13,13,12,12,12,12,12,12,12,12,
+ 12,13,12,13,12,13,13,12,13,13,13,13,12,13,13,13,
+ 13,12,12,12,12,12,12,13,12,13,13,12,12,12,13,13,
+ 12,13,13,13,13,12,13,12,13,13,11,12,12,12,12,11,
+ 12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,
+ 12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,
+ 12,12,12,12,13,12,13,12,12,12,13,13,11,12,12,12,
+ 12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,13,
+ 12,13,12,13,13,12,12,12,12,12,12,12,13,12,13,12,
+ 12,13,12,13,12,12,13,12,13,12,13,13,13,13,12,12,
+ 12,12,12,12,12,12,12,12,12,12,12,13,12,12,13,13,
+ 13,13,12,13,12,13,12,11,11,11,12,12,11,12,12,12,
+ 12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,
+ 11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,
+ 12,12,12,12,12,12,12,13,13,11,12,12,12,12,12,12,
+ 12,12,12,12,12,12,12,12,12,12,12,13,13,12,12,12,
+ 13,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,
+ 12,12,12,13,12,12,12,13,12,12,12,12,12,12,12,12,
+ 12,12,12,13,12,12,12,12,13,12,12,13,12,13,12,12,
+ 13,12,13,12,10,11,11,12,12,11,12,12,12,12,11,12,
+ 11,12,12,11,12,12,12,12,11,12,12,12,12,11,12,12,
+ 12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,
+ 13,12,12,12,13,13,11,12,11,12,12,12,12,12,12,12,
+ 11,12,12,12,12,12,12,12,13,13,12,12,12,13,12,12,
+ 12,12,12,12,12,12,12,12,13,12,12,12,12,13,12,13,
+ 13,12,13,12,13,13,13,13,12,12,12,12,12,12,12,12,
+ 13,13,12,12,12,13,12,12,13,13,13,13,12,13,12,13,
+ 12,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,
+ 12,12,12,13,13,12,12,12,13,12,11,12,12,12,12,12,
+ 12,12,12,13,12,12,12,13,13,12,12,13,13,13,12,12,
+ 13,13,13,11,12,12,12,12,12,12,12,13,13,12,12,12,
+ 13,12,12,13,12,13,13,12,12,12,13,13,12,12,12,12,
+ 12,12,12,13,13,13,12,12,13,13,13,12,12,13,13,13,
+ 12,13,13,13,13,12,12,12,12,12,12,12,13,13,13,12,
+ 12,12,13,12,12,13,13,13,13,12,13,13,13,13,11,11,
+ 11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,
+ 12,13,12,12,12,13,13,11,12,12,12,12,12,12,12,12,
+ 13,12,12,12,13,13,12,12,13,13,13,12,12,13,13,13,
+ 11,12,12,12,12,12,12,12,13,12,12,12,12,13,12,12,
+ 13,12,13,13,12,13,12,13,13,12,12,12,12,12,12,12,
+ 12,13,13,12,13,12,13,13,12,13,13,13,13,13,13,13,
+ 13,13,12,12,12,12,12,12,13,12,13,13,12,13,12,13,
+ 12,12,13,13,13,13,12,13,12,13,13,11,11,11,12,12,
+ 11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,
+ 12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,
+ 12,12,12,12,12,12,12,13,12,12,12,13,13,11,12,12,
+ 12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,
+ 13,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,
+ 12,12,12,12,13,12,12,12,12,13,12,12,13,12,13,12,
+ 12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,
+ 13,12,12,12,13,12,12,12,11,12,11,12,12,11,12,12,
+ 12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,
+ 12,11,12,12,12,12,12,12,12,12,13,12,12,12,12,12,
+ 12,12,12,13,13,12,12,12,13,13,11,12,12,12,12,12,
+ 12,12,12,12,12,12,12,12,12,12,13,12,13,13,12,12,
+ 12,13,12,12,12,12,12,12,12,12,12,12,13,12,12,12,
+ 13,13,12,12,13,12,13,12,13,13,13,13,12,12,12,12,
+ 12,12,12,12,13,12,12,12,12,13,12,12,13,12,13,13,
+ 12,13,12,13,12,
+};
+
+static const static_codebook _44p6_p4_1 = {
+ 5, 3125,
+ (char *)_vq_lengthlist__44p6_p4_1,
+ 1, -533725184, 1611661312, 3, 0,
+ (long *)_vq_quantlist__44p6_p4_1,
+ 0
+};
+
+static const long _vq_quantlist__44p6_p5_0[] = {
+ 2,
+ 1,
+ 3,
+ 0,
+ 4,
+};
+
+static const char _vq_lengthlist__44p6_p5_0[] = {
+ 2, 6, 6,10,10, 5, 7, 8,11,12, 5, 8, 7,12,11, 9,
+ 11,11,13,15, 9,11,11,15,13, 6, 7, 8,11,11, 7, 7,
+ 9,11,13, 8, 9, 9,13,12,11,11,12,12,15,11,12,12,
+ 15,14, 6, 8, 7,11,11, 8, 9, 9,12,13, 7, 9, 7,13,
+ 11,11,12,12,14,15,11,12,11,15,12,10,11,11,12,14,
+ 10,11,12,12,15,12,13,13,14,15,13,12,14,12,16,15,
+ 15,15,16,16,10,11,11,14,12,12,13,13,15,14,10,12,
+ 11,15,12,15,15,15,16,17,13,14,12,17,12, 6, 8, 8,
+ 12,12, 8, 9,10,13,13, 8, 9, 9,13,13,12,12,13,15,
+ 16,12,13,13,16,15, 8, 9,10,12,13, 9, 9,11,13,14,
+ 10,11,11,14,14,13,13,14,15,16,13,14,14,16,16, 8,
+ 10, 9,13,13,10,11,11,14,14, 9,10,10,14,13,13,14,
+ 14,16,17,13,13,13,16,15,12,13,13,14,16,13,13,14,
+ 14,16,14,14,14,16,16,15,15,16,15,18,16,17,17,18,
+ 18,12,13,13,15,15,14,14,14,16,16,13,14,13,16,15,
+ 16,16,17,18,18,15,16,15,18,15, 6, 8, 8,12,12, 8,
+ 9, 9,13,13, 8,10, 9,13,13,12,13,13,15,16,12,13,
+ 12,16,15, 8, 9,10,13,13, 9,10,10,13,14,10,11,11,
+ 14,14,13,13,13,15,16,13,14,14,17,16, 8,10, 9,13,
+ 13,10,11,11,14,14, 9,11, 9,14,13,13,14,14,16,16,
+ 13,14,13,16,14,12,13,13,15,16,13,13,14,15,16,14,
+ 14,14,16,16,15,15,16,15,18,17,17,17,18,18,12,13,
+ 13,16,14,14,14,14,16,16,13,14,13,16,14,16,17,17,
+ 18,18,15,16,15,18,15,11,12,13,14,16,13,13,14,15,
+ 17,13,14,14,16,17,16,16,17,17,19,16,17,17,18,19,
+ 13,13,14,16,16,14,14,15,16,17,14,15,15,17,17,17,
+ 16,17,17,19,17,17,18,19,19,13,14,14,16,16,14,14,
+ 15,17,18,14,15,14,17,17,17,17,18,18,19,17,17,17,
+ 18,19,16,16,16,17,18,17,17,17,18,19,17,17,17,18,
+ 19,18,18,19,18,20,19,20,19,21,20,16,17,17,18,18,
+ 17,17,18,19,19,17,17,17,19,18,19,19,19,19,20,19,
+ 19,19,20,19,11,13,12,16,14,13,14,14,17,16,13,14,
+ 13,17,15,16,17,17,18,18,16,17,16,19,17,13,14,14,
+ 16,16,14,14,14,17,17,14,15,15,17,16,17,17,17,19,
+ 19,17,18,17,19,18,13,14,13,17,16,14,15,15,17,17,
+ 14,15,14,18,16,17,17,17,19,19,17,17,16,19,17,16,
+ 17,17,18,19,17,17,17,18,18,17,18,17,19,18,18,19,
+ 18,19,19,19,20,19,20,20,16,17,16,18,17,17,17,17,
+ 18,18,17,18,17,19,17,19,19,19,19,20,18,19,19,20,
+ 18, 6, 8, 8,12,12, 8, 9, 9,13,13, 8,10, 9,13,13,
+ 11,13,13,15,16,12,13,13,16,15, 8, 9, 9,13,13, 9,
+ 9,10,13,14,10,11,11,14,14,12,12,13,14,16,13,14,
+ 14,17,16, 8,10, 9,13,13,10,11,11,14,14, 9,11,10,
+ 14,13,13,14,14,16,16,13,14,13,16,15,12,13,13,14,
+ 16,12,13,14,14,16,13,14,14,16,16,15,14,16,15,18,
+ 16,17,17,18,17,12,13,13,16,15,14,14,14,16,16,13,
+ 14,13,16,15,16,16,17,17,17,15,16,15,18,15, 7, 9,
+ 9,13,13, 9, 9,11,13,14, 9,10,10,14,13,12,13,14,
+ 15,16,12,14,13,17,15, 9, 9,10,13,14,10, 9,11,13,
+ 15,11,11,11,14,14,13,12,14,14,17,14,14,14,17,16,
+ 9,10,10,14,13,11,11,11,14,14,10,11,10,15,13,14,
+ 14,14,16,17,13,14,13,17,14,13,13,14,14,16,13,13,
+ 14,14,17,14,14,14,16,16,15,14,16,15,18,17,17,17,
+ 18,18,13,14,13,16,15,14,14,15,17,16,13,14,13,17,
+ 15,17,16,17,17,17,15,16,14,18,14, 7, 9, 9,13,13,
+ 9,10,10,13,14, 9,11,10,14,13,13,14,14,16,16,13,
+ 14,14,17,15, 9,10,10,14,13, 9,10,11,13,14,11,12,
+ 11,15,14,13,13,14,14,16,14,15,15,17,17, 9,10,10,
+ 14,14,11,12,12,14,15,10,11,10,15,13,14,15,15,17,
+ 17,14,15,13,17,14,13,14,13,16,16,13,13,14,15,16,
+ 14,15,15,17,17,15,14,16,15,18,17,18,17,20,18,13,
+ 14,14,16,16,15,15,15,17,17,13,14,13,17,15,17,17,
+ 18,18,18,15,16,14,19,14,12,13,13,15,16,13,13,15,
+ 16,17,13,14,14,16,16,15,15,17,17,19,16,17,17,19,
+ 18,13,13,14,15,17,14,13,15,15,17,14,15,15,16,17,
+ 16,15,18,16,19,17,17,17,18,19,13,14,14,17,16,14,
+ 15,15,17,17,14,15,14,17,16,17,17,17,18,19,16,17,
+ 16,19,17,16,16,17,16,18,16,16,17,16,19,17,17,18,
+ 18,19,18,17,18,17,21,19,19,19,20,19,16,17,17,18,
+ 18,17,17,18,18,19,16,17,16,18,18,19,19,19,19,20,
+ 18,18,17,20,18,11,13,13,16,15,13,14,14,16,17,13,
+ 15,14,17,16,16,17,17,18,18,17,17,17,19,18,13,14,
+ 13,17,16,14,13,14,16,17,15,16,15,18,16,17,16,17,
+ 17,19,18,18,18,20,18,13,14,14,16,17,15,15,15,17,
+ 18,14,15,14,18,16,18,18,18,19,20,17,18,16,20,17,
+ 16,17,16,18,18,16,16,17,18,18,17,18,18,19,18,18,
+ 17,19,17,20,19,20,19,22,20,16,16,17,18,18,18,17,
+ 17,19,19,16,17,16,18,17,19,20,19,22,21,18,19,18,
+ 21,17, 6, 8, 8,12,12, 8, 9,10,13,13, 8, 9, 9,13,
+ 13,12,13,13,15,16,11,13,13,16,15, 8, 9,10,13,13,
+ 9,10,11,13,14,10,11,11,14,14,13,13,14,15,16,13,
+ 14,14,16,16, 8, 9, 9,13,13,10,11,11,14,14, 9,10,
+ 9,14,13,13,14,14,16,17,12,14,12,16,14,12,13,13,
+ 15,16,13,13,14,15,16,13,14,14,15,17,15,15,16,15,
+ 18,16,16,17,17,17,12,13,13,16,14,13,14,14,16,16,
+ 12,14,13,16,14,16,17,17,18,18,15,15,14,18,14, 7,
+ 9, 9,13,13, 9,10,11,13,14, 9,10,10,14,13,13,14,
+ 14,15,17,13,14,14,16,15, 9,10,10,14,14,10,10,11,
+ 13,15,11,12,12,15,14,14,13,15,14,17,14,15,15,17,
+ 17, 9,10,10,13,14,11,11,12,14,15, 9,11,10,14,13,
+ 14,15,15,16,18,13,14,13,16,14,13,14,14,16,16,13,
+ 13,14,15,17,15,15,15,16,17,15,14,16,15,18,17,17,
+ 18,19,18,13,14,14,16,16,14,15,15,17,17,13,14,13,
+ 16,15,17,17,18,18,18,15,16,14,18,15, 7, 9, 9,13,
+ 13, 9,10,10,13,14, 9,11,10,14,13,12,13,14,15,16,
+ 12,14,13,16,15, 9,10,10,13,14,10,10,11,13,14,11,
+ 11,11,15,14,13,13,14,14,16,14,14,14,17,16, 9,10,
+ 9,14,13,11,11,11,14,14,10,11, 9,15,13,14,14,14,
+ 16,16,13,14,12,17,14,13,13,14,15,16,13,13,14,15,
+ 16,14,15,14,16,17,15,14,16,14,18,16,17,17,18,18,
+ 13,14,13,16,14,14,14,14,16,16,13,14,13,17,14,17,
+ 17,17,18,18,15,16,14,18,15,11,13,13,16,16,13,14,
+ 15,16,17,13,14,14,17,16,16,17,17,18,19,17,17,17,
+ 19,18,13,14,14,17,17,13,13,15,16,18,15,15,15,17,
+ 17,17,16,18,17,20,18,17,18,19,19,13,14,14,16,17,
+ 15,15,16,16,18,14,15,14,16,16,17,17,18,18,20,17,
+ 18,16,18,17,16,17,16,19,18,16,16,17,18,19,18,18,
+ 18,19,19,18,17,18,17,21,20,19,19,21,21,16,16,17,
+ 18,18,17,17,18,19,19,16,17,16,19,18,20,20,20,19,
+ 21,18,18,17,20,18,12,13,13,16,15,13,14,14,16,16,
+ 13,14,13,17,16,16,17,17,18,18,15,17,15,19,17,13,
+ 14,14,16,17,14,14,15,16,17,14,15,15,17,17,16,16,
+ 17,17,18,17,17,17,19,19,13,14,13,17,15,14,15,15,
+ 17,16,14,15,13,17,15,17,18,17,19,18,16,17,15,20,
+ 16,16,17,17,18,18,16,16,17,18,18,17,18,17,19,18,
+ 17,17,18,18,20,19,20,19,20,19,16,16,16,19,16,17,
+ 17,17,19,18,16,17,16,19,16,19,19,19,19,19,18,19,
+ 17,19,17,11,13,13,16,16,13,14,14,17,17,13,14,14,
+ 17,17,15,17,17,19,19,16,18,17,20,19,12,14,14,17,
+ 17,13,14,15,17,18,14,15,15,17,18,16,16,17,18,20,
+ 17,18,18,20,18,13,14,14,17,17,14,15,15,17,18,14,
+ 15,15,17,17,17,18,17,19,19,17,18,17,19,19,15,16,
+ 16,18,18,15,16,17,18,19,16,17,17,19,19,17,17,18,
+ 18,21,18,19,19,21,19,16,17,17,18,18,17,17,18,19,
+ 19,17,18,17,19,19,19,19,19,20,20,18,19,18,21,19,
+ 12,13,13,16,16,13,14,14,16,17,13,15,14,17,16,15,
+ 16,17,17,19,16,17,17,19,18,13,13,14,16,17,14,13,
+ 15,16,17,14,15,15,17,17,15,15,17,17,20,17,17,18,
+ 19,18,13,14,14,17,16,15,15,15,17,18,14,15,14,17,
+ 16,17,17,17,18,18,16,17,16,19,17,16,15,17,17,19,
+ 16,15,17,16,19,17,16,17,18,19,17,16,19,16,20,19,
+ 18,19,19,19,16,17,17,18,18,17,17,17,18,19,16,17,
+ 16,19,18,20,19,19,20,19,18,18,17,20,17,11,13,13,
+ 16,16,13,14,15,16,17,14,15,14,18,16,17,17,17,18,
+ 21,17,18,17,20,19,13,14,14,17,16,13,14,15,16,18,
+ 15,16,15,18,17,17,16,17,17,19,17,18,18,20,19,13,
+ 14,14,16,17,15,15,16,17,18,14,15,14,18,17,17,18,
+ 18,19,20,17,18,16,19,17,16,17,15,19,18,16,16,16,
+ 18,18,17,18,17,20,19,18,17,18,17,20,20,20,19,22,
+ 20,16,17,17,18,19,18,18,18,19,20,16,17,16,19,18,
+ 20,19,19,20,20,18,19,17,20,17,13,14,14,16,17,14,
+ 14,16,16,18,14,16,15,17,16,16,16,17,17,18,17,17,
+ 16,19,18,14,14,15,16,17,14,14,16,16,18,16,16,16,
+ 17,17,16,15,17,16,19,18,18,18,19,19,14,15,15,17,
+ 17,15,16,16,17,18,14,16,14,18,16,17,17,18,18,19,
+ 16,17,16,19,17,16,16,17,16,18,16,16,17,16,19,18,
+ 18,18,17,18,17,16,18,16,20,19,19,19,19,19,16,17,
+ 17,18,18,17,17,18,19,19,16,17,16,19,17,18,19,19,
+ 19,20,17,18,16,20,16,11,14,13,17,17,14,14,16,16,
+ 18,14,16,14,19,16,18,18,19,18,19,18,19,18,21,18,
+ 13,15,14,18,16,14,14,16,16,18,16,17,16,19,17,18,
+ 16,19,17,20,19,19,19,21,19,13,14,15,17,18,17,16,
+ 17,17,19,14,16,14,18,16,20,19,19,20,21,18,19,16,
+ 21,17,17,18,16,19,17,16,16,17,18,18,19,19,18,21,
+ 18,17,17,18,17,20,20,20,20,22,20,17,17,18,18,20,
+ 19,19,19,18,20,16,17,17,19,19,21,21,21,20,21,17,
+ 19,17,23,17,11,13,13,16,16,13,14,14,17,17,13,14,
+ 14,17,17,16,17,17,19,20,15,16,16,19,19,13,14,14,
+ 16,17,14,15,15,17,18,14,15,15,17,17,17,17,18,19,
+ 19,17,17,18,19,19,13,14,14,17,16,14,15,15,17,17,
+ 13,15,14,18,17,17,18,18,19,20,16,17,16,19,18,16,
+ 16,17,18,18,17,17,17,18,19,17,18,17,19,19,19,19,
+ 19,19,20,19,20,19,20,20,15,16,16,18,17,16,17,17,
+ 20,18,15,16,16,19,17,19,19,19,20,20,17,18,17,21,
+ 17,11,13,13,16,16,13,14,15,16,17,13,15,14,17,16,
+ 17,17,18,18,20,17,17,17,19,19,13,14,14,17,17,14,
+ 14,15,17,18,15,15,15,18,17,17,17,18,17,20,18,18,
+ 17,20,18,13,14,14,16,17,15,15,16,17,18,14,15,13,
+ 17,17,17,18,18,19,20,17,17,16,19,17,16,17,17,18,
+ 18,16,16,17,18,18,18,18,18,19,19,18,17,19,18,21,
+ 19,20,20,20,20,16,15,17,18,18,17,17,18,18,20,16,
+ 16,16,18,17,20,19,20,21,22,17,18,17,20,17,12,13,
+ 13,16,16,13,14,15,16,17,13,14,14,17,16,16,17,18,
+ 18,19,15,16,16,19,18,13,14,14,16,17,14,14,15,16,
+ 17,14,15,15,17,17,16,16,17,17,19,17,17,17,19,18,
+ 13,14,13,17,16,14,15,15,17,17,13,15,13,17,16,17,
+ 17,17,19,19,15,17,15,19,17,16,17,17,18,18,16,16,
+ 17,17,19,17,18,17,19,19,18,17,19,17,19,19,19,19,
+ 20,19,15,17,15,19,16,17,17,16,19,18,16,17,15,18,
+ 16,19,19,19,20,19,17,19,16,19,16,11,14,14,17,17,
+ 15,14,16,16,18,15,16,14,18,16,18,18,19,18,21,18,
+ 19,18,20,18,13,15,14,18,17,14,14,16,16,18,16,17,
+ 16,19,17,17,17,19,17,22,19,19,19,21,19,13,14,15,
+ 17,18,17,16,17,17,19,14,16,14,18,16,19,19,19,20,
+ 21,18,18,16,20,17,17,18,16,19,18,15,17,17,19,19,
+ 19,19,18,21,19,18,17,20,17,21,22,21,20,21,21,17,
+ 16,19,18,20,19,18,19,18,20,16,17,16,19,18,21,20,
+ 21,19,23,18,19,16,20,17,13,14,14,17,16,14,14,15,
+ 16,18,14,16,14,17,16,16,16,17,17,19,16,17,16,19,
+ 17,14,15,15,17,17,14,14,16,16,17,15,16,16,18,17,
+ 16,16,17,17,19,17,18,17,19,18,14,15,14,17,16,16,
+ 16,16,17,17,14,16,14,17,16,18,18,18,18,19,16,17,
+ 15,19,16,17,17,17,18,18,16,15,17,17,18,18,18,18,
+ 19,19,17,16,18,16,19,19,19,19,19,19,16,17,16,19,
+ 16,18,18,17,19,18,16,17,16,19,16,19,19,20,19,19,
+ 17,18,16,20,16,
+};
+
+static const static_codebook _44p6_p5_0 = {
+ 5, 3125,
+ (char *)_vq_lengthlist__44p6_p5_0,
+ 1, -528744448, 1616642048, 3, 0,
+ (long *)_vq_quantlist__44p6_p5_0,
+ 0
+};
+
+static const long _vq_quantlist__44p6_p5_1[] = {
+ 3,
+ 2,
+ 4,
+ 1,
+ 5,
+ 0,
+ 6,
+};
+
+static const char _vq_lengthlist__44p6_p5_1[] = {
+ 2, 3, 3, 3, 3, 3, 3,
+};
+
+static const static_codebook _44p6_p5_1 = {
+ 1, 7,
+ (char *)_vq_lengthlist__44p6_p5_1,
+ 1, -533200896, 1611661312, 3, 0,
+ (long *)_vq_quantlist__44p6_p5_1,
+ 0
+};
+
+static const long _vq_quantlist__44p6_p6_0[] = {
+ 1,
+ 0,
+ 2,
+};
+
+static const char _vq_lengthlist__44p6_p6_0[] = {
+ 1, 5, 5, 5, 7, 9, 5, 9, 7, 5, 7, 8, 7, 7,10, 9,
+ 10,10, 5, 8, 7, 9,10,10, 7,10, 7, 6, 9, 9, 9,10,
+ 12, 9,11,11, 9,10,11,11,11,13,12,13,13, 9,11,11,
+ 12,13,13,11,13,11, 6, 9, 9, 9,11,11, 9,12,10, 9,
+ 11,11,11,11,13,12,13,13, 9,11,10,12,13,13,11,13,
+ 11, 6, 9, 9, 9,11,12, 9,12,11, 9,10,11,10,10,13,
+ 12,13,13, 9,11,11,12,13,12,11,13,11, 7, 9,10, 9,
+ 10,12,10,12,11,10,10,12,10,10,12,12,12,13,10,11,
+ 11,12,12,13,10,12,10, 7,10,10,11,11,14,11,14,11,
+ 10,12,11,11,11,14,14,14,14,10,11,12,14,14,14,11,
+ 14,11, 6, 9, 9, 9,11,12, 9,12,11, 9,11,11,11,11,
+ 13,12,12,13, 9,11,10,12,13,13,10,13,10, 7,10,10,
+ 11,11,14,11,14,11,10,12,11,11,11,14,14,15,14,10,
+ 11,12,13,14,15,11,14,11, 7,10, 9,10,11,12, 9,12,
+ 10,10,11,11,10,10,12,12,13,12, 9,12,10,12,13,12,
+ 10,12,10,
+};
+
+static const static_codebook _44p6_p6_0 = {
+ 5, 243,
+ (char *)_vq_lengthlist__44p6_p6_0,
+ 1, -527106048, 1620377600, 2, 0,
+ (long *)_vq_quantlist__44p6_p6_0,
+ 0
+};
+
+static const long _vq_quantlist__44p6_p6_1[] = {
+ 1,
+ 0,
+ 2,
+};
+
+static const char _vq_lengthlist__44p6_p6_1[] = {
+ 2, 6, 6, 6, 7, 8, 6, 8, 7, 6, 7, 7, 7, 7, 8, 7,
+ 8, 8, 6, 7, 7, 7, 8, 8, 7, 8, 7, 6, 8, 8, 8, 9,
+ 9, 8, 9, 9, 8, 9, 9, 9, 9,10, 9,10,10, 8, 9, 9,
+ 9,10,10, 9,10, 9, 6, 8, 8, 8, 9, 9, 8, 9, 9, 8,
+ 9, 9, 9, 9,10, 9,10,10, 8, 9, 9, 9,10, 9, 9,10,
+ 9, 6, 8, 8, 8, 9, 9, 8, 9, 9, 8, 9, 9, 9, 9,10,
+ 9, 9,10, 8, 9, 9, 9,10, 9, 9,10, 9, 7, 8, 8, 8,
+ 9, 9, 8, 9, 9, 8, 8, 9, 9, 9, 9, 9, 9, 9, 8, 9,
+ 9, 9,10, 9, 9, 9, 9, 7, 9, 9, 9, 9,10, 9,10, 9,
+ 9, 9, 9, 9, 9,10,10,10,10, 9, 9, 9,10,10,10, 9,
+ 10, 9, 6, 8, 8, 8, 9, 9, 8, 9, 9, 8, 9, 9, 9, 9,
+ 10, 9,10,10, 8, 9, 9, 9,10, 9, 9,10, 9, 7, 9, 9,
+ 9, 9,10, 9,10, 9, 9, 9, 9, 9, 9,10,10,10,10, 9,
+ 9, 9,10,10,10, 9,10, 9, 7, 8, 8, 8, 9, 9, 8, 9,
+ 9, 8, 9, 9, 9, 9,10, 9, 9,10, 8, 9, 8, 9, 9, 9,
+ 9,10, 9,
+};
+
+static const static_codebook _44p6_p6_1 = {
+ 5, 243,
+ (char *)_vq_lengthlist__44p6_p6_1,
+ 1, -530841600, 1616642048, 2, 0,
+ (long *)_vq_quantlist__44p6_p6_1,
+ 0
+};
+
+static const long _vq_quantlist__44p6_p7_0[] = {
+ 1,
+ 0,
+ 2,
+};
+
+static const char _vq_lengthlist__44p6_p7_0[] = {
+ 1, 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, 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,
+ 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, 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, 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, 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, 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, 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, 9, 9, 9, 9,
+ 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9,
+ 9, 9, 9,
+};
+
+static const static_codebook _44p6_p7_0 = {
+ 5, 243,
+ (char *)_vq_lengthlist__44p6_p7_0,
+ 1, -513979392, 1633504256, 2, 0,
+ (long *)_vq_quantlist__44p6_p7_0,
+ 0
+};
+
+static const long _vq_quantlist__44p6_p7_1[] = {
+ 1,
+ 0,
+ 2,
+};
+
+static const char _vq_lengthlist__44p6_p7_1[] = {
+ 1, 4, 5, 5,10,10, 5,10,10, 5,10,10,10,10,10,10,
+ 10,10, 5,10,10,10,10,10,10,10,10, 7,10,10,10,10,
+ 10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,
+ 10,10,10,10,10,10, 6,10,10,10,10,10,10,10,10,10,
+ 10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,
+ 10, 6,10,10,10,10,10,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, 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, 6,10,10,10,10,10,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, 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,
+};
+
+static const static_codebook _44p6_p7_1 = {
+ 5, 243,
+ (char *)_vq_lengthlist__44p6_p7_1,
+ 1, -516716544, 1630767104, 2, 0,
+ (long *)_vq_quantlist__44p6_p7_1,
+ 0
+};
+
+static const long _vq_quantlist__44p6_p7_2[] = {
+ 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 const char _vq_lengthlist__44p6_p7_2[] = {
+ 1, 2, 3, 4, 5, 7, 7, 8, 8, 9, 9,10,10,11,11,12,
+ 12,13,13,14,14,15,15,15,15,
+};
+
+static const static_codebook _44p6_p7_2 = {
+ 1, 25,
+ (char *)_vq_lengthlist__44p6_p7_2,
+ 1, -518864896, 1620639744, 5, 0,
+ (long *)_vq_quantlist__44p6_p7_2,
+ 0
+};
+
+static const long _vq_quantlist__44p6_p7_3[] = {
+ 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 const char _vq_lengthlist__44p6_p7_3[] = {
+ 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 5, 5, 5,
+ 5, 5, 5, 5, 5, 5, 5, 5, 5,
+};
+
+static const static_codebook _44p6_p7_3 = {
+ 1, 25,
+ (char *)_vq_lengthlist__44p6_p7_3,
+ 1, -529006592, 1611661312, 5, 0,
+ (long *)_vq_quantlist__44p6_p7_3,
+ 0
+};
+
+static const char _huff_lengthlist__44p6_short[] = {
+ 2, 8,13,15,16,18,21,22, 5, 4, 6, 8,10,12,17,21,
+ 9, 5, 5, 6, 8,11,15,19,11, 6, 5, 5, 6, 7,12,14,
+ 14, 8, 7, 5, 4, 4, 9,11,16,11, 9, 7, 4, 3, 7,10,
+ 22,15,14,12, 8, 7, 9,11,21,16,15,12, 9, 5, 6, 8,
+};
+
+static const static_codebook _huff_book__44p6_short = {
+ 2, 64,
+ (char *)_huff_lengthlist__44p6_short,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
+static const long _vq_quantlist__44p7_l0_0[] = {
+ 6,
+ 5,
+ 7,
+ 4,
+ 8,
+ 3,
+ 9,
+ 2,
+ 10,
+ 1,
+ 11,
+ 0,
+ 12,
+};
+
+static const char _vq_lengthlist__44p7_l0_0[] = {
+ 2, 4, 4, 7, 7, 8, 8,10,10,11,11,12,12, 4, 5, 5,
+ 7, 7, 9, 9,11, 9,12,11,12,12, 4, 5, 5, 7, 7, 9,
+ 9, 9,10,10,11,12,12, 7, 7, 7, 7, 8, 9, 8,11, 5,
+ 12, 6,12,10, 7, 7, 7, 8, 7, 8, 9, 5,11, 6,12,10,
+ 12, 8, 9, 9, 9, 9,10,10,11, 7,11, 7,12, 9, 8, 9,
+ 8, 9, 9,10,10, 7,11, 7,11, 9,11,10,10,10,10,10,
+ 10,10,11,10,11, 8,11, 9,10,10,10,10,10,10,10,10,
+ 11, 8,10, 9,11,10,11,11,11,11,11,10,11,10,12,10,
+ 12,11,10,11,11,11,11,10,11,10,11,10,12,11,12,11,
+ 12,12,12,12,12,12,12,12,12,12,13,12,11,12,11,12,
+ 12,12,12,12,11,12,11,12,13,
+};
+
+static const static_codebook _44p7_l0_0 = {
+ 2, 169,
+ (char *)_vq_lengthlist__44p7_l0_0,
+ 1, -526516224, 1616117760, 4, 0,
+ (long *)_vq_quantlist__44p7_l0_0,
+ 0
+};
+
+static const long _vq_quantlist__44p7_l0_1[] = {
+ 2,
+ 1,
+ 3,
+ 0,
+ 4,
+};
+
+static const char _vq_lengthlist__44p7_l0_1[] = {
+ 4, 4, 4, 5, 5, 4, 4, 5, 5, 5, 4, 5, 4, 5, 5, 5,
+ 5, 5, 5, 5, 5, 5, 5, 5, 5,
+};
+
+static const static_codebook _44p7_l0_1 = {
+ 2, 25,
+ (char *)_vq_lengthlist__44p7_l0_1,
+ 1, -533725184, 1611661312, 3, 0,
+ (long *)_vq_quantlist__44p7_l0_1,
+ 0
+};
+
+static const long _vq_quantlist__44p7_l1_0[] = {
+ 54,
+ 29,
+ 79,
+ 0,
+ 108,
+};
+
+static const char _vq_lengthlist__44p7_l1_0[] = {
+ 1, 2, 3, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 8, 8, 8,
+ 8, 8, 8, 8, 8, 8, 8, 8, 8,
+};
+
+static const static_codebook _44p7_l1_0 = {
+ 2, 25,
+ (char *)_vq_lengthlist__44p7_l1_0,
+ 1, -514516992, 1620639744, 7, 0,
+ (long *)_vq_quantlist__44p7_l1_0,
+ 0
+};
+
+static const char _huff_lengthlist__44p7_lfe[] = {
+ 2, 3, 1, 3,
+};
+
+static const static_codebook _huff_book__44p7_lfe = {
+ 2, 4,
+ (char *)_huff_lengthlist__44p7_lfe,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
+static const char _huff_lengthlist__44p7_long[] = {
+ 2, 7,14,16,17,17,18,20, 6, 3, 5, 8,10,11,13,15,
+ 13, 5, 3, 5, 8, 9,11,12,15, 7, 4, 3, 5, 7, 9,11,
+ 16,10, 7, 5, 6, 7, 9,10,17,11, 8, 7, 7, 6, 8, 8,
+ 19,13,11, 9, 9, 8, 8, 9,20,14,13,11,10, 8, 9, 9,
+};
+
+static const static_codebook _huff_book__44p7_long = {
+ 2, 64,
+ (char *)_huff_lengthlist__44p7_long,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
+static const long _vq_quantlist__44p7_p1_0[] = {
+ 1,
+ 0,
+ 2,
+};
+
+static const char _vq_lengthlist__44p7_p1_0[] = {
+ 2, 5, 5, 4, 7, 7, 4, 7, 7, 5, 7, 7, 7, 8, 9, 7,
+ 9, 9, 5, 7, 7, 7, 9, 9, 7, 9, 8, 6, 7, 8, 8, 9,
+ 10, 8, 9,10, 8, 9,10,10,10,12,10,11,11, 8,10,10,
+ 10,11,12,10,11,11, 6, 8, 7, 8,10, 9, 8,10, 9, 8,
+ 10,10,10,11,11,10,12,11, 8,10, 9,10,11,11,10,12,
+ 10, 5, 8, 8, 8,10,10, 8,10,10, 7, 9,10, 9,10,11,
+ 9,11,11, 8,10,10,10,11,12,10,12,11, 7, 9, 9, 9,
+ 10,11, 9,11,11, 9, 9,11,10,11,12,11,11,12, 9,11,
+ 11,11,12,12,11,12,12, 7, 9, 9,10,11,11,10,12,11,
+ 9,11,10,11,11,12,11,13,12,10,11,11,12,13,13,11,
+ 13,11, 5, 8, 8, 8,10,10, 8,10,10, 8,10,10,10,11,
+ 12,10,12,11, 7,10, 9, 9,11,11, 9,11,10, 7, 9, 9,
+ 10,11,12,10,11,11,10,11,11,11,11,13,12,13,13, 9,
+ 10,11,11,12,13,11,12,11, 7, 9, 9, 9,11,11, 9,11,
+ 10, 9,11,11,11,12,12,11,12,12, 9,11, 9,11,12,11,
+ 10,12,11,
+};
+
+static const static_codebook _44p7_p1_0 = {
+ 5, 243,
+ (char *)_vq_lengthlist__44p7_p1_0,
+ 1, -535822336, 1611661312, 2, 0,
+ (long *)_vq_quantlist__44p7_p1_0,
+ 0
+};
+
+static const long _vq_quantlist__44p7_p2_0[] = {
+ 2,
+ 1,
+ 3,
+ 0,
+ 4,
+};
+
+static const char _vq_lengthlist__44p7_p2_0[] = {
+ 4, 6, 6, 9, 9, 6, 8, 8,10,10, 6, 8, 8,10,10, 8,
+ 10,10,12,13, 8,10,10,13,12, 6, 8, 8,10,10, 8, 8,
+ 9,10,11, 8, 9, 9,11,11,10,10,11,12,13,10,11,11,
+ 13,13, 6, 8, 8,10,10, 8, 9, 9,11,11, 8, 9, 8,11,
+ 10,10,11,11,13,13,10,11,10,13,12, 9,10,10,12,12,
+ 10,10,11,12,13,10,11,11,13,13,12,12,13,12,15,13,
+ 13,13,15,14, 9,10,10,12,12,10,11,11,13,13,10,11,
+ 10,13,12,12,13,13,14,15,12,13,12,15,12, 6, 8, 8,
+ 10,11, 8, 9,10,11,12, 8, 9, 9,11,11,10,11,12,13,
+ 14,10,11,11,13,13, 8, 9, 9,11,12, 9,10,11,12,13,
+ 9,10,10,12,13,11,12,13,13,15,11,12,12,14,14, 8,
+ 9, 9,11,12, 9,10,11,12,13, 9,10,10,13,12,11,12,
+ 13,14,15,11,12,12,14,13,10,11,12,13,14,11,12,13,
+ 13,15,12,13,13,14,14,13,13,14,14,16,14,15,14,16,
+ 15,10,12,11,14,13,12,12,13,14,14,11,12,12,14,14,
+ 14,14,15,15,16,13,14,14,16,14, 6, 8, 8,11,10, 8,
+ 9, 9,11,11, 8,10, 9,12,11,10,11,11,13,13,10,12,
+ 11,14,13, 8, 9, 9,12,11, 9,10,10,12,13, 9,11,10,
+ 13,12,11,12,12,14,14,11,13,12,15,14, 8, 9, 9,12,
+ 11, 9,10,10,13,12, 9,11,10,13,12,11,12,12,14,14,
+ 11,13,12,15,13,10,11,12,13,14,11,12,13,13,14,12,
+ 13,12,14,14,13,13,14,14,16,14,15,14,16,16,10,12,
+ 11,14,13,12,13,13,14,14,11,13,12,15,13,14,14,15,
+ 16,16,13,14,13,16,14, 9,10,11,12,13,11,11,12,13,
+ 14,11,11,12,13,14,13,13,14,14,16,13,14,14,15,15,
+ 11,11,12,13,14,12,12,13,13,15,12,13,13,14,15,14,
+ 14,15,15,17,14,14,15,16,16,11,12,12,13,14,12,12,
+ 13,14,15,12,13,12,14,15,14,14,15,15,17,14,15,14,
+ 16,16,13,14,14,15,16,14,14,15,15,17,14,15,15,16,
+ 16,15,16,17,16,18,16,17,16,17,17,13,14,14,16,15,
+ 14,15,15,16,16,14,15,14,16,15,16,16,17,17,18,16,
+ 16,16,17,16, 9,11,10,13,12,11,12,11,14,13,11,12,
+ 11,14,13,13,14,14,16,15,13,14,13,16,14,11,12,12,
+ 14,13,12,12,13,14,14,12,13,13,15,14,14,14,15,16,
+ 16,14,15,14,17,15,11,12,11,14,13,12,13,13,15,14,
+ 12,13,12,15,13,14,15,14,16,16,14,15,14,17,15,13,
+ 14,14,15,16,14,14,15,16,16,14,15,15,16,16,15,16,
+ 16,16,17,16,16,16,17,17,13,14,14,16,15,14,15,15,
+ 17,16,14,15,14,17,15,16,17,17,17,17,16,16,16,18,
+ 16, 6, 8, 8,11,11, 8, 9, 9,11,12, 8, 9, 9,12,11,
+ 10,11,11,13,14,10,11,11,14,13, 8, 9, 9,11,12, 9,
+ 10,10,12,13, 9,10,10,13,12,11,11,12,13,15,11,12,
+ 12,15,14, 8, 9, 9,12,11, 9,10,11,12,13, 9,11,10,
+ 13,12,11,12,12,14,15,11,13,12,15,14,10,11,11,13,
+ 14,11,12,12,13,14,11,12,12,14,14,13,13,14,14,16,
+ 13,14,14,16,15,11,12,11,14,13,12,13,13,14,14,11,
+ 13,12,14,13,14,14,15,16,16,13,14,14,16,14, 8, 9,
+ 9,11,12, 9,10,10,12,13, 9,10,10,13,12,11,12,12,
+ 14,15,11,12,12,14,14, 9, 9,10,11,13,10,10,12,12,
+ 14,10,10,11,13,13,12,12,13,14,16,12,12,13,15,15,
+ 9,10,10,13,12,10,11,11,13,14,10,12,11,14,13,12,
+ 13,13,15,15,12,13,13,15,15,11,11,12,13,15,12,12,
+ 13,13,15,12,13,13,14,15,14,14,15,15,17,14,15,15,
+ 16,16,11,13,12,15,14,13,13,13,15,15,12,14,13,15,
+ 14,15,15,15,16,16,14,15,15,17,15, 7, 9, 9,12,11,
+ 9,10,10,12,12, 9,11,10,13,12,11,12,12,14,14,11,
+ 13,12,15,14, 9,10,10,12,12,10,10,11,12,13,10,11,
+ 11,14,13,12,12,13,14,15,12,13,13,15,14, 9,10,10,
+ 12,12,10,11,11,13,13,10,11,10,14,12,12,13,13,15,
+ 15,12,13,12,15,13,11,12,12,14,14,12,12,13,14,15,
+ 12,13,13,15,15,14,13,14,13,16,14,15,15,16,16,11,
+ 12,12,14,14,13,13,14,15,15,12,13,12,15,14,15,15,
+ 15,16,16,14,15,14,17,14,10,11,12,13,14,11,12,13,
+ 14,15,11,12,12,14,15,13,14,15,15,17,14,14,14,16,
+ 16,11,12,13,12,15,12,12,14,13,16,13,13,14,13,16,
+ 14,14,15,14,17,15,15,15,15,17,11,13,12,15,15,13,
+ 13,14,15,16,12,14,13,16,15,15,15,15,17,17,15,15,
+ 15,17,16,14,14,15,14,16,14,14,16,14,17,15,15,15,
+ 14,17,16,16,17,15,18,17,17,17,16,18,14,15,15,17,
+ 16,15,16,16,17,17,15,16,15,17,16,17,17,17,18,18,
+ 16,17,16,18,17,10,11,11,14,13,11,12,12,14,14,11,
+ 13,12,15,14,14,14,14,16,16,14,15,14,16,15,11,12,
+ 12,15,13,12,13,13,15,14,13,14,13,16,14,14,15,15,
+ 16,16,15,16,15,17,16,11,13,12,15,14,13,13,14,15,
+ 15,12,14,13,16,14,15,15,15,17,17,14,16,15,17,16,
+ 14,14,14,16,15,14,15,15,16,16,15,16,15,17,16,16,
+ 16,16,16,17,16,17,17,18,17,14,15,15,16,16,15,15,
+ 16,17,16,14,15,15,17,16,17,17,17,18,18,16,17,16,
+ 18,16, 6, 8, 8,11,11, 8, 9, 9,11,12, 8, 9, 9,12,
+ 11,10,11,12,13,14,10,11,11,14,13, 8, 9, 9,11,12,
+ 9,10,11,12,13, 9,11,10,13,12,11,12,13,14,15,11,
+ 12,12,15,14, 8, 9, 9,12,11, 9,10,10,12,13, 9,10,
+ 10,13,12,11,12,12,14,15,11,12,12,14,13,11,11,12,
+ 13,14,11,12,13,13,15,12,13,13,14,14,13,14,14,14,
+ 16,14,15,14,16,16,10,11,11,14,13,11,12,12,14,14,
+ 11,12,12,14,13,13,14,14,15,16,13,14,13,16,14, 7,
+ 9, 9,11,11, 9,10,11,12,13, 9,10,10,12,12,11,12,
+ 13,14,15,11,12,12,14,14, 9,10,10,12,12,10,10,11,
+ 12,13,10,11,11,13,13,12,12,13,13,15,12,13,13,15,
+ 15, 9,10,10,12,12,10,11,11,13,13,10,11,10,13,12,
+ 12,13,13,14,15,12,13,12,15,13,11,12,12,14,14,12,
+ 12,13,14,15,13,14,13,15,15,14,13,15,13,16,15,15,
+ 15,16,16,11,12,12,14,14,12,13,13,14,15,12,13,12,
+ 15,14,14,15,15,16,17,13,14,13,16,13, 8, 9, 9,12,
+ 11, 9,10,10,12,13, 9,10,10,13,12,11,12,12,14,15,
+ 11,12,12,15,14, 9,10,10,12,13,10,11,12,13,14,10,
+ 11,11,14,13,12,13,13,15,15,12,13,13,15,15, 9,10,
+ 9,13,11,10,11,10,13,13,10,12,10,14,12,12,13,12,
+ 15,15,12,13,12,15,14,11,12,13,14,15,12,13,14,14,
+ 15,13,13,13,15,15,14,15,15,15,17,15,15,15,16,16,
+ 11,12,11,15,13,12,13,13,15,14,12,13,12,16,13,14,
+ 15,15,16,16,14,15,14,17,14,10,11,11,13,14,11,12,
+ 13,14,15,11,12,12,14,14,14,14,15,15,17,14,14,14,
+ 15,16,11,12,13,14,15,12,13,14,14,16,13,14,13,15,
+ 15,14,15,16,15,17,15,15,15,17,17,11,12,12,13,15,
+ 13,13,14,14,16,12,13,13,14,15,15,15,15,16,17,14,
+ 15,15,16,16,14,15,15,16,16,14,15,15,16,17,15,15,
+ 16,16,17,16,16,17,16,18,17,17,17,18,18,14,14,15,
+ 15,16,15,15,15,16,17,14,15,15,16,16,16,17,17,17,
+ 18,16,16,16,17,16,10,11,11,14,13,11,13,12,15,14,
+ 11,13,12,15,14,14,15,14,16,16,13,15,14,17,15,11,
+ 12,13,15,15,12,13,14,15,16,13,14,13,16,15,15,15,
+ 15,16,17,15,15,15,17,16,11,13,11,15,12,13,14,13,
+ 16,13,12,14,12,16,13,15,15,15,17,15,14,16,14,17,
+ 14,14,15,15,16,17,15,15,16,16,17,15,16,15,17,17,
+ 16,16,17,17,18,16,17,17,18,18,14,15,14,17,13,15,
+ 16,15,17,15,15,16,15,17,14,16,17,16,18,16,16,17,
+ 16,18,15, 9,11,11,13,13,10,12,12,14,14,11,12,12,
+ 14,14,13,14,14,15,16,13,14,14,16,16,10,11,12,14,
+ 14,11,12,13,14,15,11,13,13,15,15,13,14,14,15,16,
+ 14,15,15,16,16,11,12,12,14,14,12,13,13,15,15,12,
+ 13,12,15,14,14,15,15,16,16,14,15,14,17,16,12,13,
+ 13,15,16,13,13,14,15,16,13,14,14,16,16,14,15,16,
+ 16,17,15,16,16,17,17,13,14,14,16,15,14,15,15,17,
+ 16,14,15,14,17,15,16,16,17,17,17,16,16,16,18,16,
+ 10,11,12,14,14,11,12,13,14,15,11,13,12,15,15,13,
+ 14,15,16,16,14,15,15,17,16,11,11,13,14,15,12,12,
+ 14,14,16,12,13,14,15,15,14,14,15,16,17,15,15,15,
+ 17,17,12,13,12,15,15,13,14,14,16,15,13,14,13,16,
+ 15,15,16,15,17,17,15,16,15,17,16,13,12,15,14,16,
+ 14,13,15,14,17,14,13,15,15,17,15,14,17,15,18,16,
+ 15,17,17,18,14,15,15,17,16,15,16,16,17,17,15,16,
+ 15,17,16,16,17,17,18,18,16,17,16,18,17,10,11,11,
+ 14,14,11,12,12,14,15,11,13,12,15,14,13,14,14,16,
+ 16,14,15,14,16,16,11,12,12,14,14,12,12,13,15,15,
+ 12,13,13,15,15,14,14,15,16,16,14,15,15,17,16,11,
+ 12,12,15,15,13,13,13,15,15,12,13,13,15,15,15,15,
+ 15,17,17,14,15,15,17,16,13,14,13,16,15,14,14,14,
+ 16,16,14,15,14,17,16,15,15,16,16,17,16,17,16,18,
+ 17,14,15,15,16,16,15,15,15,17,17,14,15,15,17,16,
+ 16,17,17,18,18,16,17,16,18,16,12,13,13,15,15,13,
+ 14,14,16,16,13,14,14,16,16,14,15,16,16,18,15,16,
+ 16,17,17,13,13,14,14,16,14,14,15,15,17,14,14,15,
+ 15,17,15,15,17,15,18,16,16,17,17,18,13,14,14,16,
+ 16,14,15,15,16,17,14,15,15,17,16,16,17,16,17,18,
+ 16,17,16,18,17,15,14,16,13,18,16,15,17,14,18,16,
+ 15,17,14,18,17,16,18,15,19,17,17,18,16,19,15,16,
+ 16,17,17,16,17,17,18,18,16,17,16,18,17,18,18,18,
+ 19,18,17,18,17,19,17,11,12,12,15,15,13,13,14,15,
+ 16,13,14,13,16,15,15,15,15,16,17,15,16,15,17,16,
+ 12,13,13,15,15,13,13,14,15,16,14,15,14,16,15,15,
+ 15,16,16,17,16,16,16,18,17,12,13,13,15,15,14,14,
+ 15,16,16,13,14,13,16,15,16,16,16,17,17,15,16,15,
+ 18,16,15,15,15,17,15,14,15,15,16,16,16,17,16,17,
+ 16,16,16,17,16,17,17,18,17,19,18,15,15,16,17,17,
+ 16,16,16,17,17,15,16,15,17,16,17,18,18,18,18,16,
+ 17,16,18,16, 9,11,11,13,13,11,12,12,14,14,10,12,
+ 12,14,14,13,14,14,15,16,13,14,14,16,15,11,12,12,
+ 14,14,12,12,13,14,15,12,13,13,15,15,14,14,15,16,
+ 17,14,15,15,16,16,10,12,11,14,14,11,13,13,15,15,
+ 11,13,12,15,14,14,14,15,16,16,13,14,14,16,15,13,
+ 14,14,15,16,14,14,15,15,17,14,15,15,16,17,16,16,
+ 16,16,18,16,16,17,17,17,12,13,13,16,15,13,14,14,
+ 16,16,12,14,13,16,15,15,16,16,17,17,14,16,15,17,
+ 16,10,11,11,14,14,11,12,13,14,15,11,12,12,15,14,
+ 14,14,15,16,16,13,14,14,16,16,11,12,12,14,15,12,
+ 13,14,15,15,13,13,13,15,15,14,15,15,16,17,15,15,
+ 15,16,17,11,12,12,14,14,12,13,13,15,15,12,13,12,
+ 15,15,14,15,15,16,17,14,15,14,16,16,14,14,15,16,
+ 16,14,15,15,16,17,15,16,15,17,17,16,16,17,16,18,
+ 16,17,17,18,18,13,13,14,15,16,14,14,15,16,17,14,
+ 14,14,16,15,16,16,17,17,18,15,16,15,17,16,10,12,
+ 11,14,14,11,13,13,15,15,11,13,12,15,15,14,15,15,
+ 16,16,13,15,14,16,16,12,12,13,15,15,13,13,14,15,
+ 16,13,14,14,16,15,15,15,16,16,17,15,15,15,17,17,
+ 11,13,11,15,14,12,14,13,16,15,12,14,12,16,14,15,
+ 15,15,17,17,14,15,14,17,15,14,15,15,16,17,15,15,
+ 16,16,17,15,16,16,17,17,16,16,17,17,18,16,17,17,
+ 18,18,13,14,12,16,14,14,15,13,17,15,14,15,13,17,
+ 14,16,17,15,18,17,15,17,14,18,15,11,12,12,14,15,
+ 13,13,14,15,16,13,14,13,16,15,15,15,16,16,17,15,
+ 15,15,16,16,12,13,13,15,15,13,13,14,15,16,14,15,
+ 14,16,16,15,15,16,16,18,16,16,16,18,17,12,13,13,
+ 15,15,14,14,15,15,16,13,14,13,15,15,16,16,16,17,
+ 18,15,16,15,17,16,15,16,15,17,16,15,15,16,16,17,
+ 16,17,16,17,17,16,16,17,16,18,17,18,18,18,18,14,
+ 15,15,15,17,16,15,17,16,17,14,15,15,16,16,17,17,
+ 18,18,19,16,16,16,17,16,12,13,13,15,15,13,14,14,
+ 16,16,13,14,14,16,16,15,16,16,17,17,15,16,15,18,
+ 16,13,14,14,16,16,14,15,15,16,17,14,15,15,17,16,
+ 16,16,17,17,18,16,17,16,18,18,13,14,13,16,14,14,
+ 15,14,17,15,14,15,14,17,14,16,17,16,18,17,15,17,
+ 15,18,15,15,16,16,17,18,16,16,17,17,18,16,17,17,
+ 17,18,17,17,18,18,19,17,18,18,19,18,15,16,14,17,
+ 13,16,17,15,18,14,16,17,15,18,14,18,18,17,19,16,
+ 17,18,16,19,15,
+};
+
+static const static_codebook _44p7_p2_0 = {
+ 5, 3125,
+ (char *)_vq_lengthlist__44p7_p2_0,
+ 1, -533725184, 1611661312, 3, 0,
+ (long *)_vq_quantlist__44p7_p2_0,
+ 0
+};
+
+static const long _vq_quantlist__44p7_p3_0[] = {
+ 1,
+ 0,
+ 2,
+};
+
+static const char _vq_lengthlist__44p7_p3_0[] = {
+ 2, 5, 5, 4, 7, 7, 4, 7, 7, 5, 7, 8, 7, 8,10, 8,
+ 9, 9, 5, 7, 7, 8, 9, 9, 7,10, 8, 5, 7, 8, 8, 9,
+ 10, 8,10,10, 8, 9,10,10,10,12,10,12,12, 8,10,10,
+ 10,12,12,10,12,11, 5, 8, 7, 8,10,10, 8,10, 9, 8,
+ 10,10,10,11,12,10,12,12, 8,10, 9,10,12,12,10,12,
+ 10, 5, 8, 8, 7,10,10, 8,10,10, 7, 9,10, 9,10,12,
+ 10,12,12, 8,10,10,10,12,12,10,12,11, 7, 9,10, 9,
+ 11,12,10,12,11, 9, 9,12,11,10,14,12,12,13,10,12,
+ 11,12,13,13,11,14,12, 7,10, 9,10,11,11,10,12,11,
+ 9,11,11,11,11,13,12,14,13,10,12,12,12,14,14,11,
+ 14,12, 5, 8, 8, 8,10,10, 7,10,10, 8,10,10,10,11,
+ 12,10,12,12, 7,10, 9,10,12,12, 9,12,10, 7, 9,10,
+ 10,11,12,10,11,11,10,12,12,11,12,14,12,14,14, 9,
+ 11,11,12,13,14,11,13,11, 7,10, 9,10,11,12, 9,12,
+ 11,10,11,12,11,12,14,12,13,13, 9,12, 9,12,13,12,
+ 11,14,10,
+};
+
+static const static_codebook _44p7_p3_0 = {
+ 5, 243,
+ (char *)_vq_lengthlist__44p7_p3_0,
+ 1, -533200896, 1614282752, 2, 0,
+ (long *)_vq_quantlist__44p7_p3_0,
+ 0
+};
+
+static const long _vq_quantlist__44p7_p3_1[] = {
+ 1,
+ 0,
+ 2,
+};
+
+static const char _vq_lengthlist__44p7_p3_1[] = {
+ 6, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 8, 7, 8, 8, 7,
+ 8, 8, 7, 8, 7, 7, 8, 8, 7, 8, 8, 7, 8, 8, 8, 8,
+ 8, 8, 8, 8, 8, 8, 8, 8, 8, 9, 8, 8, 9, 8, 8, 8,
+ 8, 8, 8, 8, 9, 8, 7, 8, 8, 8, 8, 8, 8, 8, 8, 8,
+ 8, 8, 8, 8, 9, 8, 8, 8, 8, 8, 8, 8, 9, 8, 8, 9,
+ 8, 7, 8, 8, 7, 8, 8, 7, 8, 8, 7, 8, 8, 8, 8, 8,
+ 8, 8, 8, 8, 8, 8, 8, 9, 8, 8, 9, 8, 7, 8, 8, 8,
+ 8, 9, 8, 8, 8, 8, 8, 8, 8, 8, 9, 8, 9, 9, 8, 8,
+ 8, 9, 9, 9, 8, 9, 9, 7, 8, 8, 8, 8, 8, 8, 8, 8,
+ 8, 8, 8, 8, 8, 9, 8, 9, 9, 8, 8, 8, 8, 9, 9, 8,
+ 9, 8, 7, 8, 8, 7, 8, 8, 7, 8, 8, 8, 8, 8, 8, 8,
+ 9, 8, 8, 9, 7, 8, 8, 8, 8, 8, 8, 8, 8, 7, 8, 8,
+ 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 9, 8, 9, 9, 8,
+ 8, 8, 8, 9, 9, 8, 9, 8, 7, 8, 8, 8, 8, 8, 8, 9,
+ 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 8, 8, 8, 8, 9, 9,
+ 8, 9, 8,
+};
+
+static const static_codebook _44p7_p3_1 = {
+ 5, 243,
+ (char *)_vq_lengthlist__44p7_p3_1,
+ 1, -535822336, 1611661312, 2, 0,
+ (long *)_vq_quantlist__44p7_p3_1,
+ 0
+};
+
+static const long _vq_quantlist__44p7_p4_0[] = {
+ 1,
+ 0,
+ 2,
+};
+
+static const char _vq_lengthlist__44p7_p4_0[] = {
+ 1, 5, 5, 5, 7, 8, 5, 8, 7, 5, 7, 8, 7, 8,10, 8,
+ 10,10, 5, 8, 7, 8,10,10, 7,10, 8, 6, 8, 9, 9,10,
+ 12, 9,11,11, 9,10,11,11,11,13,11,13,13, 9,11,11,
+ 11,12,13,11,13,11, 6, 9, 8, 9,11,11, 9,12,10, 9,
+ 11,11,11,11,13,11,13,13, 9,11,10,11,13,13,11,13,
+ 11, 6, 9, 9, 8,10,11, 9,12,11, 8,10,11,10,11,13,
+ 11,13,13, 9,11,11,11,13,12,11,13,11, 8,10,10, 9,
+ 11,12,10,12,12,10,10,12,11,11,14,12,13,14,10,12,
+ 12,12,13,13,11,14,11, 8,11,10,11,12,13,11,14,12,
+ 10,12,11,11,12,14,13,15,14,10,12,12,13,14,15,12,
+ 14,12, 5, 9, 9, 9,11,12, 8,11,10, 9,11,11,11,11,
+ 13,11,12,13, 8,11,10,11,13,13,10,13,11, 8,10,11,
+ 11,12,14,11,13,12,10,12,12,12,12,14,14,15,14,10,
+ 11,12,13,14,15,11,14,12, 8,10,10,10,12,12, 9,12,
+ 11,10,12,12,11,11,14,12,13,13,10,12,10,12,14,13,
+ 11,13,11,
+};
+
+static const static_codebook _44p7_p4_0 = {
+ 5, 243,
+ (char *)_vq_lengthlist__44p7_p4_0,
+ 1, -531365888, 1616117760, 2, 0,
+ (long *)_vq_quantlist__44p7_p4_0,
+ 0
+};
+
+static const long _vq_quantlist__44p7_p4_1[] = {
+ 2,
+ 1,
+ 3,
+ 0,
+ 4,
+};
+
+static const char _vq_lengthlist__44p7_p4_1[] = {
+ 7, 8, 8,10,10, 8, 9, 9,10,11, 8, 9, 9,10,10, 9,
+ 10,10,11,11, 9,10,10,11,11, 8, 9, 9,10,10, 9, 9,
+ 10,11,11, 9,10,10,11,11,10,10,11,11,11,10,11,11,
+ 11,11, 8, 9, 9,10,10, 9,10,10,11,11, 9,10, 9,11,
+ 11,10,11,11,11,11,10,11,10,11,11,10,10,10,11,11,
+ 10,11,11,11,11,10,11,11,11,11,11,11,11,11,12,11,
+ 11,11,11,12,10,10,10,11,11,10,11,11,11,11,10,11,
+ 11,11,11,11,11,11,12,11,11,11,11,12,11, 8, 9,10,
+ 11,11, 9,10,11,11,11, 9,10,10,11,11,10,11,11,12,
+ 12,10,11,11,12,12,10,10,10,11,11,10,10,11,11,12,
+ 10,11,11,12,12,11,11,12,12,12,11,11,12,12,12,10,
+ 10,10,11,11,10,11,11,12,12,10,11,11,12,11,11,12,
+ 12,12,12,11,12,11,12,12,11,11,11,11,12,11,11,12,
+ 12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,
+ 12,11,11,11,12,12,11,12,12,12,12,11,12,11,12,12,
+ 12,12,12,12,12,12,12,12,12,12, 8,10, 9,11,11, 9,
+ 10,10,11,11, 9,10,10,11,11,10,11,11,12,12,10,11,
+ 11,12,12,10,10,10,11,11,10,11,11,12,12,10,11,11,
+ 12,12,11,11,12,12,12,11,12,12,12,12,10,10,10,11,
+ 11,10,11,11,12,12,10,11,10,12,11,11,12,11,12,12,
+ 11,12,11,12,12,11,11,11,12,12,11,12,12,12,12,11,
+ 12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,11,
+ 11,12,11,11,12,12,12,12,11,12,11,12,12,12,12,12,
+ 12,12,12,12,12,12,12,10,11,11,11,12,11,11,12,12,
+ 12,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,
+ 11,11,12,12,12,11,12,12,12,12,12,12,12,12,12,12,
+ 12,13,12,13,12,12,12,13,13,11,12,11,12,12,11,12,
+ 12,12,12,11,12,12,12,12,12,12,12,13,13,12,12,12,
+ 13,13,12,12,12,12,12,12,12,12,12,13,12,12,13,13,
+ 13,12,13,13,13,13,12,13,13,13,13,12,12,12,12,12,
+ 12,12,13,13,13,12,12,12,13,12,12,13,13,13,13,12,
+ 13,13,13,13,10,11,11,12,11,11,11,11,12,12,11,12,
+ 11,12,12,11,12,12,12,12,11,12,12,12,12,11,11,11,
+ 12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,13,
+ 13,12,12,12,13,13,11,12,11,12,12,12,12,12,12,12,
+ 11,12,11,12,12,12,12,12,13,13,12,12,12,13,12,12,
+ 12,12,12,12,12,12,12,13,13,12,12,12,13,13,12,13,
+ 13,13,13,12,13,13,13,13,12,12,12,12,12,12,12,12,
+ 13,13,12,13,12,13,12,12,13,13,13,13,13,13,13,13,
+ 13, 8,10,10,11,11, 9,10,10,11,11, 9,10,10,11,11,
+ 10,11,11,12,12,10,11,11,12,12, 9,10,10,11,11,10,
+ 10,11,11,12,10,11,11,12,12,11,11,12,12,12,11,11,
+ 12,12,12,10,10,10,11,11,10,11,11,12,12,10,11,10,
+ 12,11,11,12,11,12,12,11,12,11,12,12,11,11,11,12,
+ 12,11,11,12,12,12,11,12,12,12,12,11,12,12,12,12,
+ 12,12,12,12,12,11,11,11,12,11,11,12,12,12,12,11,
+ 12,12,12,12,12,12,12,12,12,12,12,12,12,12, 9,10,
+ 10,11,11,10,11,11,11,12,10,11,11,12,12,11,11,11,
+ 12,12,11,11,11,12,12,10,10,11,11,12,11,11,12,12,
+ 12,11,11,11,12,12,11,11,12,12,12,11,12,12,12,12,
+ 10,11,11,12,12,11,11,11,12,12,11,12,11,12,12,11,
+ 12,12,12,12,11,12,12,12,12,11,11,12,12,12,11,12,
+ 12,12,12,12,12,12,12,12,12,12,12,12,13,12,12,12,
+ 12,13,11,12,12,12,12,12,12,12,12,12,12,12,12,12,
+ 12,12,12,12,12,12,12,12,12,13,12, 9,10,10,11,11,
+ 10,11,11,12,12,10,11,11,12,11,11,12,11,12,12,11,
+ 12,11,12,12,10,11,11,12,12,11,11,11,12,12,11,12,
+ 11,12,12,11,12,12,12,12,12,12,12,12,12,10,11,11,
+ 12,12,11,12,11,12,12,11,12,11,12,12,12,12,12,13,
+ 12,12,12,12,12,12,11,12,11,12,12,11,12,12,12,12,
+ 12,12,12,12,12,12,12,12,12,13,12,12,12,12,13,11,
+ 12,12,12,12,12,12,12,13,12,11,12,12,12,12,12,12,
+ 12,13,12,12,12,12,13,12,10,11,11,12,12,11,12,12,
+ 12,12,11,12,12,12,12,12,12,12,12,13,12,12,12,13,
+ 13,11,11,12,12,12,12,12,12,12,13,12,12,12,12,12,
+ 12,12,13,12,13,12,12,13,13,13,11,12,12,12,12,12,
+ 12,12,13,13,12,12,12,13,12,12,13,12,13,13,12,13,
+ 12,13,13,12,12,12,12,12,12,12,13,12,13,12,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,12,12,12,13,
+ 13,12,13,13,13,13,12,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,10,11,11,12,12,11,12,12,12,12,11,
+ 12,12,12,12,12,12,12,13,13,12,12,12,13,13,11,12,
+ 12,12,12,12,12,12,12,13,12,12,12,13,12,12,12,13,
+ 13,13,12,13,13,13,13,11,12,12,12,12,12,12,12,13,
+ 13,12,12,12,13,12,12,13,13,13,13,12,13,12,13,13,
+ 12,12,12,12,12,12,13,13,13,13,12,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,12,12,12,13,12,12,13,
+ 13,13,13,12,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13, 8,10,10,11,11, 9,10,10,11,11, 9,10,10,11,
+ 11,10,11,11,12,12,10,11,11,12,12,10,10,10,11,11,
+ 10,11,11,11,12,10,11,11,12,12,11,11,12,12,12,11,
+ 11,12,12,12, 9,10,10,11,11,10,11,11,12,12,10,11,
+ 10,12,11,11,12,11,12,12,11,12,11,12,12,11,11,11,
+ 12,12,11,11,12,12,12,11,12,12,12,12,12,12,12,12,
+ 12,12,12,12,12,12,11,11,11,12,11,11,12,12,12,12,
+ 11,12,11,12,12,12,12,12,12,12,12,12,12,12,12, 9,
+ 10,10,11,11,10,11,11,12,12,10,11,11,12,12,11,11,
+ 12,12,12,11,12,12,12,12,10,11,11,12,12,11,11,12,
+ 12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,
+ 12,10,11,11,12,12,11,11,12,12,12,11,11,11,12,12,
+ 12,12,12,12,12,11,12,12,12,12,11,12,12,12,12,12,
+ 12,12,12,12,12,12,12,12,12,12,12,13,12,13,12,12,
+ 12,13,12,11,12,12,12,12,12,12,12,12,12,11,12,12,
+ 12,12,12,12,12,13,12,12,12,12,13,12, 9,10,10,11,
+ 11,10,11,11,12,12,10,11,11,12,12,11,11,11,12,12,
+ 11,12,11,12,12,10,11,11,12,12,11,11,12,12,12,11,
+ 11,11,12,12,11,12,12,12,12,11,12,12,12,12,10,11,
+ 10,12,11,11,11,11,12,12,11,12,11,12,12,11,12,12,
+ 12,12,11,12,11,12,12,11,12,12,12,12,12,12,12,12,
+ 12,12,12,12,12,12,12,12,12,12,13,12,12,12,12,13,
+ 11,12,11,12,12,12,12,12,12,12,11,12,12,12,12,12,
+ 12,12,13,12,12,12,12,13,12,10,11,11,12,12,11,12,
+ 12,12,12,11,12,12,12,12,12,12,12,13,13,12,12,12,
+ 13,13,11,12,12,12,12,12,12,12,12,13,12,12,12,13,
+ 13,12,12,13,13,13,12,13,13,13,13,11,12,12,12,12,
+ 12,12,12,12,13,12,12,12,12,12,12,13,13,13,13,12,
+ 13,12,13,13,12,12,12,12,13,12,13,13,13,13,12,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,12,12,12,
+ 12,12,12,13,13,13,13,12,13,12,13,13,13,13,13,13,
+ 13,13,13,13,13,13,11,11,11,12,12,11,12,12,12,12,
+ 11,12,12,12,12,12,12,12,13,13,12,12,12,13,12,11,
+ 12,12,12,12,12,12,12,13,13,12,12,12,13,13,12,12,
+ 13,13,13,12,13,13,13,13,11,12,11,12,12,12,12,12,
+ 13,12,12,12,12,13,12,12,13,12,13,13,12,13,12,13,
+ 12,12,12,12,12,13,12,12,13,13,13,12,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,12,12,12,12,12,12,
+ 13,13,13,13,12,13,12,13,12,13,13,13,13,13,13,13,
+ 13,13,13,10,11,11,12,12,10,11,11,12,12,10,11,11,
+ 12,12,11,12,12,12,12,11,12,12,12,12,11,11,11,12,
+ 12,11,11,12,12,12,11,12,12,12,12,12,12,12,13,13,
+ 12,12,12,13,13,11,11,11,12,12,11,12,12,12,12,11,
+ 12,11,13,12,12,12,12,13,13,12,12,12,13,13,11,12,
+ 12,12,12,12,12,12,12,13,12,12,12,13,13,12,12,13,
+ 13,13,12,13,12,13,13,11,12,12,12,12,12,12,12,13,
+ 12,12,12,12,13,12,12,13,13,13,13,12,13,13,13,13,
+ 10,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,
+ 12,12,13,13,12,12,12,13,13,11,11,12,12,12,11,12,
+ 12,12,13,12,12,12,13,13,12,12,13,13,13,12,12,13,
+ 13,13,11,12,12,12,12,12,12,12,13,13,12,12,12,13,
+ 13,12,13,13,13,13,12,13,12,13,13,12,12,12,12,13,
+ 12,12,13,12,13,12,12,13,13,13,12,12,13,13,13,12,
+ 13,13,13,13,12,12,12,12,13,12,12,13,13,13,12,12,
+ 12,13,13,13,13,13,13,13,12,13,13,13,13,10,11,11,
+ 12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,13,
+ 13,12,12,12,13,13,11,12,12,12,12,11,12,12,12,13,
+ 12,12,12,13,13,12,12,13,13,13,12,13,13,13,13,11,
+ 12,12,12,12,12,12,12,13,13,12,12,12,13,12,12,13,
+ 12,13,13,12,13,12,13,13,12,12,12,12,12,12,12,12,
+ 13,13,12,13,12,13,13,12,13,13,13,13,13,13,13,13,
+ 13,12,12,12,13,12,12,13,13,13,13,12,13,12,13,13,
+ 13,13,13,13,13,13,13,13,13,13,11,11,11,12,12,11,
+ 12,12,12,12,11,12,12,12,12,12,12,12,13,13,12,12,
+ 12,13,13,11,12,12,12,12,12,12,12,12,13,12,12,12,
+ 13,13,12,12,13,13,13,12,12,13,13,13,11,12,12,12,
+ 12,12,12,12,13,13,12,12,12,13,13,12,13,13,13,13,
+ 12,13,12,13,13,12,12,12,12,12,12,12,13,12,13,12,
+ 13,13,13,13,12,13,13,12,13,13,13,13,13,13,12,12,
+ 12,12,12,12,13,13,13,13,12,13,12,13,13,13,13,13,
+ 13,13,13,13,13,13,13,10,11,11,12,12,11,12,12,12,
+ 13,11,12,12,13,12,12,12,12,13,13,12,12,12,13,13,
+ 11,12,12,12,12,12,12,12,13,13,12,13,12,13,13,12,
+ 12,13,13,13,12,13,13,13,13,11,12,12,12,13,12,12,
+ 12,13,13,12,12,12,13,12,12,13,13,13,13,12,13,12,
+ 13,13,12,12,12,12,12,12,12,13,13,13,12,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,12,12,12,13,12,
+ 12,13,13,13,13,12,13,12,13,13,13,13,13,13,13,13,
+ 13,13,13,13,10,11,11,12,12,10,11,11,12,12,10,11,
+ 11,12,12,11,12,12,12,12,11,12,12,12,12,11,11,11,
+ 12,12,11,11,12,12,13,11,12,12,12,12,12,12,12,13,
+ 13,12,12,12,13,13,10,11,11,12,12,11,12,12,12,12,
+ 11,12,11,12,12,12,12,12,13,13,12,12,12,13,12,11,
+ 12,12,12,12,12,12,12,12,13,12,12,12,13,13,12,12,
+ 13,13,13,12,13,13,13,13,11,12,12,12,12,12,12,12,
+ 13,13,12,12,12,13,12,12,13,13,13,13,12,13,12,13,
+ 13,10,11,11,12,12,11,12,12,12,12,11,12,12,12,12,
+ 12,12,12,13,13,12,12,12,13,13,11,12,12,12,12,12,
+ 12,12,12,13,12,12,12,13,13,12,12,13,13,13,12,12,
+ 13,13,13,11,12,12,12,12,12,12,12,13,13,11,12,12,
+ 13,12,12,13,13,13,13,12,13,12,13,13,12,12,12,12,
+ 13,12,12,13,13,13,12,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,12,12,12,13,12,12,12,13,13,13,12,
+ 12,12,13,13,13,13,13,13,13,12,13,13,13,13,10,11,
+ 11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,
+ 13,13,12,12,12,13,13,11,12,12,12,12,12,12,12,12,
+ 13,12,12,12,13,13,12,12,13,13,13,12,12,13,13,13,
+ 11,12,11,12,12,12,12,12,13,13,11,12,12,13,12,12,
+ 13,12,13,13,12,13,12,13,13,12,12,12,12,12,12,12,
+ 13,13,13,12,13,12,13,13,12,13,13,13,13,13,13,13,
+ 13,13,12,12,12,13,12,12,13,12,13,13,12,13,12,13,
+ 13,13,13,13,13,13,12,13,12,13,13,10,11,11,12,12,
+ 11,12,12,12,12,11,12,12,13,12,12,12,12,13,13,12,
+ 12,12,13,13,11,12,12,12,12,12,12,12,12,13,12,12,
+ 12,13,13,12,12,13,13,13,12,13,13,13,13,11,12,12,
+ 12,12,12,12,12,13,13,12,12,12,13,12,12,13,13,13,
+ 13,12,13,12,13,13,12,12,12,12,13,12,12,13,13,13,
+ 12,13,13,13,13,13,13,13,13,13,13,13,13,13,13,12,
+ 12,12,12,12,12,13,13,13,13,12,13,12,13,13,13,13,
+ 13,13,13,13,13,13,13,13,11,11,11,12,12,11,12,12,
+ 12,12,11,12,12,12,12,12,12,12,13,13,12,12,12,13,
+ 13,11,12,12,12,12,12,12,12,13,13,12,12,12,13,13,
+ 12,12,13,13,13,12,13,13,13,13,11,12,12,12,12,12,
+ 12,12,13,13,12,12,12,13,12,12,13,12,13,13,12,13,
+ 12,13,13,12,12,12,12,12,12,13,13,13,13,12,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,12,12,12,12,
+ 12,12,13,13,13,13,12,13,12,13,12,13,13,13,13,13,
+ 13,13,13,13,12,
+};
+
+static const static_codebook _44p7_p4_1 = {
+ 5, 3125,
+ (char *)_vq_lengthlist__44p7_p4_1,
+ 1, -533725184, 1611661312, 3, 0,
+ (long *)_vq_quantlist__44p7_p4_1,
+ 0
+};
+
+static const long _vq_quantlist__44p7_p5_0[] = {
+ 2,
+ 1,
+ 3,
+ 0,
+ 4,
+};
+
+static const char _vq_lengthlist__44p7_p5_0[] = {
+ 2, 6, 6, 9, 9, 5, 7, 8,10,11, 5, 8, 7,11,10, 8,
+ 10,11,12,13, 8,11,10,13,12, 6, 7, 8,10,11, 7, 8,
+ 10,10,12, 8, 9, 9,12,11,10,10,12,11,14,10,11,12,
+ 14,13, 6, 8, 7,11,10, 8, 9, 9,11,12, 7,10, 8,12,
+ 10,10,12,12,13,14,10,12,10,14,11, 9,10,11,11,12,
+ 10,10,11,11,13,11,12,12,13,13,12,11,13,11,15,13,
+ 14,13,14,14, 9,11,10,12,11,11,12,12,13,13,10,11,
+ 10,13,11,13,13,14,14,14,12,13,11,14,11, 7, 8, 9,
+ 11,12, 9, 9,11,12,13, 9,10,10,13,12,11,12,13,13,
+ 15,11,12,12,14,14, 9,10,10,12,13,10,10,12,12,14,
+ 11,11,11,13,13,12,12,13,13,15,12,13,13,15,14, 9,
+ 10,10,12,13,10,11,11,13,14,10,12,11,14,13,12,13,
+ 13,14,15,12,13,13,15,14,12,12,13,13,14,12,13,13,
+ 13,15,13,14,14,14,15,14,14,15,14,16,14,15,15,16,
+ 16,12,13,13,14,14,13,13,14,15,14,12,13,13,15,14,
+ 14,15,15,15,16,14,15,14,16,14, 7, 9, 8,12,11, 9,
+ 10,10,12,13, 9,11, 9,13,12,11,12,12,14,14,11,13,
+ 12,15,13, 9,10,10,13,12,10,11,12,13,14,10,12,11,
+ 14,13,12,13,13,14,15,13,13,13,15,14, 9,10,10,13,
+ 12,11,11,11,13,13,10,12,10,14,12,13,13,13,14,15,
+ 12,13,12,15,13,12,13,13,14,14,12,13,13,14,15,13,
+ 14,13,15,15,14,14,15,14,16,14,15,15,16,15,12,13,
+ 12,14,13,13,13,13,15,14,12,13,13,15,13,14,15,15,
+ 16,15,14,15,14,16,14,11,12,12,13,14,12,13,14,14,
+ 15,12,13,13,14,15,14,14,15,15,16,14,15,15,16,16,
+ 12,13,13,14,15,13,13,14,14,16,13,14,14,15,15,15,
+ 15,16,15,17,15,15,15,16,16,12,13,13,14,15,13,14,
+ 14,15,16,13,14,14,15,15,15,15,16,16,17,15,15,15,
+ 17,16,14,15,15,16,16,15,15,16,15,16,15,16,16,16,
+ 17,16,16,17,16,18,16,16,17,18,17,14,15,15,16,16,
+ 15,16,16,16,17,15,16,15,17,16,16,17,17,17,18,16,
+ 16,16,17,16,11,12,12,14,13,12,13,13,15,14,12,14,
+ 13,15,14,14,15,15,16,16,14,15,14,16,15,12,13,13,
+ 15,14,13,14,14,15,15,13,14,14,16,15,15,15,15,16,
+ 16,15,16,15,17,16,12,13,13,15,14,13,14,14,15,15,
+ 13,14,13,16,14,15,15,15,16,16,15,15,15,17,15,14,
+ 15,15,16,16,15,15,15,16,16,15,16,16,17,17,16,16,
+ 17,17,17,16,17,17,18,17,14,15,15,16,15,15,15,16,
+ 16,16,15,15,15,17,15,17,17,17,18,17,16,17,16,18,
+ 16, 6, 9, 9,12,12, 8,10,10,12,13, 9,11,10,13,12,
+ 10,12,12,14,14,11,13,12,14,14, 8,10,10,12,12, 9,
+ 10,11,12,14,10,11,11,13,13,12,12,13,13,15,12,13,
+ 13,15,14, 9,10,10,13,13,10,11,11,13,13,10,12,10,
+ 14,13,12,13,13,14,15,12,13,13,15,14,11,12,12,13,
+ 14,12,12,13,13,15,12,13,13,14,14,13,13,14,13,16,
+ 14,15,15,16,15,11,12,12,14,14,13,13,13,15,14,12,
+ 13,13,15,14,14,15,15,16,15,14,14,14,16,14, 7, 9,
+ 10,12,12, 9,10,11,13,13, 9,11,10,13,13,11,12,13,
+ 14,15,12,13,13,15,14, 9,10,11,12,13,10,10,12,13,
+ 14,11,11,12,14,14,12,12,14,14,15,13,13,13,15,15,
+ 9,11,11,13,13,11,12,12,14,14,10,12,10,14,13,13,
+ 14,13,15,15,12,14,13,15,14,12,12,13,13,15,12,12,
+ 14,13,15,13,14,14,15,15,14,14,15,14,17,14,15,15,
+ 16,16,12,13,13,15,14,13,14,14,15,15,12,14,13,15,
+ 14,14,15,15,16,16,14,15,14,16,14, 7,10,10,12,12,
+ 10,11,11,12,13,10,12,10,14,12,12,13,13,14,15,12,
+ 13,13,15,14, 9,11,10,13,12,10,10,12,12,14,11,13,
+ 12,14,13,13,13,14,13,15,13,14,14,15,14,10,11,11,
+ 13,13,12,12,12,13,14,10,12,10,14,12,13,14,14,15,
+ 15,13,14,13,15,13,12,13,13,14,14,12,12,13,14,15,
+ 13,14,14,15,15,13,13,14,13,15,14,15,15,16,16,12,
+ 13,13,14,14,13,14,14,15,15,12,13,13,15,13,15,15,
+ 15,16,16,13,14,13,16,13,11,12,13,14,14,12,13,14,
+ 14,15,12,13,13,15,15,14,14,15,15,17,14,15,15,16,
+ 16,12,13,14,14,15,13,13,14,14,16,13,14,14,15,16,
+ 14,14,16,15,17,15,15,16,16,16,12,13,13,15,15,13,
+ 14,14,15,16,13,14,14,15,16,15,15,16,17,17,15,16,
+ 15,17,16,14,15,15,15,16,15,15,16,15,17,15,15,16,
+ 16,17,16,16,16,16,18,16,16,17,17,17,14,15,15,16,
+ 16,15,16,16,16,17,15,16,15,17,16,16,17,17,17,17,
+ 16,17,16,18,17,11,12,12,14,14,13,13,14,14,15,13,
+ 14,13,15,14,14,15,15,15,16,14,15,15,17,15,12,13,
+ 13,15,14,13,13,14,15,15,14,15,14,16,15,15,15,15,
+ 15,16,15,16,15,17,16,12,13,13,15,15,14,14,14,15,
+ 16,13,14,13,16,15,15,15,16,16,17,15,16,15,17,15,
+ 14,15,15,16,16,14,15,15,16,16,15,16,16,17,16,15,
+ 15,16,15,17,16,17,17,18,17,14,15,15,16,16,15,16,
+ 16,16,17,14,15,15,17,16,17,17,17,17,18,15,16,16,
+ 18,15, 6, 9, 9,12,12, 9,10,11,12,13, 8,10,10,13,
+ 12,11,12,13,14,14,10,12,12,14,13, 9,10,10,12,13,
+ 10,10,12,13,14,10,11,11,13,13,12,13,13,14,15,12,
+ 13,13,15,14, 8,10,10,12,12,10,11,11,13,13, 9,11,
+ 10,13,13,12,13,13,14,15,12,13,12,15,13,11,12,12,
+ 14,14,12,13,13,13,15,13,13,13,14,15,14,14,15,14,
+ 16,14,15,15,15,15,11,12,12,14,13,12,13,13,15,14,
+ 12,13,12,15,13,14,14,15,16,16,13,14,13,16,13, 7,
+ 10,10,12,12,10,10,12,12,14,10,11,11,13,12,12,13,
+ 13,13,15,12,13,13,15,14,10,11,11,13,13,10,10,12,
+ 12,14,12,12,12,14,13,13,13,14,13,15,13,14,14,15,
+ 14, 9,10,11,13,13,11,12,12,13,14,10,12,10,14,12,
+ 13,13,14,14,15,13,13,12,15,13,12,13,13,14,14,12,
+ 13,13,14,15,13,14,14,15,15,13,13,15,13,16,15,15,
+ 15,16,16,12,13,13,14,14,13,14,14,15,15,12,13,12,
+ 15,14,15,15,15,16,16,13,14,13,15,13, 7,10, 9,12,
+ 12, 9,10,11,13,13, 9,11,10,13,13,11,13,13,14,15,
+ 11,13,12,15,14, 9,11,11,13,13,10,10,12,13,14,11,
+ 12,12,14,14,12,13,14,14,15,13,13,13,15,15, 9,11,
+ 10,13,12,11,12,11,14,14,10,12,10,14,13,13,14,13,
+ 15,15,12,14,12,15,14,12,13,13,14,15,13,13,14,14,
+ 15,13,14,14,15,15,14,14,15,14,17,14,15,15,16,16,
+ 12,13,12,15,13,13,14,14,15,15,12,14,13,15,13,14,
+ 15,15,16,16,14,15,14,16,14,11,12,12,14,14,13,13,
+ 14,14,15,13,14,13,15,15,14,15,15,16,17,14,15,15,
+ 16,15,12,13,13,15,15,13,13,14,15,16,14,14,14,16,
+ 15,15,15,16,15,17,15,16,15,17,16,12,13,13,14,15,
+ 14,14,15,15,16,13,14,13,15,15,15,15,16,16,17,15,
+ 15,15,16,15,14,15,15,16,16,14,15,15,16,17,15,16,
+ 16,17,17,16,15,16,15,17,16,17,17,17,17,14,15,15,
+ 15,16,15,15,16,16,17,14,15,15,16,16,16,16,17,17,
+ 18,15,16,15,17,15,11,13,12,14,14,12,13,13,15,15,
+ 12,14,13,15,14,14,15,15,16,16,14,15,14,16,15,12,
+ 13,13,15,15,13,14,14,15,16,13,14,14,16,16,15,15,
+ 16,16,17,15,16,15,17,16,12,13,13,15,14,13,14,14,
+ 16,15,13,14,13,16,14,15,16,15,17,16,15,15,14,18,
+ 15,14,15,15,16,16,15,15,16,16,17,15,16,15,17,16,
+ 16,16,17,17,18,16,17,17,18,17,14,15,15,16,15,15,
+ 16,15,17,16,15,15,15,17,15,16,17,17,18,17,16,17,
+ 16,18,15,10,12,12,14,14,12,13,13,14,14,12,13,13,
+ 14,14,13,14,14,15,15,13,14,14,16,15,11,12,13,14,
+ 14,12,13,13,15,15,12,13,13,15,15,13,14,15,15,16,
+ 14,15,15,16,16,12,13,13,14,14,13,13,14,15,15,13,
+ 14,13,15,15,14,15,15,16,16,14,15,14,16,15,13,14,
+ 14,15,15,13,14,14,15,16,14,14,15,16,16,14,15,15,
+ 15,17,15,16,16,17,17,13,14,14,15,15,14,15,15,16,
+ 16,14,15,15,16,16,15,16,16,16,17,15,16,15,17,16,
+ 11,12,12,14,14,12,13,13,14,15,12,13,13,15,14,13,
+ 14,14,15,16,13,14,14,16,15,12,13,13,14,15,13,13,
+ 14,15,15,13,14,14,15,15,14,14,15,15,17,14,15,15,
+ 16,16,12,13,13,15,15,13,14,14,15,15,13,14,13,15,
+ 15,14,15,15,16,17,14,15,15,16,16,13,13,14,15,16,
+ 14,14,15,15,16,14,15,15,16,16,15,15,16,15,18,15,
+ 16,16,17,17,14,15,15,16,16,15,15,15,16,16,14,15,
+ 15,17,16,16,16,16,17,17,15,16,16,17,16,10,12,12,
+ 14,14,12,13,13,14,15,12,13,13,15,14,14,14,15,15,
+ 16,14,15,14,16,15,12,13,13,15,14,13,13,14,15,15,
+ 13,14,14,15,15,14,14,15,15,16,14,15,15,16,16,12,
+ 13,13,15,15,13,14,14,15,16,13,14,13,15,14,15,15,
+ 15,16,16,14,15,15,16,15,13,14,14,16,15,14,14,14,
+ 15,16,14,15,15,16,16,15,15,16,15,17,16,17,16,17,
+ 17,14,14,15,15,16,15,15,16,16,16,14,15,14,16,15,
+ 16,16,16,17,17,15,16,15,17,15,11,13,13,14,15,13,
+ 13,14,15,15,13,14,13,15,15,14,15,15,15,16,14,15,
+ 15,17,15,13,13,14,15,15,13,14,15,15,16,14,14,14,
+ 16,16,15,14,16,15,17,15,16,16,17,16,13,14,14,15,
+ 15,14,14,14,16,16,13,15,14,16,15,15,15,16,17,17,
+ 15,16,15,17,16,14,15,15,15,16,15,15,16,15,17,15,
+ 16,16,16,17,16,16,17,15,18,16,17,17,17,17,14,15,
+ 15,16,16,15,16,16,17,17,15,16,15,17,16,16,17,17,
+ 18,18,16,17,15,18,16,10,12,12,14,14,13,13,14,14,
+ 15,13,14,13,15,14,14,15,15,15,16,15,15,15,16,15,
+ 12,13,13,15,14,12,12,14,14,15,14,15,14,16,15,15,
+ 14,15,14,17,15,16,16,17,16,12,13,13,14,15,14,14,
+ 15,15,16,13,14,12,16,14,15,16,16,16,17,15,16,14,
+ 17,15,14,15,14,16,15,14,14,15,15,15,15,16,15,17,
+ 16,15,14,16,14,16,16,17,17,18,17,14,14,15,15,16,
+ 15,16,16,16,17,14,15,14,16,15,16,16,17,17,17,15,
+ 16,14,17,14,10,12,12,14,13,12,13,13,14,14,11,13,
+ 12,14,14,13,14,14,15,16,13,14,14,16,15,12,13,13,
+ 14,14,13,13,14,15,15,13,14,13,15,15,14,14,15,15,
+ 16,14,15,15,16,16,11,13,12,14,14,12,13,13,15,15,
+ 12,13,13,15,15,14,15,15,16,16,13,14,14,16,15,13,
+ 14,14,15,15,14,15,15,15,16,14,15,15,16,16,15,16,
+ 16,16,17,16,16,16,17,17,13,14,14,15,15,14,15,15,
+ 16,16,13,14,14,16,15,15,16,16,17,17,15,15,15,17,
+ 15,11,12,12,14,14,12,13,13,14,15,12,13,13,15,14,
+ 14,14,15,15,16,14,14,14,16,15,12,13,13,15,14,13,
+ 13,14,15,15,13,14,14,16,15,14,15,15,15,16,15,15,
+ 15,16,16,12,13,13,14,15,13,13,14,15,15,13,14,13,
+ 15,15,15,15,15,16,16,14,15,14,16,15,14,14,15,16,
+ 16,14,15,15,15,16,15,16,15,16,16,15,15,16,15,17,
+ 16,16,16,17,17,13,14,14,15,16,14,15,15,16,16,14,
+ 14,14,16,16,16,16,16,17,17,15,15,15,17,15,11,12,
+ 12,14,14,12,13,13,14,15,12,13,13,15,14,14,14,14,
+ 15,16,13,14,14,16,15,12,13,13,15,15,13,13,14,15,
+ 16,13,14,14,15,15,14,15,15,16,17,14,15,15,17,16,
+ 12,13,13,15,14,13,14,14,15,15,13,14,13,15,15,14,
+ 15,15,16,16,14,15,14,17,15,14,15,15,16,16,14,15,
+ 15,16,17,15,15,15,17,17,15,16,16,16,17,16,17,16,
+ 17,17,13,15,14,16,15,14,15,15,16,16,14,15,14,16,
+ 15,16,16,16,17,17,15,16,15,17,15,10,12,12,14,14,
+ 13,13,14,14,15,13,14,13,15,14,14,15,15,15,17,14,
+ 15,15,16,15,12,13,13,15,14,12,12,14,14,15,14,15,
+ 14,16,15,15,14,16,15,17,15,16,16,17,16,12,13,13,
+ 14,15,14,14,15,15,16,12,14,12,15,14,15,16,16,16,
+ 17,15,16,14,17,14,14,15,14,16,16,14,14,15,15,16,
+ 15,16,16,17,16,15,14,16,14,17,16,17,17,18,17,14,
+ 14,15,15,16,15,15,16,16,17,14,15,14,16,15,16,17,
+ 17,17,18,15,16,14,17,14,11,13,13,15,14,13,13,14,
+ 15,15,12,14,13,15,15,14,15,15,15,17,14,15,14,16,
+ 15,13,14,14,15,15,13,14,15,15,16,14,15,14,16,16,
+ 15,15,16,16,17,15,16,16,17,17,13,14,13,15,15,14,
+ 14,14,16,16,13,15,14,16,15,15,16,16,17,17,15,16,
+ 14,17,15,15,15,15,16,17,15,15,16,16,17,15,16,16,
+ 17,17,16,15,17,16,17,17,17,17,18,18,14,15,15,17,
+ 15,15,16,16,17,16,15,16,15,17,15,16,17,17,17,17,
+ 16,17,15,18,15,
+};
+
+static const static_codebook _44p7_p5_0 = {
+ 5, 3125,
+ (char *)_vq_lengthlist__44p7_p5_0,
+ 1, -528744448, 1616642048, 3, 0,
+ (long *)_vq_quantlist__44p7_p5_0,
+ 0
+};
+
+static const long _vq_quantlist__44p7_p5_1[] = {
+ 3,
+ 2,
+ 4,
+ 1,
+ 5,
+ 0,
+ 6,
+};
+
+static const char _vq_lengthlist__44p7_p5_1[] = {
+ 2, 3, 3, 3, 3, 3, 3,
+};
+
+static const static_codebook _44p7_p5_1 = {
+ 1, 7,
+ (char *)_vq_lengthlist__44p7_p5_1,
+ 1, -533200896, 1611661312, 3, 0,
+ (long *)_vq_quantlist__44p7_p5_1,
+ 0
+};
+
+static const long _vq_quantlist__44p7_p6_0[] = {
+ 1,
+ 0,
+ 2,
+};
+
+static const char _vq_lengthlist__44p7_p6_0[] = {
+ 2, 5, 6, 5, 7, 8, 5, 8, 7, 5, 7, 7, 7, 7, 9, 8,
+ 9, 9, 5, 7, 7, 8, 9, 9, 7, 9, 7, 6, 8, 8, 8, 9,
+ 10, 8, 9, 9, 8, 9,10, 9, 9,11,10,10,11, 8,10, 9,
+ 10,10,11, 9,10,10, 6, 8, 8, 8, 9, 9, 8,10, 9, 8,
+ 9,10, 9,10,10,10,11,10, 8,10, 9,10,11,10, 9,11,
+ 9, 6, 8, 8, 7, 9, 9, 8, 9, 9, 7, 9, 9, 9, 9,10,
+ 9,10,10, 8, 9, 9, 9,10,10, 9,10, 9, 7, 9, 9, 9,
+ 10,10, 9,10,10, 9, 9,10,10, 9,11,10,11,11, 9,10,
+ 10,10,11,11,10,11,10, 6, 9, 8, 9,10,10, 9,10, 9,
+ 8,10,10, 9, 9,10,10,11,11, 9,10,10,10,11,11, 9,
+ 11, 9, 6, 8, 8, 8, 9, 9, 7, 9, 9, 8, 9, 9, 9, 9,
+ 10, 9,10,10, 7, 9, 9, 9,10,10, 9,10, 9, 6, 8, 9,
+ 9, 9,10, 9,10,10, 9,10,10, 9, 9,11,10,11,11, 8,
+ 10,10,10,11,11, 9,10, 9, 7, 9, 9, 9,10,10, 9,10,
+ 10, 9,10,10,10,10,11,10,11,11, 9,10, 9,10,11,11,
+ 10,11, 9,
+};
+
+static const static_codebook _44p7_p6_0 = {
+ 5, 243,
+ (char *)_vq_lengthlist__44p7_p6_0,
+ 1, -527106048, 1620377600, 2, 0,
+ (long *)_vq_quantlist__44p7_p6_0,
+ 0
+};
+
+static const long _vq_quantlist__44p7_p6_1[] = {
+ 1,
+ 0,
+ 2,
+};
+
+static const char _vq_lengthlist__44p7_p6_1[] = {
+ 4, 7, 7, 6, 7, 8, 6, 8, 7, 7, 7, 8, 7, 7, 8, 8,
+ 8, 8, 7, 7, 7, 8, 8, 8, 7, 8, 8, 7, 8, 8, 8, 8,
+ 8, 8, 8, 8, 8, 8, 8, 8, 8, 9, 8, 9, 9, 8, 8, 8,
+ 8, 9, 9, 8, 9, 8, 7, 8, 8, 8, 8, 8, 8, 8, 8, 8,
+ 8, 8, 8, 8, 9, 8, 9, 9, 8, 8, 8, 8, 9, 9, 8, 9,
+ 8, 7, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 9,
+ 8, 9, 9, 8, 8, 8, 8, 9, 9, 8, 9, 8, 7, 8, 8, 8,
+ 8, 9, 8, 9, 8, 8, 8, 8, 8, 8, 9, 8, 9, 9, 8, 8,
+ 8, 9, 9, 9, 8, 9, 9, 7, 8, 8, 8, 8, 8, 8, 8, 8,
+ 8, 8, 8, 8, 8, 9, 8, 9, 9, 8, 8, 8, 8, 9, 9, 8,
+ 9, 8, 7, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8,
+ 9, 8, 9, 9, 8, 8, 8, 8, 9, 9, 8, 9, 8, 7, 8, 8,
+ 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 9, 8, 9, 9, 8,
+ 8, 8, 8, 9, 9, 8, 9, 8, 8, 8, 8, 8, 8, 8, 8, 8,
+ 8, 8, 8, 8, 8, 9, 9, 8, 9, 9, 8, 8, 8, 9, 9, 9,
+ 8, 9, 8,
+};
+
+static const static_codebook _44p7_p6_1 = {
+ 5, 243,
+ (char *)_vq_lengthlist__44p7_p6_1,
+ 1, -530841600, 1616642048, 2, 0,
+ (long *)_vq_quantlist__44p7_p6_1,
+ 0
+};
+
+static const long _vq_quantlist__44p7_p7_0[] = {
+ 1,
+ 0,
+ 2,
+};
+
+static const char _vq_lengthlist__44p7_p7_0[] = {
+ 1, 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, 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,
+ 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, 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, 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, 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, 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, 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, 9, 9, 9, 9,
+ 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9,
+ 9, 9, 9,
+};
+
+static const static_codebook _44p7_p7_0 = {
+ 5, 243,
+ (char *)_vq_lengthlist__44p7_p7_0,
+ 1, -513979392, 1633504256, 2, 0,
+ (long *)_vq_quantlist__44p7_p7_0,
+ 0
+};
+
+static const long _vq_quantlist__44p7_p7_1[] = {
+ 1,
+ 0,
+ 2,
+};
+
+static const char _vq_lengthlist__44p7_p7_1[] = {
+ 1, 5, 5, 4,10,10, 5,10,10, 5,10,10,10,10,10,10,
+ 10,10, 5,10,10,10,10,10, 9,10,10, 6,10,10,10,10,
+ 10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,
+ 10,10,10,10,10,10, 7,10,10,10,10,10,10,10,10,10,
+ 10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,
+ 10, 6,10,10,10,10,10,10,10,10,10,10,10,10,10,10,
+ 10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,
+ 10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,
+ 10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,
+ 10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,
+ 10,10, 6,10,10,10,10,10,10,10,10,10,10,10,10,10,
+ 10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,
+ 10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,
+ 10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,
+ 10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,
+ 10,11,11,
+};
+
+static const static_codebook _44p7_p7_1 = {
+ 5, 243,
+ (char *)_vq_lengthlist__44p7_p7_1,
+ 1, -516716544, 1630767104, 2, 0,
+ (long *)_vq_quantlist__44p7_p7_1,
+ 0
+};
+
+static const long _vq_quantlist__44p7_p7_2[] = {
+ 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 const char _vq_lengthlist__44p7_p7_2[] = {
+ 1, 3, 2, 4, 5, 7, 7, 8, 8, 9, 9,10,10,11,11,12,
+ 12,13,13,14,14,15,15,15,15,
+};
+
+static const static_codebook _44p7_p7_2 = {
+ 1, 25,
+ (char *)_vq_lengthlist__44p7_p7_2,
+ 1, -518864896, 1620639744, 5, 0,
+ (long *)_vq_quantlist__44p7_p7_2,
+ 0
+};
+
+static const long _vq_quantlist__44p7_p7_3[] = {
+ 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 const char _vq_lengthlist__44p7_p7_3[] = {
+ 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 5, 5, 5,
+ 5, 5, 5, 5, 5, 5, 5, 5, 5,
+};
+
+static const static_codebook _44p7_p7_3 = {
+ 1, 25,
+ (char *)_vq_lengthlist__44p7_p7_3,
+ 1, -529006592, 1611661312, 5, 0,
+ (long *)_vq_quantlist__44p7_p7_3,
+ 0
+};
+
+static const char _huff_lengthlist__44p7_short[] = {
+ 3, 9,14,16,17,19,22,22, 5, 4, 6, 9,11,13,17,20,
+ 9, 5, 5, 6, 9,11,15,19,11, 7, 5, 5, 7, 9,13,17,
+ 14, 9, 7, 6, 6, 7,11,14,16,11, 9, 7, 6, 4, 4, 8,
+ 19,15,13,11, 9, 4, 3, 4,21,16,16,15,12, 6, 4, 4,
+};
+
+static const static_codebook _huff_book__44p7_short = {
+ 2, 64,
+ (char *)_huff_lengthlist__44p7_short,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
+static const long _vq_quantlist__44p8_l0_0[] = {
+ 6,
+ 5,
+ 7,
+ 4,
+ 8,
+ 3,
+ 9,
+ 2,
+ 10,
+ 1,
+ 11,
+ 0,
+ 12,
+};
+
+static const char _vq_lengthlist__44p8_l0_0[] = {
+ 2, 4, 4, 7, 7, 8, 8,10,10,11,11,12,12, 4, 5, 5,
+ 7, 7, 9, 9,10, 9,12,10,12,12, 4, 5, 5, 7, 7, 9,
+ 9, 9,10,10,12,12,12, 7, 7, 7, 7, 8, 9, 8,11, 5,
+ 12, 6,12,10, 7, 7, 7, 8, 7, 8, 9, 5,11, 6,12,10,
+ 12, 8, 9, 9, 9, 9, 9, 9,11, 7,11, 7,11, 9, 8, 9,
+ 9, 9, 9, 9, 9, 7,10, 7,11, 9,11,10,10,10,10,10,
+ 10,10,11,10,11, 8,12, 9,10,10,10,10,10,10,10,10,
+ 11, 8,11, 9,12,10,11,11,11,11,11,11,11,11,12,10,
+ 12,11,10,11,11,11,11,11,11,11,11,10,12,11,12,12,
+ 12,12,12,12,12,12,12,12,12,12,12,12,11,12,12,12,
+ 12,12,12,12,12,12,11,12,12,
+};
+
+static const static_codebook _44p8_l0_0 = {
+ 2, 169,
+ (char *)_vq_lengthlist__44p8_l0_0,
+ 1, -526516224, 1616117760, 4, 0,
+ (long *)_vq_quantlist__44p8_l0_0,
+ 0
+};
+
+static const long _vq_quantlist__44p8_l0_1[] = {
+ 2,
+ 1,
+ 3,
+ 0,
+ 4,
+};
+
+static const char _vq_lengthlist__44p8_l0_1[] = {
+ 4, 4, 4, 5, 5, 4, 4, 5, 5, 5, 4, 5, 4, 5, 5, 5,
+ 5, 5, 5, 5, 5, 5, 5, 5, 5,
+};
+
+static const static_codebook _44p8_l0_1 = {
+ 2, 25,
+ (char *)_vq_lengthlist__44p8_l0_1,
+ 1, -533725184, 1611661312, 3, 0,
+ (long *)_vq_quantlist__44p8_l0_1,
+ 0
+};
+
+static const long _vq_quantlist__44p8_l1_0[] = {
+ 54,
+ 29,
+ 79,
+ 0,
+ 108,
+};
+
+static const char _vq_lengthlist__44p8_l1_0[] = {
+ 1, 2, 3, 6, 7, 7, 6, 7, 7, 8, 8, 8, 8, 8, 8, 8,
+ 8, 8, 8, 8, 8, 8, 8, 8, 8,
+};
+
+static const static_codebook _44p8_l1_0 = {
+ 2, 25,
+ (char *)_vq_lengthlist__44p8_l1_0,
+ 1, -514516992, 1620639744, 7, 0,
+ (long *)_vq_quantlist__44p8_l1_0,
+ 0
+};
+
+static const char _huff_lengthlist__44p8_lfe[] = {
+ 2, 3, 1, 3,
+};
+
+static const static_codebook _huff_book__44p8_lfe = {
+ 2, 4,
+ (char *)_huff_lengthlist__44p8_lfe,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
+static const char _huff_lengthlist__44p8_long[] = {
+ 2, 7,14,16,17,18,20,21, 7, 4, 6, 8,11,12,14,16,
+ 13, 5, 4, 4, 8, 9,11,13,15, 8, 4, 3, 5, 7, 9,10,
+ 17,11, 8, 4, 4, 6, 9, 9,17,11, 9, 7, 6, 5, 7, 8,
+ 19,13,11, 9, 9, 7, 8, 8,21,15,13,11,10, 8, 8, 7,
+};
+
+static const static_codebook _huff_book__44p8_long = {
+ 2, 64,
+ (char *)_huff_lengthlist__44p8_long,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
+static const long _vq_quantlist__44p8_p1_0[] = {
+ 1,
+ 0,
+ 2,
+};
+
+static const char _vq_lengthlist__44p8_p1_0[] = {
+ 2, 5, 5, 4, 7, 7, 4, 7, 7, 5, 7, 7, 7, 8, 9, 7,
+ 9, 9, 5, 7, 7, 7, 9, 9, 7, 9, 8, 6, 7, 8, 8, 9,
+ 10, 8, 9,10, 8, 9,10,10,10,12,10,11,12, 8,10,10,
+ 10,11,12,10,11,11, 6, 8, 7, 8,10, 9, 8,10, 9, 8,
+ 10,10,10,11,11,10,12,11, 8,10, 9,10,12,11,10,12,
+ 10, 5, 8, 8, 8,10,10, 8,10,10, 7, 9,10, 9,10,11,
+ 9,11,11, 8,10,10,10,12,12,10,12,11, 7, 9, 9, 9,
+ 10,11, 9,11,11, 9, 9,11,10,11,12,10,11,12, 9,11,
+ 11,11,12,12,11,12,12, 7, 9, 9,10,11,11,10,12,11,
+ 9,11,10,11,11,12,11,13,12,10,11,11,12,13,13,11,
+ 13,11, 5, 8, 8, 8,10,10, 8,10,10, 8,10,10,10,11,
+ 12,10,12,11, 7,10, 9, 9,11,11, 9,11,10, 7, 9, 9,
+ 10,11,12,10,11,11,10,11,11,11,11,13,12,13,13, 9,
+ 10,11,12,12,13,11,12,11, 7, 9, 9, 9,11,11, 9,11,
+ 10, 9,11,11,11,12,12,11,12,12, 9,11, 9,10,12,11,
+ 10,12,11,
+};
+
+static const static_codebook _44p8_p1_0 = {
+ 5, 243,
+ (char *)_vq_lengthlist__44p8_p1_0,
+ 1, -535822336, 1611661312, 2, 0,
+ (long *)_vq_quantlist__44p8_p1_0,
+ 0
+};
+
+static const long _vq_quantlist__44p8_p2_0[] = {
+ 2,
+ 1,
+ 3,
+ 0,
+ 4,
+};
+
+static const char _vq_lengthlist__44p8_p2_0[] = {
+ 4, 6, 6, 9, 9, 6, 8, 8,10,10, 6, 8, 8,10,10, 8,
+ 9,10,12,12, 8,10, 9,12,12, 6, 8, 8,10,10, 8, 8,
+ 9,10,11, 8, 9, 9,11,11, 9,10,11,12,13,10,11,11,
+ 13,13, 6, 8, 8,10,10, 8, 9, 9,11,11, 8, 9, 8,11,
+ 10,10,11,11,13,13, 9,11,10,13,12, 9,10,10,12,12,
+ 10,10,11,12,13,10,11,11,13,13,12,12,13,12,15,12,
+ 13,13,15,14, 9,10,10,12,12,10,11,11,13,13,10,11,
+ 10,13,12,12,13,13,14,15,12,13,12,15,12, 7, 8, 8,
+ 10,11, 8, 9,10,11,12, 8, 9, 9,11,11,10,11,11,13,
+ 14,10,11,11,13,13, 8, 9, 9,11,12, 9,10,11,11,13,
+ 9,10,10,12,12,11,11,12,13,15,11,12,12,14,14, 8,
+ 9, 9,11,11, 9,10,11,12,13, 9,10,10,12,12,11,12,
+ 12,14,15,11,12,12,14,14,10,11,12,13,13,11,12,12,
+ 13,14,12,12,12,14,14,13,13,14,14,16,14,14,14,16,
+ 15,10,11,11,13,13,12,12,12,14,14,11,12,12,14,13,
+ 14,14,14,15,16,13,14,13,16,14, 7, 8, 8,11,10, 8,
+ 9, 9,11,11, 8,10, 9,12,11,10,11,11,13,13,10,11,
+ 11,14,13, 8, 9, 9,12,11, 9,10,10,12,12, 9,11,10,
+ 13,12,11,12,12,13,14,11,12,12,15,14, 8, 9, 9,12,
+ 11, 9,10,10,12,12, 9,11,10,13,11,11,12,12,14,14,
+ 11,12,12,14,13,10,11,11,13,13,11,12,12,13,14,12,
+ 13,12,14,14,13,13,14,14,16,13,14,14,16,15,10,11,
+ 11,13,13,12,12,12,14,14,11,12,12,14,13,13,14,14,
+ 15,15,13,14,13,16,14, 9,10,11,12,13,11,11,12,12,
+ 14,11,11,12,13,14,13,13,14,14,16,13,13,14,15,15,
+ 11,11,12,12,14,12,12,13,13,15,12,12,13,13,15,14,
+ 14,15,15,16,14,14,14,15,16,11,12,12,13,14,12,12,
+ 13,14,15,12,13,12,14,14,14,14,15,15,16,14,14,14,
+ 16,16,13,13,14,15,16,14,14,15,15,16,14,15,15,16,
+ 16,15,15,16,16,18,16,16,16,17,17,13,14,14,15,15,
+ 14,14,15,16,16,14,15,14,16,16,16,16,16,17,18,15,
+ 16,16,17,16, 9,11,10,13,12,11,12,11,14,13,11,12,
+ 11,14,12,13,14,13,15,14,13,14,13,16,14,11,12,12,
+ 14,13,12,12,13,14,14,12,13,12,15,14,14,14,14,16,
+ 16,14,15,14,17,15,11,12,11,14,12,12,13,12,15,13,
+ 12,13,12,15,13,14,14,14,16,15,14,15,14,16,15,13,
+ 14,14,15,15,14,14,15,16,16,14,15,14,16,16,15,15,
+ 16,16,17,16,16,16,17,17,13,14,14,16,15,14,15,15,
+ 16,16,14,15,14,17,15,16,16,16,17,17,15,16,15,18,
+ 16, 7, 8, 8,10,11, 8, 9, 9,11,12, 8, 9, 9,12,11,
+ 10,11,11,13,14,10,11,11,14,13, 8, 9, 9,11,11, 9,
+ 10,10,12,12, 9,10,10,12,12,11,12,12,13,14,11,12,
+ 12,14,14, 8, 9, 9,12,11, 9,10,11,12,13, 9,11,10,
+ 13,12,11,12,12,14,14,11,12,12,14,13,10,11,11,13,
+ 13,11,12,12,13,14,11,12,12,14,14,13,13,14,14,16,
+ 13,14,14,16,15,10,12,11,13,13,12,12,12,14,14,11,
+ 12,12,14,13,14,14,14,15,16,13,14,14,16,14, 8, 9,
+ 9,11,11, 9,10,10,12,12, 9,10,10,12,12,11,11,12,
+ 13,14,11,12,12,14,14, 9, 9,10,11,12,10,10,11,12,
+ 13,10,10,11,12,13,12,12,13,14,15,12,12,13,14,15,
+ 9,10,10,12,12,10,11,11,13,13,10,11,11,13,13,12,
+ 13,13,15,15,12,13,13,15,14,11,11,12,13,14,12,12,
+ 13,13,15,12,12,13,14,15,14,14,15,14,16,14,14,15,
+ 15,16,11,12,12,14,14,12,13,13,15,15,12,13,13,15,
+ 14,14,15,15,16,16,14,15,14,17,15, 8, 9, 9,11,11,
+ 9,10,10,12,12, 9,11,10,13,12,11,12,12,14,14,11,
+ 13,12,15,13, 9,10,10,12,12,10,10,11,12,13,10,12,
+ 11,13,13,12,12,13,13,15,12,13,13,15,14, 9,10,10,
+ 12,12,11,11,12,13,13,10,12,10,13,12,12,13,13,15,
+ 15,12,13,13,15,13,11,12,12,14,14,12,12,13,14,14,
+ 12,13,13,15,14,13,13,14,13,16,14,15,14,16,16,11,
+ 12,12,14,14,13,13,13,15,15,12,13,12,15,14,14,15,
+ 15,16,17,14,15,13,16,13,10,11,11,13,14,11,12,12,
+ 13,15,11,12,12,14,14,13,14,14,15,16,13,14,14,16,
+ 16,11,11,12,12,14,12,12,13,13,15,12,13,13,13,15,
+ 14,14,15,14,17,14,14,15,15,16,11,12,12,14,14,12,
+ 13,13,15,15,12,13,13,15,15,14,15,15,16,17,14,15,
+ 15,16,16,13,14,14,14,16,14,14,15,14,17,14,15,15,
+ 14,17,16,16,17,15,18,16,16,17,16,18,13,14,14,16,
+ 16,14,15,15,17,16,14,15,15,17,16,16,17,17,18,18,
+ 16,17,16,18,17,10,11,11,14,13,11,12,12,14,14,11,
+ 13,12,15,14,14,14,14,16,15,14,15,14,16,15,11,12,
+ 12,14,13,12,13,13,15,14,13,14,13,15,14,14,15,15,
+ 16,16,14,15,15,17,15,11,12,12,14,14,13,13,13,15,
+ 15,12,13,13,15,14,15,15,15,17,17,14,15,15,17,15,
+ 13,14,14,16,15,14,15,15,16,16,15,15,15,17,16,16,
+ 16,16,16,17,16,17,16,18,17,14,14,14,16,16,15,15,
+ 15,16,16,14,15,14,17,16,16,17,17,17,18,16,17,16,
+ 18,16, 7, 8, 8,11,11, 8, 9, 9,11,12, 8, 9, 9,12,
+ 11,10,11,11,13,14,10,11,11,14,13, 8, 9, 9,11,12,
+ 9,10,11,12,13, 9,11,10,13,12,11,12,12,13,14,11,
+ 12,12,14,14, 8, 9, 9,11,11, 9,10,10,12,12, 9,10,
+ 10,13,12,11,12,12,14,14,11,12,11,14,13,10,11,12,
+ 13,13,11,12,12,13,14,12,13,12,14,14,13,13,14,14,
+ 16,13,14,14,16,15,10,11,11,13,13,11,12,12,14,14,
+ 11,12,12,14,13,13,14,14,15,16,13,14,13,16,14, 8,
+ 9, 9,11,11, 9,10,11,12,13, 9,10,10,12,12,11,12,
+ 13,13,14,11,12,12,14,14, 9,10,10,12,12,10,10,11,
+ 12,13,11,12,11,13,13,12,12,13,13,15,12,13,13,15,
+ 15, 9,10,10,12,12,10,11,12,13,14,10,11,10,13,12,
+ 12,13,13,14,15,12,13,12,15,13,12,12,12,14,14,12,
+ 12,13,14,15,13,13,13,15,15,14,14,15,13,16,14,15,
+ 15,16,16,11,12,12,14,14,12,13,13,14,15,12,13,12,
+ 14,14,14,14,15,16,16,13,14,13,16,14, 8, 9, 9,11,
+ 11, 9,10,10,12,12, 9,10,10,12,12,11,12,12,14,14,
+ 11,12,11,14,14, 9,10,10,12,12,10,11,11,13,13,10,
+ 11,11,13,13,12,13,13,14,15,12,13,13,15,14, 9,10,
+ 9,12,11,10,11,10,13,12,10,11,10,13,12,12,13,12,
+ 15,14,12,13,12,15,14,11,12,12,14,14,12,13,13,14,
+ 15,12,13,13,15,15,14,14,15,15,17,14,15,15,16,16,
+ 11,12,11,14,13,12,13,12,15,14,12,13,12,15,13,14,
+ 15,14,16,15,13,15,14,17,14,10,11,11,13,14,11,12,
+ 13,13,15,11,12,12,14,14,14,14,15,15,17,13,14,14,
+ 15,16,11,12,12,14,14,12,12,13,14,15,13,13,13,15,
+ 15,14,15,15,15,17,15,15,15,16,16,11,12,12,13,14,
+ 13,13,14,14,15,12,13,13,14,15,14,15,15,16,17,14,
+ 15,15,16,16,14,14,14,16,16,14,14,15,15,17,15,15,
+ 15,17,16,16,16,17,16,18,16,17,17,18,17,13,14,14,
+ 15,16,14,15,15,16,17,14,15,15,16,16,16,17,17,17,
+ 18,16,16,16,17,16,10,11,11,14,13,11,12,12,14,14,
+ 11,12,12,15,13,13,14,14,16,15,13,14,14,16,15,11,
+ 12,12,14,14,12,13,13,15,15,12,13,13,15,15,14,15,
+ 15,16,17,14,15,15,17,16,11,12,11,14,12,12,13,13,
+ 15,13,12,13,12,15,13,14,15,15,16,15,14,15,14,17,
+ 14,13,14,14,16,16,14,15,15,16,17,14,15,15,16,17,
+ 16,16,17,17,18,16,17,17,18,18,13,14,14,16,13,14,
+ 15,15,17,14,14,15,14,17,14,16,17,16,17,16,16,17,
+ 16,18,15, 8,11,11,13,13,10,12,12,14,14,11,12,12,
+ 14,14,13,13,14,15,16,13,14,14,16,15,10,11,11,14,
+ 14,11,12,12,14,15,11,12,12,15,14,13,14,14,15,16,
+ 13,14,14,16,16,11,12,12,14,14,12,13,13,15,15,12,
+ 13,12,15,14,14,14,15,16,16,14,15,14,16,16,12,13,
+ 13,15,15,12,13,14,15,16,13,14,14,16,16,14,15,15,
+ 16,17,15,15,16,17,17,13,14,14,16,15,14,15,15,16,
+ 16,14,15,14,16,16,16,16,16,17,17,15,16,16,18,16,
+ 10,11,11,13,14,11,12,12,14,15,11,12,12,15,14,13,
+ 14,14,16,16,13,14,14,16,16,11,11,12,14,14,12,12,
+ 13,14,15,12,13,13,15,15,14,14,15,15,17,14,14,15,
+ 16,16,11,12,12,15,14,12,13,13,15,15,12,13,13,15,
+ 15,14,15,15,17,17,14,15,15,17,16,13,12,14,14,16,
+ 13,13,15,14,17,14,13,15,15,17,15,14,16,15,18,16,
+ 15,16,16,18,13,14,14,16,16,14,15,15,17,17,14,15,
+ 15,17,16,16,17,17,18,18,16,17,16,18,17,10,11,11,
+ 14,13,11,12,12,14,14,11,13,12,15,14,13,14,14,15,
+ 16,13,14,14,16,16,11,12,12,14,14,12,13,13,14,15,
+ 12,13,13,15,15,14,14,15,15,16,14,15,15,17,16,11,
+ 12,12,14,14,13,13,13,15,15,12,13,13,15,14,14,15,
+ 15,16,17,14,15,14,17,15,13,14,13,16,15,14,14,14,
+ 15,16,14,15,14,16,16,15,15,16,16,17,16,16,16,18,
+ 17,14,14,14,16,16,15,15,15,17,16,14,15,14,17,16,
+ 16,16,17,17,18,16,17,16,18,16,11,13,13,15,15,12,
+ 13,14,15,16,12,14,14,15,15,14,15,15,16,17,14,15,
+ 15,17,17,12,13,14,14,16,13,14,14,14,16,14,14,14,
+ 15,16,15,15,16,15,18,15,16,16,17,17,13,14,14,16,
+ 16,14,14,15,16,16,14,15,14,16,16,15,16,16,17,18,
+ 15,16,16,18,17,14,14,16,13,17,15,15,16,14,18,15,
+ 15,16,14,18,16,16,18,15,19,17,17,18,16,18,15,16,
+ 15,17,17,15,16,17,18,18,16,16,16,18,17,17,18,18,
+ 19,19,17,18,17,19,18,11,12,12,15,14,13,13,14,15,
+ 16,13,14,13,16,14,15,15,15,16,17,15,16,15,17,16,
+ 12,13,13,15,14,13,13,14,15,15,14,15,14,16,15,15,
+ 15,16,16,17,16,16,16,18,17,12,13,13,15,15,14,14,
+ 15,16,16,13,14,13,16,15,16,16,16,17,18,15,16,15,
+ 17,16,14,15,14,17,15,14,15,15,16,16,15,16,15,17,
+ 16,16,15,16,15,17,17,18,17,18,17,15,15,15,16,17,
+ 16,16,16,17,17,15,16,15,17,16,17,18,18,18,18,16,
+ 17,16,18,15, 8,11,11,13,13,11,12,12,14,14,10,12,
+ 12,14,14,13,14,14,15,16,13,14,13,16,15,11,12,12,
+ 14,14,12,12,13,14,15,12,13,13,15,15,14,14,15,15,
+ 16,14,14,14,16,16,10,11,11,14,14,11,12,12,14,15,
+ 11,12,12,15,14,13,14,14,16,16,13,14,14,16,15,13,
+ 14,14,15,16,14,14,15,16,16,14,15,15,16,16,15,16,
+ 16,16,18,16,16,16,17,17,12,13,13,15,15,13,14,14,
+ 16,16,12,14,13,16,15,15,16,15,17,17,14,16,15,17,
+ 16,10,11,11,13,14,11,12,13,14,15,11,13,12,14,14,
+ 14,14,15,16,16,13,14,14,16,16,11,12,12,14,14,12,
+ 13,13,14,15,13,14,13,15,15,14,15,15,16,17,14,15,
+ 15,17,16,11,12,12,14,14,12,13,13,15,15,12,13,12,
+ 15,14,14,15,15,16,17,14,15,15,16,16,14,14,14,16,
+ 16,14,14,15,16,16,15,15,15,16,16,16,16,17,16,18,
+ 16,17,17,18,18,13,13,14,15,16,14,14,15,16,17,13,
+ 14,14,16,16,16,16,17,17,18,15,16,15,17,16,10,11,
+ 11,14,13,11,12,12,14,14,11,12,12,15,14,13,14,14,
+ 16,16,13,14,14,16,16,11,12,12,14,14,12,13,13,15,
+ 15,12,13,13,15,15,14,15,15,16,17,14,15,15,17,16,
+ 11,12,11,14,14,12,13,13,15,15,12,13,12,15,14,14,
+ 15,14,16,16,14,15,14,17,16,14,14,14,16,16,14,15,
+ 15,16,17,14,15,15,17,17,16,16,17,17,18,16,17,17,
+ 18,18,13,14,12,16,14,14,15,13,17,15,13,15,13,17,
+ 14,16,16,15,18,16,15,17,14,18,15,11,12,12,14,15,
+ 13,13,14,14,16,13,14,13,15,14,15,15,16,16,17,15,
+ 16,15,17,16,12,13,13,15,15,13,13,14,15,16,14,15,
+ 14,16,16,15,15,16,15,18,16,16,16,18,17,12,13,13,
+ 15,15,14,14,15,15,16,13,14,13,15,15,16,16,16,16,
+ 18,15,16,15,17,16,15,15,15,17,16,15,15,16,16,17,
+ 16,16,16,18,17,16,16,17,15,18,17,18,17,19,18,14,
+ 14,15,15,17,15,15,16,16,17,14,15,15,16,16,17,17,
+ 18,17,19,16,17,15,17,15,11,13,12,15,15,12,14,14,
+ 15,15,12,14,13,16,15,15,15,15,17,17,14,15,15,17,
+ 16,12,14,14,16,16,14,14,15,16,16,14,14,14,16,16,
+ 15,16,17,17,18,15,16,16,18,17,12,14,13,16,14,13,
+ 14,14,16,15,13,15,14,16,14,15,16,16,17,17,15,16,
+ 15,18,15,15,15,16,17,17,15,16,16,17,18,16,16,16,
+ 18,18,17,17,18,18,19,17,17,18,19,19,14,15,14,17,
+ 13,15,16,15,18,14,15,16,15,18,14,17,18,17,18,16,
+ 16,18,16,19,15,
+};
+
+static const static_codebook _44p8_p2_0 = {
+ 5, 3125,
+ (char *)_vq_lengthlist__44p8_p2_0,
+ 1, -533725184, 1611661312, 3, 0,
+ (long *)_vq_quantlist__44p8_p2_0,
+ 0
+};
+
+static const long _vq_quantlist__44p8_p3_0[] = {
+ 1,
+ 0,
+ 2,
+};
+
+static const char _vq_lengthlist__44p8_p3_0[] = {
+ 2, 5, 5, 5, 7, 7, 5, 7, 7, 5, 7, 7, 7, 8, 9, 7,
+ 9, 9, 5, 7, 7, 7, 9, 9, 7, 9, 8, 5, 7, 8, 7, 9,
+ 10, 8, 9, 9, 8, 9,10, 9,10,12,10,11,11, 8,10, 9,
+ 10,11,12, 9,11,10, 5, 8, 7, 8,10, 9, 7,10, 9, 8,
+ 9,10, 9,10,11,10,12,11, 8,10, 9,10,11,11, 9,12,
+ 10, 5, 8, 8, 7, 9,10, 8,10, 9, 7, 9,10, 9,10,11,
+ 9,11,11, 8,10, 9,10,11,11,10,12,10, 7, 9,10, 9,
+ 10,12, 9,11,11, 9, 9,12,11,10,13,11,11,13,10,12,
+ 11,11,13,13,11,13,12, 7, 9, 9, 9,11,11, 9,12,11,
+ 9,11,10,10,11,12,11,13,12, 9,11,11,12,13,13,11,
+ 13,11, 5, 8, 8, 8, 9,10, 7,10, 9, 8, 9,10,10,10,
+ 12,10,11,11, 7,10, 9, 9,11,11, 9,11,10, 7, 9, 9,
+ 9,11,12, 9,11,11, 9,11,11,11,11,13,12,13,13, 9,
+ 10,11,11,12,13,10,12,11, 7,10, 9, 9,11,11, 9,12,
+ 10,10,11,12,11,12,13,12,13,13, 9,12, 9,11,13,11,
+ 10,13,10,
+};
+
+static const static_codebook _44p8_p3_0 = {
+ 5, 243,
+ (char *)_vq_lengthlist__44p8_p3_0,
+ 1, -533200896, 1614282752, 2, 0,
+ (long *)_vq_quantlist__44p8_p3_0,
+ 0
+};
+
+static const long _vq_quantlist__44p8_p3_1[] = {
+ 1,
+ 0,
+ 2,
+};
+
+static const char _vq_lengthlist__44p8_p3_1[] = {
+ 6, 7, 7, 7, 7, 8, 7, 8, 7, 7, 7, 8, 7, 8, 8, 8,
+ 8, 8, 7, 8, 7, 7, 8, 8, 7, 8, 8, 7, 8, 8, 8, 8,
+ 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8,
+ 8, 8, 8, 8, 8, 8, 7, 8, 8, 8, 8, 8, 8, 8, 8, 8,
+ 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8,
+ 8, 7, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8,
+ 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 7, 8, 8, 8,
+ 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 9, 8, 8, 9, 8, 8,
+ 8, 8, 9, 9, 8, 9, 9, 7, 8, 8, 8, 8, 8, 8, 8, 8,
+ 8, 8, 8, 8, 8, 8, 8, 9, 8, 8, 8, 8, 8, 9, 9, 8,
+ 9, 8, 7, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8,
+ 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 7, 8, 8,
+ 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 9, 8, 9, 9, 8,
+ 8, 8, 8, 8, 9, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8,
+ 8, 8, 8, 8, 8, 9, 9, 8, 9, 9, 8, 8, 8, 8, 9, 8,
+ 8, 9, 8,
+};
+
+static const static_codebook _44p8_p3_1 = {
+ 5, 243,
+ (char *)_vq_lengthlist__44p8_p3_1,
+ 1, -535822336, 1611661312, 2, 0,
+ (long *)_vq_quantlist__44p8_p3_1,
+ 0
+};
+
+static const long _vq_quantlist__44p8_p4_0[] = {
+ 1,
+ 0,
+ 2,
+};
+
+static const char _vq_lengthlist__44p8_p4_0[] = {
+ 2, 5, 5, 4, 7, 8, 4, 8, 7, 5, 7, 8, 7, 7,10, 8,
+ 9, 9, 5, 7, 7, 8, 9, 9, 7,10, 7, 5, 7, 8, 8, 9,
+ 11, 8,10,10, 8, 9,10,10,10,12,11,12,12, 8,10,10,
+ 10,12,12,10,12,11, 5, 8, 7, 8,10,10, 8,11, 9, 8,
+ 10,10,10,11,12,10,12,12, 8,10, 9,11,12,12,10,12,
+ 10, 5, 8, 8, 7,10,10, 8,11,10, 7, 9,10, 9,10,12,
+ 10,12,12, 8,10,10,10,12,12,10,12,11, 7, 9,10, 9,
+ 11,12,10,12,11, 9, 9,12,10,10,13,12,12,13,10,12,
+ 11,12,13,13,11,13,11, 7,10, 9,10,11,12,10,13,11,
+ 9,11,11,11,11,13,12,14,13,10,11,11,12,14,14,11,
+ 14,11, 5, 8, 8, 8,10,11, 7,10,10, 8,10,10,10,11,
+ 12,10,12,12, 7,10, 9,10,12,12, 9,12,10, 7, 9,10,
+ 10,11,13,10,12,11,10,11,11,11,11,14,12,14,14, 9,
+ 11,11,12,13,14,11,13,11, 7,10, 9,10,11,12, 9,12,
+ 10,10,11,12,11,11,13,12,13,13, 9,12, 9,12,13,12,
+ 10,13,10,
+};
+
+static const static_codebook _44p8_p4_0 = {
+ 5, 243,
+ (char *)_vq_lengthlist__44p8_p4_0,
+ 1, -531365888, 1616117760, 2, 0,
+ (long *)_vq_quantlist__44p8_p4_0,
+ 0
+};
+
+static const long _vq_quantlist__44p8_p4_1[] = {
+ 2,
+ 1,
+ 3,
+ 0,
+ 4,
+};
+
+static const char _vq_lengthlist__44p8_p4_1[] = {
+ 7, 9, 9,10,10, 9,10,10,10,11, 9,10,10,11,10, 9,
+ 10,10,11,11, 9,10,10,11,11, 9,10,10,11,11,10,10,
+ 10,11,11,10,10,10,11,11,10,11,11,11,11,10,11,11,
+ 11,11, 9,10,10,11,11,10,10,10,11,11, 9,10,10,11,
+ 11,10,11,11,11,11,10,11,11,11,11,10,11,11,11,11,
+ 10,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
+ 11,11,11,12,10,11,11,11,11,11,11,11,11,11,10,11,
+ 11,11,11,11,11,11,11,11,11,11,11,11,11, 9,10,10,
+ 11,11,10,10,11,11,11,10,10,11,11,11,10,11,11,11,
+ 12,10,11,11,12,12,10,10,11,11,11,10,11,11,11,12,
+ 11,11,11,12,12,11,11,12,12,12,11,11,12,12,12,10,
+ 11,11,11,11,11,11,11,12,12,10,11,11,12,12,11,12,
+ 11,12,12,11,12,11,12,12,11,11,11,11,12,11,11,12,
+ 12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,
+ 12,11,11,11,12,12,11,12,12,12,12,11,12,11,12,12,
+ 12,12,12,12,12,12,12,12,12,12, 9,10,10,11,11,10,
+ 11,10,11,11,10,11,10,11,11,10,11,11,12,12,10,11,
+ 11,12,11,10,11,11,11,11,10,11,11,11,12,11,11,11,
+ 12,12,11,11,12,12,12,11,11,11,12,12,10,11,10,11,
+ 11,11,11,11,12,12,10,11,11,12,11,11,12,11,12,12,
+ 11,12,11,12,12,11,11,11,12,12,11,11,12,12,12,11,
+ 12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,11,
+ 11,12,11,11,12,12,12,12,11,12,11,12,12,12,12,12,
+ 12,12,12,12,12,12,12,10,11,11,11,11,11,11,11,12,
+ 12,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,
+ 11,11,11,12,12,11,11,12,12,12,11,12,12,12,12,12,
+ 12,12,12,12,12,12,12,12,12,11,11,11,12,12,11,12,
+ 12,12,12,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,13,12,13,12,12,12,12,13,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,10,11,11,11,11,11,11,11,12,12,11,11,
+ 11,12,12,11,12,12,12,12,11,12,12,12,12,11,11,11,
+ 12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,
+ 12,12,12,12,12,12,11,11,11,12,12,11,12,12,12,12,
+ 11,12,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,13,12,12,13,12,13,
+ 12, 9,10,10,11,11,10,10,11,11,11,10,11,10,11,11,
+ 10,11,11,12,12,10,11,11,12,12,10,10,11,11,11,10,
+ 11,11,11,12,10,11,11,12,12,11,11,12,12,12,11,11,
+ 11,12,12,10,11,10,11,11,11,11,11,12,12,10,11,11,
+ 12,11,11,12,11,12,12,11,12,11,12,12,11,11,11,11,
+ 12,11,11,12,12,12,11,12,12,12,12,11,12,12,12,12,
+ 11,12,12,12,12,11,11,11,12,11,11,12,12,12,12,11,
+ 12,11,12,12,12,12,12,12,12,12,12,12,12,12,10,10,
+ 11,11,11,10,11,11,12,12,10,11,11,12,12,11,11,11,
+ 12,12,11,11,12,12,12,10,11,11,11,12,11,11,12,12,
+ 12,11,11,12,12,12,11,11,12,12,12,11,12,12,12,12,
+ 11,11,11,12,12,11,12,12,12,12,11,12,11,12,12,11,
+ 12,12,12,12,11,12,12,12,12,11,11,12,12,12,11,12,
+ 12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,
+ 12,12,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, 9,10,10,11,11,
+ 10,11,11,11,12,10,11,11,12,11,11,12,11,12,12,11,
+ 12,11,12,12,10,11,11,12,11,11,11,11,12,12,11,12,
+ 11,12,12,11,12,12,12,12,11,12,12,12,12,10,11,11,
+ 12,12,11,12,11,12,12,11,12,11,12,12,12,12,12,12,
+ 12,11,12,12,12,12,11,12,11,12,12,11,12,12,12,12,
+ 12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,
+ 12,12,12,12,12,12,12,12,12,11,12,12,12,12,12,12,
+ 12,12,12,12,12,12,12,12,11,11,11,12,12,11,12,12,
+ 12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,
+ 12,11,11,12,12,12,12,12,12,12,12,12,12,12,12,12,
+ 12,12,12,12,13,12,12,12,12,12,11,12,12,12,12,12,
+ 12,12,12,12,12,12,12,12,12,12,12,12,13,13,12,12,
+ 12,13,13,12,12,12,12,12,12,12,12,12,13,12,12,12,
+ 12,13,12,12,13,12,13,12,13,13,13,13,12,12,12,12,
+ 12,12,12,12,13,12,12,12,12,13,12,12,13,13,13,13,
+ 12,13,13,13,13,10,11,11,12,12,11,12,12,12,12,11,
+ 12,12,12,12,12,12,12,12,12,12,12,12,12,12,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,11,12,12,12,12,12,12,12,12,
+ 12,12,12,12,13,12,12,12,12,13,13,12,12,12,13,12,
+ 12,12,12,12,12,12,12,12,12,12,12,12,12,13,13,12,
+ 13,13,12,13,12,13,13,13,13,12,12,12,12,12,12,12,
+ 12,13,12,12,12,12,13,12,12,13,13,13,13,12,13,13,
+ 13,13, 9,10,10,11,11,10,10,11,11,11,10,11,10,11,
+ 11,10,11,11,12,12,10,11,11,12,12,10,11,11,11,11,
+ 10,11,11,12,12,11,11,11,12,12,11,11,12,12,12,11,
+ 11,12,12,12,10,11,10,11,11,10,11,11,12,12,10,11,
+ 11,12,11,11,12,11,12,12,11,11,11,12,12,11,11,11,
+ 11,12,11,11,12,12,12,11,12,12,12,12,12,12,12,12,
+ 12,12,12,12,12,12,11,11,11,12,11,11,12,12,12,12,
+ 11,12,11,12,12,12,12,12,12,12,11,12,12,12,12, 9,
+ 10,10,11,11,10,11,11,11,12,10,11,11,12,11,11,11,
+ 12,12,12,11,11,12,12,12,10,11,11,12,12,11,11,12,
+ 12,12,11,11,12,12,12,12,12,12,12,12,12,12,12,12,
+ 12,10,11,11,12,12,11,11,11,12,12,11,11,11,12,12,
+ 11,12,12,12,12,11,12,12,12,12,11,12,12,12,12,11,
+ 12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,
+ 12,12,12,11,11,12,12,12,12,12,12,12,12,11,12,12,
+ 12,12,12,12,12,12,12,12,12,12,12,12,10,11,10,11,
+ 11,10,11,11,12,12,10,11,11,12,12,11,11,11,12,12,
+ 11,12,11,12,12,11,11,11,12,12,11,11,12,12,12,11,
+ 11,12,12,12,11,12,12,12,12,11,12,12,12,12,10,11,
+ 11,12,11,11,12,11,12,12,11,12,11,12,12,11,12,12,
+ 12,12,11,12,11,12,12,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,
+ 11,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,
+ 12,12,12,12,12,12,12,12,12,11,11,11,12,12,11,11,
+ 12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,
+ 12,12,11,12,12,12,12,12,12,12,12,13,12,12,12,12,
+ 12,12,12,12,13,13,12,12,12,13,13,11,12,12,12,12,
+ 12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,12,
+ 12,12,12,12,12,12,12,12,12,12,12,13,12,13,12,12,
+ 12,13,13,12,13,13,12,13,12,13,13,13,13,12,12,12,
+ 12,12,12,12,12,12,12,12,12,12,12,12,12,13,13,13,
+ 13,12,13,12,13,12,11,11,11,12,12,11,12,12,12,12,
+ 11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,
+ 12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,
+ 12,13,13,12,12,12,13,13,11,12,11,12,12,12,12,12,
+ 12,12,12,12,12,12,12,12,12,12,13,12,12,12,12,13,
+ 12,12,12,12,12,12,12,12,12,13,13,12,12,12,12,13,
+ 12,13,13,13,13,12,13,13,13,13,12,12,12,12,12,12,
+ 12,12,13,12,12,12,12,13,12,12,13,13,13,13,12,13,
+ 13,13,12,10,11,11,12,12,11,11,11,12,12,11,11,11,
+ 12,12,11,12,12,12,12,11,12,12,12,12,11,11,11,12,
+ 12,11,11,12,12,12,11,12,12,12,12,11,12,12,12,12,
+ 12,12,12,12,12,11,11,11,12,12,11,12,12,12,12,11,
+ 12,11,12,12,12,12,12,12,12,12,12,12,12,12,11,12,
+ 12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,
+ 12,13,12,12,12,12,12,11,12,12,12,12,12,12,12,12,
+ 12,12,12,12,12,12,12,12,12,13,12,12,12,12,12,12,
+ 11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,
+ 12,12,12,12,11,12,12,12,12,11,11,12,12,12,11,12,
+ 12,12,12,12,12,12,12,12,12,12,12,12,13,12,12,12,
+ 13,13,11,12,12,12,12,12,12,12,12,12,12,12,12,12,
+ 12,12,12,12,13,13,12,12,12,13,13,12,12,12,12,12,
+ 12,12,12,12,13,12,12,12,12,13,12,12,13,12,13,12,
+ 12,13,13,13,12,12,12,12,12,12,12,12,12,13,12,12,
+ 12,13,12,12,13,13,13,13,12,13,13,13,13,10,11,11,
+ 12,12,11,12,12,12,12,11,12,12,12,12,11,12,12,12,
+ 12,12,12,12,12,12,11,11,12,12,12,11,12,12,12,12,
+ 12,12,12,12,12,12,12,12,12,13,12,12,12,13,13,11,
+ 12,11,12,12,12,12,12,12,12,11,12,12,12,12,12,12,
+ 12,13,13,12,12,12,13,12,12,12,12,12,12,12,12,12,
+ 12,12,12,12,12,13,12,12,12,12,12,13,12,13,12,13,
+ 13,12,12,12,12,12,12,12,12,13,12,12,12,12,13,12,
+ 12,13,12,13,13,12,13,12,13,12,11,11,11,12,12,11,
+ 12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,
+ 12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,
+ 12,12,12,12,13,12,13,12,12,13,13,13,11,12,12,12,
+ 12,12,12,12,12,12,12,12,12,13,12,12,12,12,13,13,
+ 12,12,12,13,12,12,12,12,12,12,12,12,13,12,13,12,
+ 12,12,12,13,12,12,13,12,13,12,13,13,12,13,12,12,
+ 12,12,12,12,13,13,13,12,12,12,12,13,12,12,13,13,
+ 13,13,12,13,13,13,12,11,11,11,12,12,11,12,12,12,
+ 12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,
+ 11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,
+ 12,12,12,13,12,12,13,13,13,11,12,12,12,12,12,12,
+ 12,12,13,12,12,12,13,12,12,13,12,13,13,12,13,12,
+ 13,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,
+ 12,12,12,13,12,13,12,13,13,13,12,12,12,12,12,12,
+ 12,13,12,13,12,12,12,12,13,12,12,13,13,13,12,12,
+ 13,12,13,12,10,11,11,12,12,11,11,11,12,12,11,11,
+ 11,12,12,11,12,12,12,12,11,12,12,12,12,11,11,11,
+ 12,12,11,11,12,12,12,11,12,12,12,12,12,12,12,12,
+ 12,12,12,12,12,12,11,11,11,12,12,11,12,12,12,12,
+ 11,12,11,12,12,12,12,12,12,12,11,12,12,12,12,11,
+ 12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,
+ 12,12,13,12,12,12,12,12,11,12,12,12,12,12,12,12,
+ 12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,
+ 12,10,11,11,12,12,11,11,12,12,12,11,12,12,12,12,
+ 11,12,12,12,12,12,12,12,12,12,11,11,12,12,12,12,
+ 12,12,12,12,12,12,12,12,12,12,12,12,12,13,12,12,
+ 12,13,13,11,11,11,12,12,12,12,12,12,12,11,12,12,
+ 12,12,12,12,12,13,13,12,12,12,13,13,12,12,12,12,
+ 12,12,12,12,12,13,12,12,12,12,13,12,12,13,12,13,
+ 12,12,13,13,13,12,12,12,12,12,12,12,12,12,13,12,
+ 12,12,12,12,12,12,13,13,13,12,12,12,13,12,11,11,
+ 11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,
+ 12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,
+ 12,12,12,12,12,12,12,12,12,13,13,12,12,12,13,13,
+ 11,12,11,12,12,12,12,12,12,12,11,12,12,12,12,12,
+ 12,12,13,13,12,12,12,13,12,12,12,12,12,12,12,12,
+ 12,12,13,12,12,12,13,13,12,13,13,13,13,12,13,13,
+ 13,13,12,12,12,12,12,12,12,12,13,12,12,12,12,13,
+ 12,12,13,12,13,13,12,13,12,13,12,11,11,11,12,12,
+ 11,12,12,12,12,11,12,12,12,12,12,12,12,12,12,12,
+ 12,12,12,12,11,12,12,12,12,12,12,12,12,13,12,12,
+ 12,13,13,12,12,13,12,13,12,12,13,13,13,11,12,12,
+ 12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,
+ 13,12,12,12,13,12,12,12,12,12,12,12,12,12,12,13,
+ 12,12,12,13,13,12,12,13,12,13,12,13,13,13,13,12,
+ 12,12,12,12,12,12,13,12,13,12,12,12,12,12,12,13,
+ 13,12,12,12,13,12,12,12,11,11,11,12,12,11,12,12,
+ 12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,
+ 12,11,12,12,12,12,12,12,12,12,13,12,12,12,12,13,
+ 12,12,13,13,13,12,12,12,13,13,11,12,12,12,12,12,
+ 12,12,12,12,12,12,12,12,12,12,13,12,13,13,12,13,
+ 12,13,12,12,12,12,12,12,12,12,12,12,13,12,13,12,
+ 13,13,12,13,13,12,13,12,13,13,13,13,12,12,12,12,
+ 12,12,12,12,13,12,12,13,12,13,12,12,13,12,13,12,
+ 12,13,12,13,12,
+};
+
+static const static_codebook _44p8_p4_1 = {
+ 5, 3125,
+ (char *)_vq_lengthlist__44p8_p4_1,
+ 1, -533725184, 1611661312, 3, 0,
+ (long *)_vq_quantlist__44p8_p4_1,
+ 0
+};
+
+static const long _vq_quantlist__44p8_p5_0[] = {
+ 2,
+ 1,
+ 3,
+ 0,
+ 4,
+};
+
+static const char _vq_lengthlist__44p8_p5_0[] = {
+ 2, 6, 6, 9, 9, 5, 7, 8,10,11, 5, 8, 7,11,10, 8,
+ 10,11,12,13, 8,11,10,13,12, 6, 7, 8,10,11, 7, 8,
+ 10,10,12, 8, 9, 9,12,12,10,10,12,12,14,10,12,12,
+ 14,13, 6, 8, 7,11,10, 8, 9, 9,12,12, 7,10, 8,12,
+ 11,10,12,12,13,14,10,12,10,14,12, 9,10,11,11,13,
+ 10,10,11,11,13,11,12,12,13,14,12,12,13,11,15,13,
+ 14,14,15,14, 9,11,10,13,11,11,12,12,13,13,10,11,
+ 10,13,11,13,14,14,15,15,12,13,12,15,11, 6, 8, 9,
+ 11,12, 8, 9,11,12,13, 8,10,10,13,13,11,12,13,14,
+ 15,11,12,13,14,14, 9, 9,10,12,13,10,10,12,12,14,
+ 10,11,11,13,14,12,12,14,14,15,13,13,14,15,15, 9,
+ 10,10,13,13,10,11,11,13,14,10,11,10,14,13,13,13,
+ 14,15,15,12,14,13,15,14,12,12,13,13,14,12,13,14,
+ 13,15,13,14,14,15,15,14,14,15,14,16,15,15,15,16,
+ 16,12,13,13,14,14,13,14,14,15,15,12,14,13,15,14,
+ 14,15,15,16,16,14,15,14,16,14, 6, 9, 8,12,11, 8,
+ 10,10,13,13, 8,11, 9,13,12,11,12,12,14,14,11,13,
+ 12,15,14, 9,10,10,13,13,10,10,11,13,14,10,12,11,
+ 14,13,12,13,14,14,15,13,13,13,15,14, 9,10, 9,13,
+ 12,10,11,11,14,13,10,12,10,14,12,13,14,13,15,15,
+ 12,14,12,15,14,12,13,13,14,14,13,13,13,14,15,13,
+ 14,14,15,15,14,14,15,14,16,14,15,15,16,16,12,13,
+ 12,14,13,13,14,14,15,15,12,14,13,15,13,15,15,15,
+ 16,16,14,15,14,16,14,11,12,12,13,14,12,13,14,14,
+ 16,12,13,13,15,15,14,14,16,15,17,14,15,15,16,16,
+ 12,13,14,14,15,13,13,15,15,16,14,14,14,15,16,15,
+ 15,16,16,17,15,15,16,16,17,13,13,13,15,15,14,14,
+ 15,15,16,13,14,14,15,16,15,15,16,16,17,15,16,15,
+ 17,16,14,15,15,16,16,15,15,16,16,17,15,16,16,17,
+ 17,16,16,17,16,18,16,17,17,17,17,15,15,15,16,16,
+ 15,16,16,17,17,15,16,16,17,16,16,17,17,18,18,16,
+ 17,16,17,16,11,12,12,15,13,13,13,13,15,15,12,14,
+ 13,16,14,14,15,15,16,16,14,15,14,17,15,13,13,13,
+ 15,14,13,14,14,16,15,14,14,14,16,15,15,15,16,16,
+ 17,15,16,15,17,16,12,14,13,15,14,14,14,14,16,15,
+ 13,14,13,16,15,15,16,16,17,16,15,16,15,17,16,15,
+ 15,15,16,16,15,15,16,16,17,15,16,16,17,17,16,16,
+ 17,17,17,17,17,17,18,17,14,15,15,16,16,15,16,16,
+ 17,16,15,16,15,17,16,17,17,17,18,17,16,17,16,18,
+ 16, 6, 9, 9,12,12, 8,10,10,12,13, 8,10,10,13,12,
+ 10,12,12,14,15,11,13,12,15,14, 8, 9,10,12,13, 9,
+ 10,11,13,14,10,11,11,14,13,12,12,13,14,15,12,13,
+ 13,15,15, 8,10,10,13,13,10,11,11,13,14,10,12,10,
+ 14,13,12,13,13,15,15,12,14,13,15,14,11,12,12,13,
+ 14,12,12,13,13,15,12,13,13,15,15,14,13,15,14,16,
+ 14,15,15,16,16,12,13,13,14,14,13,13,14,15,14,12,
+ 14,13,15,14,14,15,15,16,15,14,15,14,16,14, 7, 9,
+ 10,12,12, 9,10,11,13,14, 9,11,10,13,13,11,12,13,
+ 14,15,12,13,13,15,14, 9,10,11,12,13,10,10,12,13,
+ 14,11,11,12,14,14,12,12,14,14,15,13,13,14,15,15,
+ 9,11,11,13,13,11,12,12,14,14,10,12,10,14,13,13,
+ 14,14,15,15,13,14,13,16,14,12,12,13,14,15,13,13,
+ 14,14,16,13,14,14,15,15,14,14,15,14,17,14,15,15,
+ 16,16,12,13,13,15,14,13,14,14,15,15,13,14,13,16,
+ 14,15,15,15,16,16,14,15,14,16,14, 7,10, 9,13,12,
+ 10,11,12,12,14,10,12,11,14,12,12,13,13,14,15,12,
+ 14,13,15,14, 9,11,10,13,13,10,11,12,13,14,12,13,
+ 12,15,13,13,13,14,13,15,13,14,14,16,15,10,11,11,
+ 13,13,12,12,13,14,14,11,12,11,14,13,14,14,14,15,
+ 16,13,14,13,16,13,12,13,13,14,14,12,13,13,14,15,
+ 14,14,14,15,15,14,13,15,13,16,15,15,15,17,16,13,
+ 13,13,14,14,14,14,14,15,15,12,13,13,15,14,15,16,
+ 16,16,16,14,15,14,16,13,11,12,13,14,15,12,13,14,
+ 15,16,13,14,14,15,15,14,14,15,15,17,14,15,15,16,
+ 16,13,13,14,14,15,13,13,15,14,16,14,14,15,15,16,
+ 15,14,16,15,17,15,16,16,16,17,13,14,14,15,15,14,
+ 14,15,16,16,13,15,14,16,16,15,16,16,17,17,15,16,
+ 15,17,16,14,15,15,15,17,15,15,16,15,17,15,16,16,
+ 16,17,16,16,17,16,18,17,17,17,17,18,15,15,15,17,
+ 16,15,16,16,17,17,15,16,16,17,16,16,17,17,18,18,
+ 16,17,16,18,17,11,13,12,15,14,13,13,14,15,15,13,
+ 14,13,16,14,15,15,15,16,16,15,16,15,17,16,13,14,
+ 13,15,14,13,13,14,15,15,14,15,14,16,15,15,15,16,
+ 16,16,15,16,15,18,16,13,14,14,15,15,14,15,15,15,
+ 16,13,15,13,16,15,15,16,16,17,17,15,16,15,17,16,
+ 15,15,15,16,16,15,15,15,16,17,16,16,16,17,16,16,
+ 16,17,16,17,17,17,17,18,17,15,15,15,16,16,16,16,
+ 16,17,17,15,16,15,17,16,17,17,17,18,18,16,17,16,
+ 17,15, 6, 9, 9,12,12, 8,10,10,12,13, 8,10,10,13,
+ 12,11,12,13,14,15,10,12,12,14,14, 9,10,10,13,13,
+ 10,10,12,13,14,10,11,11,14,13,12,13,14,14,15,12,
+ 13,13,15,15, 8,10, 9,13,12,10,11,11,13,14, 9,11,
+ 10,14,13,12,13,13,15,15,12,13,12,15,14,12,13,13,
+ 14,14,12,13,13,14,15,13,14,14,14,15,14,14,15,14,
+ 16,14,15,15,16,16,11,12,12,14,13,13,13,13,15,15,
+ 12,13,12,15,13,14,15,15,16,16,14,15,14,16,14, 7,
+ 9,10,12,13,10,10,12,12,14,10,12,11,14,13,12,13,
+ 14,14,15,12,13,13,15,14,10,11,11,13,13,11,11,12,
+ 13,14,12,13,12,14,14,13,13,14,13,16,14,14,14,15,
+ 15, 9,10,11,13,14,12,12,13,13,15,10,12,10,14,13,
+ 13,14,14,15,16,13,14,13,15,13,13,14,13,14,15,12,
+ 13,13,14,15,14,14,14,15,15,14,13,15,13,16,15,16,
+ 16,16,16,12,13,13,14,14,14,14,14,15,15,12,13,13,
+ 15,14,15,15,16,16,16,14,15,13,16,13, 7,10, 9,12,
+ 12, 9,10,11,13,13, 9,11,10,14,13,12,13,13,14,15,
+ 11,13,12,15,14, 9,11,11,13,13,10,10,12,13,14,11,
+ 12,12,14,14,13,13,14,14,16,13,14,14,16,15, 9,11,
+ 10,13,12,11,12,11,14,14,10,12,10,14,13,13,14,13,
+ 15,15,12,14,12,16,14,12,13,13,14,15,13,13,14,14,
+ 16,13,14,14,15,15,14,14,15,14,16,15,15,15,16,16,
+ 12,13,12,15,14,13,14,14,15,15,12,14,13,16,14,14,
+ 15,15,16,16,14,15,14,17,14,11,12,13,14,15,13,13,
+ 14,14,16,13,14,13,15,15,15,15,16,16,17,15,15,15,
+ 16,16,13,14,13,15,15,13,13,15,15,16,14,15,15,16,
+ 16,15,15,16,15,17,16,16,16,17,17,13,13,14,14,15,
+ 14,14,15,15,16,13,14,13,15,15,15,16,16,16,17,15,
+ 16,15,16,16,15,15,15,16,16,15,15,16,16,17,16,16,
+ 16,17,17,16,16,17,16,18,17,17,17,18,18,15,15,15,
+ 16,16,16,16,16,17,17,15,15,15,16,16,17,17,17,17,
+ 18,16,16,16,17,15,11,13,12,15,14,13,13,14,15,15,
+ 12,14,13,16,14,14,15,15,16,16,14,15,14,16,15,13,
+ 14,14,15,15,13,14,14,16,16,14,15,14,16,16,15,15,
+ 16,17,17,15,16,16,17,17,13,14,13,15,14,14,14,14,
+ 16,15,13,15,13,16,14,15,16,15,17,16,15,16,14,17,
+ 15,14,16,15,16,17,15,16,16,16,17,15,16,16,17,17,
+ 16,16,17,17,18,16,17,17,18,17,14,15,15,17,15,15,
+ 16,16,17,16,15,16,15,17,15,16,17,17,18,17,16,17,
+ 16,18,15,10,12,12,14,14,12,13,13,15,15,12,13,13,
+ 15,15,13,14,14,15,16,14,15,14,16,16,12,13,13,15,
+ 15,12,13,14,15,15,13,14,14,15,15,14,14,15,16,17,
+ 14,15,15,17,16,12,13,13,15,15,13,14,14,15,16,13,
+ 14,14,16,15,14,15,15,16,17,14,15,15,17,16,13,14,
+ 14,15,16,14,14,15,15,16,14,15,15,16,16,15,15,16,
+ 16,17,15,16,16,17,17,14,15,15,16,16,15,15,15,16,
+ 16,15,15,15,16,16,16,17,16,17,17,16,16,16,18,16,
+ 11,12,12,14,14,12,13,14,15,15,12,13,13,15,15,13,
+ 14,15,16,16,14,15,15,16,16,12,13,13,15,15,13,13,
+ 14,15,16,13,14,14,15,16,14,14,15,16,17,15,15,15,
+ 16,17,12,13,13,15,15,13,14,14,15,16,13,14,14,16,
+ 15,15,15,15,16,17,15,16,15,17,16,14,14,15,15,16,
+ 14,14,15,15,17,15,15,16,16,17,15,15,16,15,18,16,
+ 16,16,17,17,14,15,15,16,16,15,16,16,17,17,15,15,
+ 15,17,16,16,17,16,17,17,16,16,16,18,16,11,12,12,
+ 14,14,13,13,14,15,15,13,14,13,15,15,14,15,15,16,
+ 16,14,15,15,16,16,12,13,13,15,15,13,13,14,15,15,
+ 14,14,14,16,15,15,15,15,15,16,15,16,15,17,16,12,
+ 13,13,15,15,14,14,15,15,16,13,14,13,16,15,15,15,
+ 16,16,17,15,16,15,17,15,14,15,14,16,16,14,15,15,
+ 16,16,15,16,15,17,16,15,15,16,15,17,16,17,16,17,
+ 17,14,15,15,16,16,15,16,16,16,17,14,15,15,16,16,
+ 16,17,17,17,18,16,16,16,17,16,12,13,13,15,15,13,
+ 13,14,15,16,13,14,14,16,15,14,15,15,16,17,14,15,
+ 15,17,16,13,14,14,15,16,14,14,15,15,17,14,15,15,
+ 16,16,15,14,16,15,17,15,16,16,17,17,13,14,14,16,
+ 16,14,15,15,16,16,14,15,14,16,16,15,16,16,17,17,
+ 15,16,15,17,16,15,15,16,15,17,15,15,16,15,17,15,
+ 16,16,16,17,16,15,17,15,18,17,17,17,17,17,15,15,
+ 15,17,17,16,16,16,17,17,15,16,15,17,17,16,17,17,
+ 18,18,16,17,15,18,15,11,12,12,15,15,13,13,15,14,
+ 16,13,14,13,16,14,15,15,16,16,17,15,16,15,17,15,
+ 12,14,13,16,14,13,13,14,14,16,14,15,14,16,15,15,
+ 15,16,15,17,16,16,16,17,16,12,13,14,15,16,15,15,
+ 15,15,16,13,15,13,16,14,16,16,16,17,17,15,16,15,
+ 17,15,15,16,15,16,15,14,14,15,16,16,16,16,16,17,
+ 16,15,15,16,15,17,17,17,17,18,17,15,15,15,16,16,
+ 16,16,16,16,17,14,15,15,17,16,17,17,17,17,18,15,
+ 16,15,18,14,10,12,12,14,14,12,13,13,15,15,12,13,
+ 13,15,15,14,14,15,15,16,13,15,14,16,16,12,13,13,
+ 15,15,13,14,14,15,16,13,14,14,15,15,14,15,15,16,
+ 17,14,15,15,17,16,12,13,13,15,15,13,14,14,15,15,
+ 12,14,13,15,15,14,15,15,16,17,14,15,14,17,15,14,
+ 15,15,16,16,14,15,15,16,17,15,15,15,17,16,16,16,
+ 16,16,17,16,16,16,17,17,13,14,14,16,15,14,15,15,
+ 16,16,14,15,14,16,16,15,16,16,17,17,15,16,15,17,
+ 16,11,12,12,14,15,13,13,14,14,15,13,14,13,15,15,
+ 14,15,15,16,16,14,15,15,16,16,12,14,13,15,15,13,
+ 13,14,15,16,14,15,14,16,15,15,15,16,15,17,15,16,
+ 16,17,16,12,13,13,15,15,14,14,15,15,16,13,14,13,
+ 16,15,15,15,16,16,17,15,15,15,16,16,14,15,15,16,
+ 16,14,15,15,16,16,15,16,16,17,17,16,16,16,16,17,
+ 16,17,17,18,17,14,14,15,15,16,15,15,16,16,17,14,
+ 15,15,16,16,16,16,16,17,17,15,16,15,17,15,11,12,
+ 12,14,14,12,13,14,15,15,12,13,13,15,15,14,15,15,
+ 16,16,13,15,14,16,16,12,13,13,15,15,13,14,14,15,
+ 16,13,14,14,16,16,15,15,15,16,17,15,15,15,17,16,
+ 12,13,13,15,15,13,14,14,16,15,13,14,13,16,15,15,
+ 16,15,17,17,14,15,14,17,16,14,15,15,16,16,15,15,
+ 16,16,17,15,16,16,17,17,16,16,16,16,18,16,17,16,
+ 18,17,14,15,14,16,15,15,15,15,17,16,14,15,14,17,
+ 15,16,17,16,17,17,15,16,15,17,15,11,12,12,15,15,
+ 13,13,15,14,16,13,15,13,16,14,15,15,16,15,17,15,
+ 16,15,17,16,12,14,13,15,15,13,13,15,15,16,15,15,
+ 15,16,15,15,15,16,15,17,16,16,16,17,16,12,13,14,
+ 15,16,14,14,15,15,16,13,14,13,16,14,16,16,16,16,
+ 17,15,16,15,17,15,15,16,15,16,16,14,15,15,16,16,
+ 16,16,16,17,16,15,15,16,15,17,17,17,17,18,17,15,
+ 15,15,15,16,16,16,16,16,17,14,15,14,16,15,17,17,
+ 17,17,18,15,16,15,17,15,12,13,13,15,15,13,14,14,
+ 15,16,13,14,14,16,15,14,15,15,16,17,14,15,15,17,
+ 16,13,14,14,16,15,13,14,15,16,16,14,15,15,16,16,
+ 15,15,16,16,17,15,16,16,17,17,13,14,13,16,15,14,
+ 15,15,16,16,13,15,14,16,15,15,16,16,17,17,15,16,
+ 14,17,15,15,15,16,17,17,15,15,16,16,17,16,16,16,
+ 17,17,16,15,17,16,18,17,17,17,18,18,15,15,15,17,
+ 14,16,16,16,17,16,15,16,15,17,15,16,17,17,18,17,
+ 16,17,15,18,15,
+};
+
+static const static_codebook _44p8_p5_0 = {
+ 5, 3125,
+ (char *)_vq_lengthlist__44p8_p5_0,
+ 1, -528744448, 1616642048, 3, 0,
+ (long *)_vq_quantlist__44p8_p5_0,
+ 0
+};
+
+static const long _vq_quantlist__44p8_p5_1[] = {
+ 3,
+ 2,
+ 4,
+ 1,
+ 5,
+ 0,
+ 6,
+};
+
+static const char _vq_lengthlist__44p8_p5_1[] = {
+ 2, 3, 3, 3, 3, 3, 3,
+};
+
+static const static_codebook _44p8_p5_1 = {
+ 1, 7,
+ (char *)_vq_lengthlist__44p8_p5_1,
+ 1, -533200896, 1611661312, 3, 0,
+ (long *)_vq_quantlist__44p8_p5_1,
+ 0
+};
+
+static const long _vq_quantlist__44p8_p6_0[] = {
+ 1,
+ 0,
+ 2,
+};
+
+static const char _vq_lengthlist__44p8_p6_0[] = {
+ 2, 6, 6, 5, 7, 7, 5, 7, 7, 5, 7, 7, 7, 7, 9, 7,
+ 9, 9, 6, 7, 7, 8, 9, 9, 7, 9, 7, 6, 8, 8, 8, 9,
+ 10, 8, 9, 9, 8, 9,10, 9, 9,10,10,10,10, 8, 9, 9,
+ 10,10,11, 9,10,10, 6, 8, 8, 8, 9, 9, 8,10, 9, 8,
+ 9, 9, 9,10,10,10,11,10, 8,10, 9,10,11,10, 9,11,
+ 9, 6, 8, 8, 7, 9, 9, 7, 9, 9, 7, 9, 9, 8, 9,10,
+ 9,10,10, 8, 9, 9, 9,10,10, 9,10, 9, 7, 9, 9, 9,
+ 9,10, 9,10,10, 9, 9,10,10, 9,11,10,11,11, 9,10,
+ 10,10,11,11,10,11,10, 6, 9, 8, 9, 9,10, 9,10, 9,
+ 8,10,10, 9, 9,10,10,11,11, 9,10,10,10,11,11, 9,
+ 11, 9, 6, 8, 8, 7, 9, 9, 7, 9, 9, 8, 9, 9, 9, 9,
+ 10, 9,10,10, 7, 9, 9, 9,10,10, 8,10, 9, 6, 8, 9,
+ 9, 9,10, 9,10, 9, 9,10,10, 9, 9,11,10,11,11, 8,
+ 9,10,10,11,11, 9,10, 9, 7, 9, 9, 9,10,10, 9,10,
+ 9, 9,10,10,10,10,11,10,11,11, 9,10, 9,10,11,11,
+ 10,11, 9,
+};
+
+static const static_codebook _44p8_p6_0 = {
+ 5, 243,
+ (char *)_vq_lengthlist__44p8_p6_0,
+ 1, -527106048, 1620377600, 2, 0,
+ (long *)_vq_quantlist__44p8_p6_0,
+ 0
+};
+
+static const long _vq_quantlist__44p8_p6_1[] = {
+ 1,
+ 0,
+ 2,
+};
+
+static const char _vq_lengthlist__44p8_p6_1[] = {
+ 4, 7, 7, 7, 7, 8, 7, 8, 7, 7, 7, 8, 7, 8, 8, 8,
+ 8, 8, 7, 8, 7, 8, 8, 8, 7, 8, 8, 7, 8, 8, 8, 8,
+ 8, 8, 8, 8, 8, 8, 8, 8, 8, 9, 8, 8, 9, 8, 8, 8,
+ 8, 9, 8, 8, 8, 8, 7, 8, 8, 8, 8, 8, 8, 8, 8, 8,
+ 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 9, 8, 8, 9,
+ 8, 7, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 9,
+ 8, 8, 9, 8, 8, 8, 8, 9, 9, 8, 9, 8, 8, 8, 8, 8,
+ 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 9, 8, 9, 9, 8, 8,
+ 8, 8, 9, 9, 8, 9, 9, 7, 8, 8, 8, 8, 8, 8, 8, 8,
+ 8, 8, 8, 8, 8, 9, 8, 9, 8, 8, 8, 8, 8, 9, 9, 8,
+ 9, 8, 7, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8,
+ 9, 8, 9, 9, 8, 8, 8, 8, 9, 8, 8, 9, 8, 7, 8, 8,
+ 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 9, 8, 9, 9, 8,
+ 8, 8, 8, 9, 9, 8, 9, 8, 8, 8, 8, 8, 8, 8, 8, 8,
+ 8, 8, 8, 8, 8, 9, 9, 8, 9, 9, 8, 8, 8, 8, 9, 9,
+ 8, 9, 8,
+};
+
+static const static_codebook _44p8_p6_1 = {
+ 5, 243,
+ (char *)_vq_lengthlist__44p8_p6_1,
+ 1, -530841600, 1616642048, 2, 0,
+ (long *)_vq_quantlist__44p8_p6_1,
+ 0
+};
+
+static const long _vq_quantlist__44p8_p7_0[] = {
+ 1,
+ 0,
+ 2,
+};
+
+static const char _vq_lengthlist__44p8_p7_0[] = {
+ 1, 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, 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,
+ 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, 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, 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, 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, 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, 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, 9, 9, 9, 9,
+ 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9,
+ 9, 9, 9,
+};
+
+static const static_codebook _44p8_p7_0 = {
+ 5, 243,
+ (char *)_vq_lengthlist__44p8_p7_0,
+ 1, -512202240, 1635281408, 2, 0,
+ (long *)_vq_quantlist__44p8_p7_0,
+ 0
+};
+
+static const long _vq_quantlist__44p8_p7_1[] = {
+ 2,
+ 1,
+ 3,
+ 0,
+ 4,
+};
+
+static const char _vq_lengthlist__44p8_p7_1[] = {
+ 1, 7, 7,12,12, 5,11,12,12,12, 5,12,11,12,12,12,
+ 12,12,12,12,12,13,13,13,13, 7,11,11,13,13,13,12,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13, 7,13,10,13,13,13,13,13,13,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, 7,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,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, 8,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,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,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,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13, 8,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,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,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,10,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13, 8,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,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,11,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,11,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,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 const static_codebook _44p8_p7_1 = {
+ 5, 3125,
+ (char *)_vq_lengthlist__44p8_p7_1,
+ 1, -514619392, 1630767104, 3, 0,
+ (long *)_vq_quantlist__44p8_p7_1,
+ 0
+};
+
+static const long _vq_quantlist__44p8_p7_2[] = {
+ 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 const char _vq_lengthlist__44p8_p7_2[] = {
+ 1, 3, 2, 4, 5, 7, 7, 8, 8, 9, 9,10,10,11,11,12,
+ 12,13,13,14,14,15,15,15,15,
+};
+
+static const static_codebook _44p8_p7_2 = {
+ 1, 25,
+ (char *)_vq_lengthlist__44p8_p7_2,
+ 1, -518864896, 1620639744, 5, 0,
+ (long *)_vq_quantlist__44p8_p7_2,
+ 0
+};
+
+static const long _vq_quantlist__44p8_p7_3[] = {
+ 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 const char _vq_lengthlist__44p8_p7_3[] = {
+ 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 5, 5, 5,
+ 5, 5, 5, 5, 5, 5, 5, 5, 5,
+};
+
+static const static_codebook _44p8_p7_3 = {
+ 1, 25,
+ (char *)_vq_lengthlist__44p8_p7_3,
+ 1, -529006592, 1611661312, 5, 0,
+ (long *)_vq_quantlist__44p8_p7_3,
+ 0
+};
+
+static const char _huff_lengthlist__44p8_short[] = {
+ 3, 9,15,17,20,21,22,23, 5, 5, 7, 9,11,13,17,20,
+ 9, 5, 5, 6, 8,10,15,18,11, 7, 5, 4, 6, 9,13,17,
+ 14, 9, 7, 5, 6, 7,10,14,17,10, 8, 6, 6, 4, 5, 8,
+ 20,14,13,10, 8, 4, 3, 4,23,17,16,14,12, 6, 4, 4,
+};
+
+static const static_codebook _huff_book__44p8_short = {
+ 2, 64,
+ (char *)_huff_lengthlist__44p8_short,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
+static const long _vq_quantlist__44p9_l0_0[] = {
+ 6,
+ 5,
+ 7,
+ 4,
+ 8,
+ 3,
+ 9,
+ 2,
+ 10,
+ 1,
+ 11,
+ 0,
+ 12,
+};
+
+static const char _vq_lengthlist__44p9_l0_0[] = {
+ 2, 5, 5, 7, 6, 8, 8, 9, 9,10,10,11,11, 4, 5, 5,
+ 6, 7, 8, 8, 9, 9,10,10,11,10, 4, 5, 5, 7, 6, 8,
+ 8, 9, 9,10,10,10,10, 6, 6, 7, 6, 7, 8, 8, 9, 9,
+ 10, 9,11, 9, 6, 6, 6, 7, 6, 8, 8, 9, 9, 9,10, 9,
+ 11, 7, 7, 8, 8, 8, 8, 9, 9, 9,10, 9,11, 9, 7, 8,
+ 8, 8, 8, 9, 8, 9, 9, 9,10, 9,11, 8, 9, 9, 9, 9,
+ 9, 9,10,10,11,10,12,10, 8, 9, 9, 9, 9, 9, 9,10,
+ 9,10,11,11,12, 9,10,10,10,10,10,10,10,11,11,11,
+ 11,12, 9,10,10,10,10,11,10,11,10,11,11,12,11,11,
+ 11,11,11,11,11,11,11,12,11,12,11,12,11,11,11,11,
+ 11,11,11,12,11,12,11,12,11,
+};
+
+static const static_codebook _44p9_l0_0 = {
+ 2, 169,
+ (char *)_vq_lengthlist__44p9_l0_0,
+ 1, -526516224, 1616117760, 4, 0,
+ (long *)_vq_quantlist__44p9_l0_0,
+ 0
+};
+
+static const long _vq_quantlist__44p9_l0_1[] = {
+ 2,
+ 1,
+ 3,
+ 0,
+ 4,
+};
+
+static const char _vq_lengthlist__44p9_l0_1[] = {
+ 4, 4, 4, 5, 5, 4, 4, 5, 5, 5, 4, 5, 4, 5, 5, 5,
+ 5, 5, 5, 5, 5, 5, 5, 5, 5,
+};
+
+static const static_codebook _44p9_l0_1 = {
+ 2, 25,
+ (char *)_vq_lengthlist__44p9_l0_1,
+ 1, -533725184, 1611661312, 3, 0,
+ (long *)_vq_quantlist__44p9_l0_1,
+ 0
+};
+
+static const long _vq_quantlist__44p9_l1_0[] = {
+ 2,
+ 1,
+ 3,
+ 0,
+ 4,
+};
+
+static const char _vq_lengthlist__44p9_l1_0[] = {
+ 1, 2, 3, 5, 9, 9, 4, 9, 9, 9, 9, 9, 9, 9, 9, 9,
+ 9,10,10,10,10,10,10,10,10,
+};
+
+static const static_codebook _44p9_l1_0 = {
+ 2, 25,
+ (char *)_vq_lengthlist__44p9_l1_0,
+ 1, -514619392, 1630767104, 3, 0,
+ (long *)_vq_quantlist__44p9_l1_0,
+ 0
+};
+
+static const char _huff_lengthlist__44p9_lfe[] = {
+ 1, 1,
+};
+
+static const static_codebook _huff_book__44p9_lfe = {
+ 1, 2,
+ (char *)_huff_lengthlist__44p9_lfe,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
+static const char _huff_lengthlist__44p9_long[] = {
+ 3, 3, 3, 3, 3, 3, 3, 3,
+};
+
+static const static_codebook _huff_book__44p9_long = {
+ 1, 8,
+ (char *)_huff_lengthlist__44p9_long,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
+static const long _vq_quantlist__44p9_p1_0[] = {
+ 1,
+ 0,
+ 2,
+};
+
+static const char _vq_lengthlist__44p9_p1_0[] = {
+ 1, 5, 5, 4, 8, 8, 4, 8, 8, 5, 7, 8, 8, 9,10, 8,
+ 10,10, 5, 8, 7, 8,10,10, 8,10, 9, 7, 9, 9, 9,11,
+ 11, 9,11,11, 9,11,11,11,12,13,11,13,13, 9,11,11,
+ 11,13,13,11,13,13, 7, 9, 9, 9,11,11, 9,11,11, 9,
+ 11,11,11,13,13,11,13,13, 9,11,11,11,13,13,11,13,
+ 12, 5, 9, 9, 9,11,11, 9,11,11, 9,11,11,11,12,13,
+ 11,13,13, 9,11,11,11,13,13,11,13,13, 9,11,12,11,
+ 13,13,12,13,13,11,12,13,13,14,15,13,14,14,12,13,
+ 13,13,15,15,13,15,14, 8,10,10,11,13,13,12,14,13,
+ 11,12,12,13,14,15,13,15,15,11,12,12,13,15,15,13,
+ 15,14, 5, 9, 9, 9,11,11, 9,11,11, 9,11,11,11,13,
+ 13,11,13,13, 9,11,10,11,13,13,11,13,12, 8,10,10,
+ 11,13,13,12,13,13,11,12,12,13,14,15,14,15,15,10,
+ 12,12,13,14,15,13,15,14, 9,12,11,12,13,13,11,13,
+ 13,12,13,13,13,15,15,13,14,15,11,13,12,13,15,14,
+ 13,15,14,
+};
+
+static const static_codebook _44p9_p1_0 = {
+ 5, 243,
+ (char *)_vq_lengthlist__44p9_p1_0,
+ 1, -535822336, 1611661312, 2, 0,
+ (long *)_vq_quantlist__44p9_p1_0,
+ 0
+};
+
+static const long _vq_quantlist__44p9_p2_0[] = {
+ 2,
+ 1,
+ 3,
+ 0,
+ 4,
+};
+
+static const char _vq_lengthlist__44p9_p2_0[] = {
+ 4, 6, 6, 8, 8, 5, 7, 7, 9, 9, 5, 7, 7, 9, 9, 6,
+ 8, 8,11,11, 6, 8, 8,11,11, 6, 7, 7, 9, 9, 7, 8,
+ 9,10,11, 7, 9, 9,11,10, 8, 9,10,12,12, 8,10,10,
+ 12,12, 6, 7, 7, 9, 9, 7, 9, 9,10,10, 7, 9, 8,11,
+ 10, 8,10,10,12,12, 8,10, 9,12,12, 8, 9, 9,11,11,
+ 9,10,10,12,12, 9,11,11,12,13,11,12,12,13,14,11,
+ 12,12,14,14, 8, 9, 9,11,11, 9,11,10,13,12, 9,10,
+ 10,13,12,11,12,12,14,14,11,12,12,14,13, 7, 8, 9,
+ 10,10, 8,10,10,11,11, 8,10,10,11,11,10,11,11,13,
+ 13,10,11,11,13,13, 8, 9,10,10,11,10,11,11,12,13,
+ 10,11,11,12,12,11,11,12,13,14,11,12,12,14,14, 8,
+ 10,10,11,11,10,11,11,12,13,10,11,11,12,12,11,12,
+ 12,14,14,11,12,12,14,14,10,11,11,12,13,11,12,12,
+ 13,14,12,13,13,14,14,13,13,14,14,16,13,14,14,15,
+ 16,10,11,11,13,13,12,12,12,14,14,11,12,12,14,14,
+ 13,14,14,15,16,13,14,14,16,15, 7, 8, 8,10,10, 8,
+ 10,10,11,11, 8,10,10,12,11,10,11,11,13,13,10,11,
+ 11,13,13, 8,10,10,11,11,10,11,11,12,12,10,11,11,
+ 12,12,11,12,12,14,14,11,12,12,14,14, 8,10, 9,11,
+ 10,10,11,11,13,12,10,11,10,13,12,11,12,12,14,14,
+ 11,12,11,14,13,10,11,11,13,13,11,12,12,14,14,12,
+ 12,12,14,14,13,14,14,15,16,13,14,14,15,15,10,11,
+ 11,13,12,12,12,12,14,14,11,12,12,14,13,13,14,14,
+ 16,15,13,14,13,16,14,10,11,11,13,13,12,12,13,14,
+ 15,12,13,13,14,15,13,14,15,15,16,13,14,14,16,16,
+ 11,12,13,14,14,13,13,14,15,16,13,14,14,15,16,14,
+ 15,15,16,17,14,15,16,17,17,11,12,12,14,14,13,14,
+ 14,15,16,13,14,14,15,15,14,15,15,16,18,14,15,15,
+ 17,16,13,14,15,15,16,15,15,16,16,18,15,15,15,17,
+ 17,16,16,17,17,18,16,16,16,18,18,14,14,14,16,16,
+ 15,15,15,16,17,15,15,15,16,17,16,17,17,18,18,16,
+ 16,17,18,17,10,11,11,14,13,12,13,13,15,14,11,13,
+ 13,15,14,13,15,15,16,16,13,14,14,16,16,11,12,12,
+ 14,14,13,13,13,15,15,13,14,13,15,15,15,15,15,17,
+ 16,14,15,15,17,16,11,13,12,14,14,13,14,13,15,15,
+ 13,14,13,15,15,14,15,15,17,17,14,15,15,17,16,14,
+ 14,14,16,16,14,15,15,17,17,15,15,16,17,16,17,16,
+ 17,18,18,16,17,17,18,18,13,14,14,16,15,15,15,15,
+ 17,17,14,16,15,16,16,17,17,17,18,18,16,17,16,20,
+ 19, 6, 8, 8,10,10, 8,10,10,11,11, 8,10,10,12,11,
+ 10,11,11,13,13,10,11,11,13,13, 8, 9,10,11,11,10,
+ 11,11,12,12,10,11,11,13,12,11,12,12,14,14,11,12,
+ 12,14,14, 9,10,10,11,11,10,11,11,12,12,10,11,11,
+ 13,12,11,12,12,14,14,11,12,12,14,14,10,10,11,12,
+ 13,11,12,12,14,14,11,12,12,14,14,13,14,14,15,16,
+ 13,14,14,15,16,10,11,11,13,13,12,12,12,14,14,12,
+ 13,12,14,14,13,14,14,16,16,13,14,14,15,15, 9,10,
+ 10,11,12,10,11,11,12,13,10,11,11,13,12,11,12,12,
+ 14,14,11,12,12,14,14,10,10,11,12,13,11,12,12,13,
+ 14,11,12,12,13,14,12,13,14,14,15,12,13,13,15,15,
+ 10,11,11,13,13,11,12,12,13,14,11,12,12,14,13,12,
+ 13,13,15,15,12,13,13,15,15,12,11,13,12,14,13,13,
+ 14,14,15,13,13,14,14,15,14,15,15,16,17,14,15,15,
+ 16,17,12,13,12,14,14,13,14,14,15,15,13,14,14,15,
+ 15,14,15,15,16,17,14,15,15,16,17, 8, 9, 9,11,11,
+ 10,11,11,12,13,10,11,11,13,12,12,13,13,14,15,11,
+ 13,12,15,14, 9,11,10,12,12,11,12,12,13,14,11,12,
+ 12,14,13,13,13,14,15,15,13,14,13,15,15, 9,11,11,
+ 12,12,11,12,12,14,14,11,12,12,14,13,13,14,14,15,
+ 16,13,14,13,15,14,11,12,12,14,13,12,13,13,14,15,
+ 13,14,14,16,15,15,15,15,15,16,15,16,15,17,17,11,
+ 12,12,14,14,13,14,14,15,15,12,13,13,15,14,15,15,
+ 15,17,17,14,15,15,17,15,11,12,12,14,14,12,13,13,
+ 15,15,12,13,13,15,15,14,15,15,17,17,14,15,15,16,
+ 16,12,13,13,14,15,13,14,14,16,16,14,14,14,15,16,
+ 15,16,16,17,17,15,16,16,17,17,12,13,13,15,15,14,
+ 14,14,16,16,14,14,15,16,16,15,16,16,17,17,15,16,
+ 16,17,17,14,15,15,15,16,15,15,16,16,18,15,16,16,
+ 17,17,17,17,17,18,18,16,17,17,19,18,14,15,15,16,
+ 17,15,16,16,17,17,15,16,16,18,17,16,17,17,19,18,
+ 17,17,17,19,18,10,12,12,14,14,13,13,14,15,15,12,
+ 14,13,16,15,15,15,15,17,17,14,15,15,17,16,12,13,
+ 13,15,14,13,14,14,16,16,14,14,15,17,16,15,16,16,
+ 17,17,15,16,16,18,17,12,13,13,15,14,14,15,15,16,
+ 16,13,15,14,16,15,16,17,16,19,17,15,16,16,17,17,
+ 14,15,15,17,15,15,16,15,17,17,16,17,16,18,17,17,
+ 17,18,18,18,17,17,18,19,18,14,15,15,16,16,15,16,
+ 16,17,18,15,16,16,18,16,17,18,18,19,19,17,18,17,
+ 18,19, 6, 8, 8,10,10, 8,10,10,11,11, 8,10,10,12,
+ 11,10,11,11,13,13, 9,11,11,13,13, 9,10,10,11,11,
+ 10,11,11,12,12,10,11,11,12,12,11,12,12,14,14,11,
+ 12,12,14,14, 8,10, 9,11,11,10,11,11,12,12,10,11,
+ 11,12,12,11,12,12,14,14,11,12,12,14,14,10,11,11,
+ 13,13,11,12,13,14,14,12,12,12,14,14,13,14,14,15,
+ 16,13,14,14,16,16,10,11,10,13,12,11,12,12,14,14,
+ 11,12,12,14,14,13,14,14,15,16,13,14,14,16,15, 8,
+ 9, 9,11,11,10,11,11,12,13,10,11,11,13,12,12,13,
+ 13,14,15,12,13,13,15,14,10,11,11,12,12,11,11,12,
+ 13,14,11,12,12,14,14,13,13,14,15,16,13,14,14,15,
+ 15, 9,10,11,12,12,11,12,12,13,14,11,12,12,14,13,
+ 13,14,14,15,16,12,14,13,15,15,11,12,12,14,14,12,
+ 13,13,14,15,13,14,14,16,15,14,15,15,15,17,15,15,
+ 16,16,17,11,12,12,13,14,13,14,14,15,15,12,13,13,
+ 15,14,15,16,15,16,17,14,16,15,17,15, 9,10,10,12,
+ 11,10,11,11,13,13,10,11,11,13,12,11,12,12,14,14,
+ 11,12,12,14,14,10,11,11,12,13,11,12,12,13,14,11,
+ 12,12,14,14,12,13,13,15,15,12,13,13,15,15,10,11,
+ 10,13,12,11,12,12,13,13,11,12,12,14,13,12,13,13,
+ 15,15,12,13,13,15,14,12,13,12,14,14,13,14,14,15,
+ 15,13,14,14,15,15,14,15,15,16,16,14,15,15,16,16,
+ 11,13,11,14,12,13,13,13,15,14,12,14,13,15,14,15,
+ 15,15,17,16,14,15,14,17,15,10,12,12,14,14,13,13,
+ 14,15,16,12,14,13,15,15,14,15,16,17,17,14,15,16,
+ 17,17,12,13,13,14,15,13,14,14,16,16,14,14,15,16,
+ 16,16,16,16,17,17,16,16,16,18,18,12,13,13,14,15,
+ 14,14,15,16,16,13,14,14,16,15,16,16,16,17,18,15,
+ 16,16,17,17,14,15,15,16,16,15,15,16,17,17,15,16,
+ 16,17,18,17,18,18,18,19,17,18,18,19,19,14,15,15,
+ 16,16,15,16,16,17,17,15,16,16,17,17,17,17,18,20,
+ 18,17,18,17,18,18,11,12,12,14,14,12,13,14,15,15,
+ 12,13,13,15,15,14,15,15,16,17,14,15,15,16,17,12,
+ 13,13,15,15,14,14,14,16,16,14,14,14,16,16,15,16,
+ 16,17,17,15,16,16,17,17,12,13,13,15,14,13,14,14,
+ 16,15,14,15,14,16,15,15,16,16,17,17,15,16,16,17,
+ 16,14,15,15,16,16,15,16,16,17,17,16,16,16,17,17,
+ 17,17,17,19,18,17,17,17,18,19,14,15,14,17,15,15,
+ 16,16,17,17,15,16,15,17,17,16,17,17,18,18,16,17,
+ 17,18,17, 6,11,11,13,13,11,12,12,14,14,11,12,12,
+ 14,14,13,14,14,16,16,13,14,14,16,16,11,12,12,14,
+ 14,12,13,13,15,15,12,13,13,15,15,14,15,15,16,17,
+ 14,15,15,17,18,11,12,12,14,14,12,13,13,15,15,12,
+ 13,13,15,15,14,15,15,17,17,14,15,15,16,16,13,14,
+ 14,15,16,14,15,15,16,17,14,15,15,17,16,15,16,17,
+ 18,17,16,16,16,18,17,14,14,15,16,16,14,15,15,18,
+ 16,14,15,15,17,16,16,17,17,18,18,16,17,16,18,17,
+ 11,12,12,14,14,12,13,13,15,15,12,13,13,15,15,14,
+ 15,15,17,17,14,15,15,16,16,12,13,13,15,15,13,14,
+ 14,15,16,13,14,14,16,16,15,16,16,17,17,15,15,16,
+ 17,17,12,13,13,15,15,14,14,14,16,16,13,14,14,16,
+ 16,15,16,16,17,17,15,16,16,17,17,14,14,15,15,16,
+ 15,15,16,16,17,15,15,16,16,17,16,17,17,17,18,16,
+ 17,17,18,18,14,15,15,16,16,15,16,16,17,17,15,16,
+ 16,17,17,17,17,17,18,19,17,17,17,18,18,10,12,12,
+ 14,14,12,13,14,15,16,13,14,13,15,15,14,15,15,17,
+ 17,14,15,16,17,17,12,13,13,15,15,13,14,14,15,15,
+ 14,15,14,16,16,15,16,16,17,18,15,17,16,18,17,12,
+ 13,13,15,15,14,14,14,16,16,13,14,14,16,15,15,16,
+ 16,17,18,15,16,16,17,17,14,14,14,16,16,15,15,16,
+ 17,17,15,16,16,17,17,17,17,17,18,20,17,17,17,19,
+ 19,14,15,15,16,16,15,17,16,18,18,15,16,15,17,16,
+ 17,18,19,19,19,17,17,17,18,17,13,14,14,16,16,14,
+ 15,15,17,17,14,15,15,16,17,15,17,17,18,18,16,16,
+ 17,18,17,14,15,15,16,17,15,16,16,17,17,15,16,16,
+ 17,17,16,17,17,18,18,17,17,17,18,19,14,15,15,16,
+ 17,15,16,16,17,17,15,16,16,17,17,16,17,17,18,18,
+ 17,17,17,19,19,16,16,16,16,18,16,17,17,17,18,17,
+ 17,17,17,19,18,18,18,19,19,18,18,18,19,20,16,16,
+ 17,18,18,16,18,17,18,18,17,17,17,20,19,18,18,19,
+ 21,20,18,20,18,18,19,10,12,12,14,14,14,14,15,15,
+ 17,14,15,14,17,15,16,16,17,18,18,16,18,17,19,18,
+ 12,14,13,16,15,14,14,15,15,17,15,16,16,18,17,16,
+ 17,18,17,19,17,19,18,20,19,12,13,13,15,15,15,16,
+ 17,17,18,14,16,14,17,16,17,18,18,19,19,17,17,17,
+ 18,18,15,15,15,17,16,15,16,16,17,17,17,19,17,18,
+ 18,18,18,18,18,21,19,20,19,20,19,15,15,16,16,17,
+ 17,17,18,20,20,15,16,16,18,17,18,19,19,19,20,18,
+ 19,18,19,17, 6,11,11,13,13,11,12,12,14,14,11,12,
+ 12,14,14,13,14,14,16,16,13,14,14,16,16,11,12,12,
+ 14,14,12,13,13,15,15,12,13,13,15,15,14,15,15,17,
+ 17,14,15,15,17,16,11,12,12,14,14,12,13,13,15,15,
+ 12,13,13,15,15,14,15,15,16,16,14,15,15,16,16,13,
+ 14,14,16,16,15,15,15,16,16,14,15,15,17,16,16,17,
+ 17,19,18,16,17,17,18,18,13,14,14,15,15,14,15,15,
+ 17,16,14,15,15,17,16,16,17,16,17,18,15,16,16,18,
+ 18,10,12,12,14,14,12,13,14,15,15,12,13,13,15,15,
+ 14,15,15,17,17,14,15,15,17,16,12,13,13,15,15,14,
+ 14,14,15,16,14,15,15,16,16,15,16,16,17,18,16,16,
+ 16,18,18,12,13,13,14,14,14,14,15,16,16,13,14,14,
+ 16,16,15,16,16,18,18,15,16,16,19,17,14,15,15,16,
+ 17,15,15,16,17,17,16,17,16,17,18,17,17,18,17,19,
+ 17,17,18,18,19,14,14,14,16,16,15,16,16,17,17,15,
+ 16,15,17,17,17,17,17,19,20,16,17,17,18,18,11,12,
+ 12,14,14,12,13,13,15,15,12,13,13,15,15,14,15,15,
+ 16,16,14,15,14,16,16,12,13,13,15,15,14,14,14,16,
+ 16,13,14,14,16,16,15,16,16,18,17,15,16,16,17,17,
+ 12,13,13,15,15,13,14,14,16,16,13,14,14,16,16,15,
+ 16,15,18,18,15,16,15,17,16,14,15,15,16,16,15,16,
+ 16,17,17,15,16,16,18,17,16,17,17,18,18,16,17,17,
+ 18,18,14,15,14,16,15,15,16,15,17,17,15,16,15,17,
+ 16,16,17,17,18,18,17,17,16,19,17,10,12,12,14,15,
+ 14,14,15,15,17,14,15,14,17,15,16,17,17,17,18,16,
+ 17,17,18,18,12,14,13,16,15,14,14,16,15,17,15,17,
+ 16,18,17,17,17,18,17,19,18,18,18,19,18,12,13,14,
+ 15,15,15,16,16,16,17,14,15,14,18,16,18,17,18,19,
+ 19,17,18,17,20,18,15,15,15,17,17,15,16,16,17,18,
+ 18,18,18,19,18,18,18,19,18,20,18,19,19,21,21,15,
+ 15,16,16,17,17,18,18,18,18,15,16,16,17,17,17,19,
+ 20,19,20,17,18,18,19,17,13,14,14,16,16,14,15,15,
+ 16,17,14,15,15,17,17,16,16,17,17,18,15,17,16,17,
+ 17,14,15,15,16,16,15,16,16,17,17,16,16,16,17,17,
+ 17,17,18,17,18,17,17,17,18,20,14,15,15,17,16,15,
+ 16,16,17,17,15,16,16,17,17,17,17,17,18,18,16,17,
+ 17,19,18,16,16,17,17,17,17,18,17,19,18,17,17,17,
+ 18,19,17,20,18,19,21,17,19,18,19,20,15,17,15,17,
+ 16,16,17,17,18,18,17,17,17,18,17,18,19,18,19,21,
+ 18,18,17,19,19,
+};
+
+static const static_codebook _44p9_p2_0 = {
+ 5, 3125,
+ (char *)_vq_lengthlist__44p9_p2_0,
+ 1, -533725184, 1611661312, 3, 0,
+ (long *)_vq_quantlist__44p9_p2_0,
+ 0
+};
+
+static const long _vq_quantlist__44p9_p3_0[] = {
+ 1,
+ 0,
+ 2,
+};
+
+static const char _vq_lengthlist__44p9_p3_0[] = {
+ 2, 5, 4, 4, 7, 7, 4, 7, 6, 5, 6, 7, 7, 8, 9, 7,
+ 9, 9, 5, 7, 6, 7, 9, 9, 7, 9, 8, 6, 8, 8, 8,10,
+ 10, 8,10,10, 8, 9,10,10,11,12,10,12,12, 8,10,10,
+ 10,12,12,10,12,11, 6, 8, 8, 8,10,10, 8,10,10, 8,
+ 10,10,10,11,12,10,12,12, 8,10, 9,10,12,11,10,12,
+ 11, 5, 8, 8, 8,10,10, 8,10,10, 8, 9,10,10,11,11,
+ 10,11,11, 8,10,10,10,11,12,10,12,11, 8,10,10,10,
+ 11,11,10,11,11,10,11,11,11,12,13,11,12,13,10,11,
+ 11,11,13,13,11,13,13, 7, 9, 9,10,11,12,10,12,11,
+ 9,11,11,11,12,13,12,14,13, 9,11,11,12,13,14,11,
+ 13,12, 5, 8, 8, 8,10,10, 8,10,10, 8,10,10,10,11,
+ 12,10,12,12, 8,10, 9,10,12,11, 9,11,11, 7, 9, 9,
+ 10,11,12,10,12,11, 9,11,11,11,12,13,12,14,13, 9,
+ 11,11,12,13,14,11,13,12, 8,10,10,10,11,11,10,11,
+ 11,10,11,11,11,13,13,11,13,13,10,11,10,11,13,12,
+ 11,13,12,
+};
+
+static const static_codebook _44p9_p3_0 = {
+ 5, 243,
+ (char *)_vq_lengthlist__44p9_p3_0,
+ 1, -533200896, 1614282752, 2, 0,
+ (long *)_vq_quantlist__44p9_p3_0,
+ 0
+};
+
+static const long _vq_quantlist__44p9_p3_1[] = {
+ 1,
+ 0,
+ 2,
+};
+
+static const char _vq_lengthlist__44p9_p3_1[] = {
+ 4, 6, 6, 6, 7, 7, 6, 7, 7, 6, 7, 7, 7, 7, 8, 7,
+ 7, 8, 6, 7, 7, 7, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8,
+ 8, 8, 8, 8, 8, 8, 8, 8, 9, 9, 8, 9, 9, 8, 8, 8,
+ 8, 9, 9, 8, 9, 9, 7, 8, 8, 8, 8, 8, 8, 8, 8, 8,
+ 8, 8, 8, 9, 9, 8, 9, 9, 8, 8, 8, 8, 9, 9, 8, 9,
+ 9, 5, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 9, 9,
+ 8, 9, 9, 8, 8, 8, 8, 9, 9, 8, 9, 9, 8, 8, 8, 8,
+ 9, 9, 8, 9, 9, 8, 8, 9, 9, 9, 9, 9, 9, 9, 8, 9,
+ 9, 9, 9, 9, 9, 9, 9, 7, 8, 8, 8, 9, 9, 8, 9, 9,
+ 8, 9, 8, 9, 9, 9, 9, 9, 9, 8, 8, 8, 9, 9, 9, 9,
+ 9, 9, 6, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 9,
+ 9, 8, 9, 9, 8, 8, 8, 8, 9, 9, 8, 9, 9, 7, 8, 8,
+ 8, 9, 9, 8, 9, 9, 8, 8, 9, 9, 9, 9, 9, 9, 9, 8,
+ 8, 8, 9, 9, 9, 9, 9, 9, 8, 8, 8, 8, 9, 9, 8, 9,
+ 9, 8, 9, 9, 9, 9, 9, 9, 9, 9, 8, 9, 8, 9, 9, 9,
+ 9, 9, 9,
+};
+
+static const static_codebook _44p9_p3_1 = {
+ 5, 243,
+ (char *)_vq_lengthlist__44p9_p3_1,
+ 1, -535822336, 1611661312, 2, 0,
+ (long *)_vq_quantlist__44p9_p3_1,
+ 0
+};
+
+static const long _vq_quantlist__44p9_p4_0[] = {
+ 1,
+ 0,
+ 2,
+};
+
+static const char _vq_lengthlist__44p9_p4_0[] = {
+ 2, 5, 5, 4, 7, 7, 4, 7, 6, 5, 7, 7, 7, 8, 9, 7,
+ 9, 9, 5, 7, 7, 7, 9, 9, 7, 9, 8, 6, 7, 8, 8, 9,
+ 10, 8,10,10, 8, 9,10,10,11,12,10,11,12, 8,10,10,
+ 10,11,12,10,12,11, 6, 8, 7, 8,10,10, 8,10, 9, 8,
+ 10,10,10,11,12,10,12,12, 8,10, 9,10,12,11,10,12,
+ 11, 5, 8, 8, 8,10,10, 8,10,10, 7, 9,10, 9,10,11,
+ 10,11,11, 8,10,10,10,12,12,10,12,11, 7, 9, 9, 9,
+ 11,11, 9,11,11, 9,10,11,11,11,12,11,12,12, 9,11,
+ 11,11,12,12,11,12,12, 7, 9, 9,10,11,12,10,12,11,
+ 9,11,10,11,11,12,12,13,13, 9,11,11,12,13,13,11,
+ 13,11, 5, 8, 8, 8,10,10, 8,10,10, 8,10,10,10,11,
+ 12,10,12,12, 7, 9, 9, 9,11,11, 9,11,10, 7, 9, 9,
+ 10,11,12,10,12,11, 9,11,11,11,11,13,12,13,13, 9,
+ 10,11,12,13,13,11,12,11, 7, 9, 9, 9,11,11, 9,11,
+ 11, 9,11,11,11,12,12,11,12,12, 9,11,10,11,12,12,
+ 10,12,11,
+};
+
+static const static_codebook _44p9_p4_0 = {
+ 5, 243,
+ (char *)_vq_lengthlist__44p9_p4_0,
+ 1, -531365888, 1616117760, 2, 0,
+ (long *)_vq_quantlist__44p9_p4_0,
+ 0
+};
+
+static const long _vq_quantlist__44p9_p4_1[] = {
+ 2,
+ 1,
+ 3,
+ 0,
+ 4,
+};
+
+static const char _vq_lengthlist__44p9_p4_1[] = {
+ 6, 8, 8,10, 9, 8, 9, 9,10,10, 8, 9, 9,10,10, 8,
+ 10,10,10,10, 8,10,10,10,10, 9, 9, 9,10,10, 9,10,
+ 10,10,11, 9,10,10,11,11,10,10,10,11,11,10,10,10,
+ 11,11, 9, 9, 9,10,10, 9,10,10,11,11, 9,10,10,11,
+ 10,10,10,10,11,11,10,10,10,11,11,10,10,10,10,11,
+ 10,10,11,11,11,10,11,11,11,11,11,11,11,11,11,11,
+ 11,11,11,11,10,10,10,11,10,10,11,11,11,11,10,11,
+ 10,11,11,11,11,11,11,11,10,11,11,11,11, 9,10,10,
+ 10,11,10,10,11,11,11,10,11,11,11,11,10,11,11,11,
+ 11,10,11,11,11,11,10,10,11,11,11,11,11,11,11,11,
+ 11,11,11,11,12,11,11,12,12,12,11,11,11,12,12,10,
+ 11,11,11,11,11,11,11,12,12,11,11,11,11,11,11,11,
+ 11,12,12,11,11,11,12,12,11,11,11,11,11,11,12,12,
+ 12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,12,
+ 12,11,11,11,11,11,11,12,12,12,12,11,12,11,12,12,
+ 11,12,12,12,12,12,12,12,12,12, 9,10,10,11,10,10,
+ 11,11,11,11,10,11,11,11,11,10,11,11,11,11,10,11,
+ 11,11,11,10,11,11,11,11,11,11,11,11,11,11,11,11,
+ 12,12,11,11,12,12,12,11,11,11,12,12,10,11,10,11,
+ 11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,12,
+ 11,11,11,12,12,11,11,11,11,11,11,12,12,12,12,11,
+ 12,12,12,12,11,12,12,12,12,12,12,12,12,12,11,11,
+ 11,11,11,11,12,12,12,12,11,12,11,12,12,12,12,12,
+ 12,12,11,12,12,12,12,11,11,11,11,11,11,12,12,12,
+ 12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,
+ 11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,
+ 12,12,13,13,12,12,12,13,13,11,12,12,12,12,12,12,
+ 12,12,12,12,12,12,12,12,12,12,12,13,13,12,12,12,
+ 13,13,12,12,12,12,12,12,12,12,12,13,12,12,12,13,
+ 13,12,13,13,13,13,12,13,13,13,13,12,12,12,12,12,
+ 12,12,12,13,13,12,12,12,13,13,12,13,13,13,13,12,
+ 13,13,13,13,11,11,11,11,11,11,12,12,12,12,11,12,
+ 12,12,12,12,12,12,12,12,12,12,12,12,12,11,12,12,
+ 12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,
+ 13,12,12,12,13,13,11,12,12,12,12,12,12,12,12,12,
+ 12,12,12,12,12,12,12,12,13,13,12,12,12,13,13,12,
+ 12,12,12,12,12,12,12,13,13,12,12,12,13,13,12,13,
+ 13,13,13,12,13,13,13,13,12,12,12,12,12,12,12,12,
+ 13,13,12,12,12,13,12,12,13,13,13,13,12,13,13,13,
+ 13, 7,10,10,11,11,10,10,11,11,11,10,11,11,11,11,
+ 10,11,11,11,11,10,11,11,11,11,10,10,10,11,11,10,
+ 11,11,11,11,11,11,11,11,12,11,11,11,12,12,11,11,
+ 11,12,12,10,11,11,11,11,11,11,11,12,11,11,11,11,
+ 12,11,11,11,11,12,12,11,11,11,12,12,11,11,11,11,
+ 11,11,11,11,12,12,11,11,12,12,12,11,12,12,12,12,
+ 11,12,12,12,12,11,11,11,11,11,11,12,12,12,12,11,
+ 11,12,12,12,11,12,12,12,12,11,12,12,12,12,10,11,
+ 11,11,11,11,11,11,11,12,11,11,11,11,11,11,11,11,
+ 12,12,11,11,11,12,12,11,11,11,11,11,11,11,12,12,
+ 12,11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,
+ 11,11,11,11,11,11,12,11,12,12,11,11,11,12,12,11,
+ 12,12,12,12,11,12,12,12,12,11,11,11,11,12,11,12,
+ 12,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,
+ 12,12,11,11,11,12,12,11,12,12,12,12,11,12,12,12,
+ 12,12,12,12,12,12,12,12,12,12,12,10,11,10,11,11,
+ 11,11,11,12,12,11,11,11,12,12,11,12,12,12,12,11,
+ 12,12,12,12,10,11,11,12,11,11,11,12,12,12,11,12,
+ 12,12,12,12,12,12,12,12,12,12,12,12,12,11,11,11,
+ 12,11,11,12,12,12,12,11,12,11,12,12,12,12,12,12,
+ 12,12,12,12,12,12,11,12,11,12,12,12,12,12,12,12,
+ 12,12,12,12,12,12,12,12,12,13,12,12,12,12,12,11,
+ 12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,
+ 12,12,13,12,12,12,13,12,11,11,11,12,12,12,12,12,
+ 12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,
+ 13,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,
+ 12,12,13,13,13,12,12,12,13,13,11,12,12,12,12,12,
+ 12,12,12,13,12,12,12,12,12,12,12,13,13,13,12,13,
+ 12,13,13,12,12,12,12,12,12,12,12,13,13,12,12,12,
+ 13,13,12,13,13,13,13,12,13,13,13,13,12,12,12,12,
+ 12,12,12,12,13,13,12,13,12,13,13,12,13,13,13,13,
+ 12,13,13,13,13,11,11,11,12,12,12,12,12,12,12,11,
+ 12,12,12,12,12,12,12,13,13,12,12,12,13,13,11,12,
+ 12,12,12,12,12,12,12,12,12,12,12,13,13,12,13,12,
+ 13,13,12,13,13,13,13,11,12,12,12,12,12,12,12,13,
+ 13,12,12,12,13,12,12,13,13,13,13,12,13,13,13,13,
+ 12,12,12,12,12,12,12,13,13,13,12,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,12,12,12,12,12,12,13,
+ 13,13,13,12,12,12,13,13,13,13,13,13,13,13,13,13,
+ 13,13, 7,10,10,11,11,10,11,11,11,11,10,11,11,11,
+ 11,10,11,11,11,11,10,11,11,11,11,10,11,11,11,11,
+ 11,11,11,11,11,11,11,11,12,11,11,11,12,12,12,11,
+ 11,11,12,12,10,10,10,11,11,11,11,11,12,11,10,11,
+ 11,11,11,11,11,11,12,12,11,11,11,12,12,11,11,11,
+ 11,11,11,11,12,12,12,11,12,11,12,12,11,12,12,12,
+ 12,11,12,12,12,12,11,11,11,11,11,11,11,11,12,12,
+ 11,12,11,12,12,11,12,12,12,12,11,12,12,12,12,10,
+ 10,10,11,11,11,11,11,12,12,11,11,11,12,12,11,12,
+ 12,12,12,11,12,12,12,12,11,11,11,11,11,11,11,12,
+ 12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,
+ 12,11,11,11,11,11,11,12,12,12,12,11,12,11,12,12,
+ 12,12,12,12,12,12,12,12,12,12,11,12,12,12,12,12,
+ 12,12,12,12,12,12,12,12,12,12,12,12,12,13,12,12,
+ 12,13,12,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,10,11,11,11,
+ 11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,12,
+ 11,11,11,12,12,11,11,11,11,11,11,11,12,12,12,11,
+ 12,11,12,12,11,12,12,12,12,11,12,12,12,12,11,11,
+ 11,11,11,11,11,11,12,12,11,11,11,12,12,11,12,12,
+ 12,12,11,12,12,12,12,11,11,11,12,11,12,12,12,12,
+ 12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,
+ 11,11,11,12,11,11,12,12,12,12,11,12,12,12,12,12,
+ 12,12,12,12,12,12,12,12,12,11,11,11,12,12,11,12,
+ 12,12,12,12,12,12,12,12,12,12,12,13,13,12,12,12,
+ 13,12,11,12,12,12,12,12,12,12,12,13,12,12,12,13,
+ 13,12,13,13,13,13,12,13,13,13,13,11,12,12,12,12,
+ 12,12,12,12,13,12,12,12,12,12,12,13,13,13,13,12,
+ 13,13,13,13,12,12,12,12,12,12,12,13,13,13,12,13,
+ 12,13,13,13,13,13,13,13,13,13,13,13,13,12,12,12,
+ 12,12,12,13,13,13,13,12,13,12,13,13,13,13,13,13,
+ 13,13,13,13,13,13,11,11,11,12,12,11,12,12,12,12,
+ 11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,11,
+ 12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,
+ 12,13,13,12,12,12,13,13,11,12,12,12,12,12,12,12,
+ 12,12,12,12,12,12,12,12,12,12,13,13,12,13,12,13,
+ 13,12,12,12,12,12,12,12,12,13,13,12,12,12,13,13,
+ 13,13,13,13,13,12,13,13,13,13,12,12,12,12,12,12,
+ 13,12,13,13,12,13,12,13,12,12,13,13,13,13,12,13,
+ 13,13,13, 8,11,11,12,12,11,12,12,12,12,11,12,12,
+ 12,12,12,12,12,12,12,12,12,12,12,12,11,11,11,12,
+ 12,11,12,12,12,12,12,12,12,12,12,12,12,12,13,13,
+ 12,12,12,13,13,11,11,11,12,12,12,12,12,12,12,12,
+ 12,12,12,12,12,12,12,13,13,12,12,12,13,13,11,12,
+ 12,12,12,12,12,12,12,13,12,12,12,12,12,12,12,13,
+ 13,13,12,12,13,13,13,11,12,12,12,12,12,12,12,13,
+ 12,12,12,12,13,13,12,13,13,13,13,12,13,13,13,13,
+ 11,11,11,12,12,11,12,12,12,12,11,12,12,12,12,12,
+ 12,12,12,12,12,12,12,12,12,11,12,12,12,12,12,12,
+ 12,12,12,12,12,12,12,12,12,12,12,13,13,12,12,12,
+ 13,13,11,12,12,12,12,12,12,12,12,12,12,12,12,12,
+ 12,12,13,12,13,13,12,13,12,13,13,12,12,12,12,12,
+ 12,12,12,12,13,12,12,12,13,13,12,13,13,13,13,12,
+ 13,13,13,13,12,12,12,12,12,12,12,12,13,13,12,12,
+ 12,13,13,12,13,13,13,13,12,13,13,13,13,11,11,11,
+ 12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,13,
+ 12,12,12,12,12,13,11,12,12,12,12,12,12,12,12,13,
+ 12,12,12,12,13,12,13,13,13,13,12,13,13,13,13,11,
+ 12,12,12,12,12,12,12,12,13,12,12,12,13,12,12,13,
+ 13,13,13,12,13,13,13,13,12,12,12,12,12,12,12,12,
+ 13,13,12,12,13,13,13,12,13,13,13,13,12,13,13,13,
+ 13,12,12,12,12,12,12,13,13,13,13,12,13,12,13,13,
+ 12,13,13,13,13,13,13,13,13,13,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,11,12,12,12,12,12,12,12,12,12,12,12,12,
+ 12,12,12,12,13,13,13,12,13,13,13,13,11,12,12,12,
+ 12,12,12,12,12,12,12,12,12,12,12,12,13,13,13,13,
+ 12,13,12,13,13,12,12,12,12,12,12,12,12,13,13,12,
+ 12,12,13,13,12,13,13,13,13,12,13,13,13,13,12,12,
+ 12,12,12,12,13,12,13,13,12,12,12,13,13,13,13,13,
+ 13,13,12,13,13,13,13,11,11,11,12,12,12,12,12,12,
+ 12,12,12,12,12,12,12,12,12,12,13,12,12,12,13,12,
+ 11,12,12,12,12,12,12,12,12,12,12,12,12,13,13,12,
+ 12,13,13,13,12,13,13,13,13,11,12,12,12,12,12,12,
+ 12,12,13,12,12,12,13,12,12,13,13,13,13,12,13,13,
+ 13,13,12,12,12,12,12,12,12,12,13,13,12,12,12,13,
+ 13,13,13,13,13,13,13,13,13,13,13,12,12,12,12,12,
+ 12,13,13,13,13,12,13,12,13,13,13,13,13,13,13,13,
+ 13,13,13,13, 8,11,11,11,11,11,12,12,12,12,11,12,
+ 12,12,12,12,12,12,12,12,11,12,12,12,12,11,11,11,
+ 12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,
+ 13,12,12,12,13,13,11,11,11,12,12,12,12,12,12,12,
+ 12,12,12,12,12,12,12,12,13,13,12,12,12,13,12,12,
+ 12,12,12,12,12,12,12,12,12,12,12,12,13,13,12,13,
+ 13,13,13,12,13,13,13,13,11,12,12,12,12,12,12,12,
+ 12,13,12,12,12,13,12,12,13,13,13,13,12,13,12,13,
+ 13,11,11,11,12,12,12,12,12,12,12,11,12,12,12,12,
+ 12,12,12,13,13,12,12,12,13,12,11,12,12,12,12,12,
+ 12,12,12,12,12,12,12,13,13,12,12,13,13,13,12,13,
+ 13,13,13,11,12,12,12,12,12,12,12,13,13,12,12,12,
+ 12,12,12,13,13,13,13,12,13,13,13,13,12,12,12,12,
+ 12,12,12,13,13,13,12,12,13,13,13,13,13,13,13,13,
+ 12,13,13,13,13,12,12,12,12,12,12,13,12,13,13,12,
+ 12,12,13,13,13,13,13,13,13,12,13,13,13,13,11,11,
+ 11,12,12,11,12,12,12,12,11,12,12,12,12,12,12,12,
+ 12,12,12,12,12,12,12,11,12,12,12,12,12,12,12,12,
+ 12,12,12,12,12,12,12,13,12,13,13,12,12,12,13,13,
+ 11,12,12,12,12,12,12,12,12,13,12,12,12,12,12,12,
+ 12,12,13,13,12,13,12,13,13,12,12,12,12,12,12,12,
+ 12,13,12,12,12,12,13,13,12,13,13,13,13,12,13,13,
+ 13,13,12,12,12,12,12,12,12,12,13,13,12,12,12,13,
+ 12,12,13,13,13,13,12,13,13,13,13,11,11,11,12,12,
+ 12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,
+ 12,12,13,13,11,12,12,12,12,12,12,12,12,13,12,12,
+ 12,12,12,12,13,13,13,13,12,13,13,13,13,11,12,12,
+ 12,12,12,12,12,12,13,12,12,12,12,12,12,13,13,13,
+ 13,12,13,13,13,13,12,12,12,12,12,12,12,12,13,13,
+ 12,12,13,13,13,13,13,13,13,13,13,13,13,13,13,12,
+ 12,12,12,12,12,13,13,13,13,12,12,12,13,12,13,13,
+ 13,13,13,12,13,13,13,13,11,11,11,12,12,12,12,12,
+ 12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,
+ 13,11,12,12,12,12,12,12,12,12,12,12,12,12,13,12,
+ 12,12,12,13,13,12,13,13,13,13,11,12,12,12,12,12,
+ 12,12,12,12,12,12,12,12,12,12,13,13,13,13,12,13,
+ 12,13,13,12,12,12,12,12,12,12,13,13,13,12,13,12,
+ 13,13,12,13,13,13,13,13,13,13,13,13,12,12,12,12,
+ 12,12,12,12,12,13,12,12,12,13,13,13,13,13,13,13,
+ 12,13,13,13,13,
+};
+
+static const static_codebook _44p9_p4_1 = {
+ 5, 3125,
+ (char *)_vq_lengthlist__44p9_p4_1,
+ 1, -533725184, 1611661312, 3, 0,
+ (long *)_vq_quantlist__44p9_p4_1,
+ 0
+};
+
+static const long _vq_quantlist__44p9_p5_0[] = {
+ 2,
+ 1,
+ 3,
+ 0,
+ 4,
+};
+
+static const char _vq_lengthlist__44p9_p5_0[] = {
+ 4, 6, 6, 9, 9, 6, 7, 8,10,11, 6, 8, 7,10,10, 8,
+ 10,10,12,12, 8,10,10,12,12, 6, 7, 8,10,10, 7, 8,
+ 9,10,11, 8, 9, 9,11,11,10,10,11,12,13,10,11,11,
+ 13,13, 6, 8, 7,10,10, 8, 9, 9,11,11, 7, 9, 8,11,
+ 10,10,11,11,13,13,10,11,10,13,12, 9,10,10,11,12,
+ 10,10,11,12,13,10,11,11,12,13,12,12,13,12,14,12,
+ 13,13,14,14, 9,10,10,12,11,10,11,11,13,12,10,11,
+ 10,13,12,12,13,13,14,14,12,13,12,14,12, 7, 8, 8,
+ 10,11, 8, 9,10,11,12, 8, 9, 9,11,12,10,11,12,13,
+ 14,10,11,11,13,13, 8, 9,10,11,12, 9,10,11,12,13,
+ 10,10,11,12,12,11,12,12,13,14,11,12,12,14,14, 8,
+ 9, 9,11,12,10,10,11,12,13, 9,10,10,12,12,11,12,
+ 12,14,14,11,12,12,14,13,11,11,12,12,13,11,12,12,
+ 13,14,12,12,13,14,14,13,13,14,14,16,13,14,14,15,
+ 15,11,12,11,13,13,12,12,12,14,14,11,12,12,14,13,
+ 13,14,14,15,15,13,14,13,15,14, 7, 8, 8,11,10, 8,
+ 10, 9,12,11, 8,10, 9,12,11,10,11,11,13,13,10,12,
+ 11,14,13, 8, 9, 9,12,11, 9,10,10,12,12,10,11,10,
+ 13,12,11,12,12,13,14,11,12,12,14,14, 8,10, 9,12,
+ 11,10,11,10,12,12, 9,11,10,13,11,11,12,12,14,14,
+ 11,12,12,14,13,11,11,12,13,13,11,12,12,13,14,12,
+ 12,12,14,14,13,13,14,14,15,13,14,14,15,15,11,12,
+ 11,13,12,12,12,12,14,14,11,12,12,14,13,13,14,14,
+ 15,15,13,14,13,15,14,10,11,11,12,13,11,12,12,13,
+ 14,11,12,12,13,14,13,13,14,14,16,13,14,14,15,15,
+ 11,12,12,12,14,12,12,13,13,15,12,13,13,13,15,14,
+ 14,15,15,16,14,14,15,15,16,11,12,12,13,14,12,13,
+ 13,14,15,12,13,13,14,14,14,14,15,15,16,14,14,14,
+ 15,15,13,14,14,14,15,14,14,15,15,16,14,15,15,15,
+ 16,15,15,16,16,18,16,16,16,17,17,13,14,14,15,15,
+ 14,14,15,16,16,14,14,14,16,15,16,16,16,17,17,15,
+ 16,16,17,16,10,11,11,13,12,11,12,12,14,13,11,12,
+ 12,14,13,13,14,14,15,15,13,14,13,16,14,11,12,12,
+ 14,13,12,13,13,14,14,12,13,13,15,14,14,14,14,15,
+ 15,14,15,14,16,15,11,12,12,14,12,12,13,13,15,14,
+ 12,13,12,15,13,14,15,14,16,15,14,15,14,16,15,13,
+ 14,14,15,15,14,14,14,15,16,14,15,14,16,16,15,16,
+ 16,16,17,16,16,16,17,17,13,14,14,15,14,14,15,15,
+ 16,15,14,15,14,16,15,16,16,16,17,17,15,16,15,18,
+ 16, 6, 8, 8,11,11, 8, 9,10,11,12, 8,10, 9,12,12,
+ 10,11,11,13,13,10,12,11,14,13, 8, 9, 9,11,12, 9,
+ 10,10,12,12, 9,10,10,12,12,11,11,12,13,14,11,12,
+ 12,14,14, 8,10, 9,12,11,10,11,11,12,12, 9,11,10,
+ 13,12,11,12,12,14,14,11,12,12,14,13,10,11,11,13,
+ 13,11,12,12,13,14,11,12,12,14,14,13,13,14,13,15,
+ 13,14,14,15,15,11,12,11,13,13,12,12,12,14,14,11,
+ 12,12,14,13,13,14,14,15,15,13,14,13,15,14, 8, 9,
+ 9,11,11, 9,10,10,12,12, 9,10,10,12,12,11,12,12,
+ 13,14,11,12,12,14,14, 9, 9,10,11,12,10,10,11,12,
+ 13,10,10,11,12,13,12,12,13,13,15,12,12,13,14,14,
+ 9,10,10,12,12,10,11,11,13,13,10,11,11,13,13,12,
+ 13,13,14,15,12,13,12,14,14,11,11,12,12,14,12,12,
+ 13,13,14,12,12,13,13,14,13,13,14,14,16,14,14,14,
+ 15,15,11,12,12,14,13,12,13,13,14,14,12,13,13,15,
+ 14,14,14,14,16,16,13,14,14,16,14, 7, 9, 9,12,11,
+ 9,10,10,12,12, 9,11,10,13,12,11,12,12,13,14,11,
+ 13,12,14,13, 9,10,10,12,12,10,10,11,12,13,10,12,
+ 11,13,13,12,12,13,13,14,12,13,13,15,14, 9,10,10,
+ 12,12,11,11,11,13,13,10,12,10,13,12,12,13,13,14,
+ 15,12,13,12,15,13,11,12,12,14,13,12,12,13,13,14,
+ 12,13,13,15,14,13,13,14,13,16,14,15,14,16,15,12,
+ 12,12,14,14,13,13,13,14,14,12,13,12,14,13,14,15,
+ 15,16,16,13,14,13,16,13,10,11,12,13,14,11,12,13,
+ 13,15,12,12,13,14,14,13,14,14,15,16,13,14,14,16,
+ 15,12,12,13,12,14,12,12,13,13,15,13,13,13,13,15,
+ 14,14,15,14,16,14,15,15,15,16,12,13,12,14,14,13,
+ 13,13,15,15,12,13,13,15,15,14,15,15,16,16,14,15,
+ 15,16,16,13,14,14,13,16,14,14,15,14,16,14,14,15,
+ 14,16,15,15,16,15,18,16,16,16,16,17,14,14,14,16,
+ 15,14,15,15,16,16,14,15,15,16,16,16,16,16,17,17,
+ 15,16,16,17,16,10,12,11,14,13,12,13,13,14,14,12,
+ 13,12,15,14,14,14,14,15,15,14,15,14,16,15,12,13,
+ 12,14,13,12,13,13,15,14,13,14,13,15,14,14,15,15,
+ 16,16,14,15,15,17,15,12,13,12,14,14,13,14,14,15,
+ 15,13,14,13,15,14,15,15,15,16,16,14,15,15,17,15,
+ 14,14,14,16,15,14,15,15,16,16,14,15,15,16,15,16,
+ 16,16,16,17,16,17,16,18,17,14,14,14,16,15,15,15,
+ 15,16,16,14,15,14,16,15,16,16,17,17,17,15,16,15,
+ 17,16, 6, 8, 8,11,11, 8, 9,10,12,12, 8,10, 9,12,
+ 11,10,11,12,13,13,10,11,11,13,13, 8, 9,10,11,12,
+ 9,10,11,12,13,10,11,11,12,12,11,12,12,13,14,11,
+ 12,12,14,14, 8, 9, 9,12,11, 9,10,10,12,12, 9,10,
+ 10,12,12,11,12,12,14,14,11,12,11,14,13,11,11,12,
+ 13,13,11,12,12,13,14,12,12,12,14,14,13,13,14,14,
+ 15,13,14,14,15,15,10,11,11,13,13,11,12,12,14,14,
+ 11,12,12,14,13,13,14,14,15,15,13,14,13,15,13, 7,
+ 9, 9,11,12, 9,10,11,12,13, 9,10,10,12,12,11,12,
+ 13,13,14,11,12,12,14,14, 9,10,10,12,12,10,10,11,
+ 12,13,11,12,11,13,13,12,12,13,13,15,12,13,13,15,
+ 14, 9,10,10,12,12,10,11,12,13,13,10,11,10,13,12,
+ 12,13,13,14,15,12,13,12,14,13,12,12,12,14,14,12,
+ 12,13,13,14,13,13,13,15,14,14,13,14,13,16,14,15,
+ 15,16,16,11,12,12,13,14,12,13,13,14,15,12,13,12,
+ 14,13,14,14,15,15,16,13,14,13,15,13, 8, 9, 9,11,
+ 11, 9,10,10,12,12, 9,10,10,12,12,11,12,12,14,14,
+ 11,12,11,14,13, 9,10,10,12,12,10,11,11,13,13,10,
+ 11,11,13,13,12,12,13,14,15,12,13,13,15,14, 9,10,
+ 9,12,11,10,11,10,13,12,10,11,10,13,12,12,13,12,
+ 14,14,12,13,12,15,13,11,12,12,13,14,12,13,13,14,
+ 14,12,13,13,14,14,14,14,14,14,16,14,14,14,16,15,
+ 11,12,11,14,12,12,13,12,15,13,12,13,12,15,13,14,
+ 14,14,16,15,13,14,13,16,14,10,11,12,13,14,12,12,
+ 13,13,15,12,13,13,14,14,14,14,15,15,16,14,14,14,
+ 15,16,12,12,13,14,14,12,13,14,14,15,13,14,14,15,
+ 15,14,15,15,15,17,15,15,15,16,16,12,12,13,13,14,
+ 13,13,14,14,15,12,13,13,14,15,15,15,15,15,17,14,
+ 15,15,15,15,14,14,14,16,16,14,15,15,15,16,15,15,
+ 15,16,16,16,15,16,16,18,16,16,17,17,17,14,14,14,
+ 15,16,15,15,15,16,17,14,15,14,16,16,16,16,17,17,
+ 18,16,16,15,17,16,10,12,11,14,13,12,12,12,14,14,
+ 11,13,12,14,13,13,14,14,15,15,13,14,13,16,15,12,
+ 12,13,14,14,12,13,13,15,15,13,13,13,15,15,14,15,
+ 15,16,16,14,15,15,17,16,12,13,12,14,12,13,13,13,
+ 15,13,12,13,12,15,13,14,15,15,16,15,14,15,14,16,
+ 14,14,14,14,16,16,14,15,15,16,16,14,15,15,16,16,
+ 15,16,16,16,17,16,17,16,18,17,13,14,14,16,13,14,
+ 15,15,16,14,14,15,14,16,14,16,16,16,17,16,15,16,
+ 15,18,15, 9,11,11,13,13,11,12,12,14,14,11,12,12,
+ 14,14,13,14,14,15,15,13,14,14,15,15,11,12,12,14,
+ 14,11,12,13,14,15,12,13,13,15,14,13,14,14,15,16,
+ 13,14,14,16,16,11,12,12,14,14,12,13,13,15,15,12,
+ 13,13,15,14,14,14,14,16,16,14,15,14,16,15,12,13,
+ 13,14,15,12,13,14,15,16,13,14,14,16,16,14,14,15,
+ 16,17,15,15,15,17,17,13,14,14,15,15,14,15,14,16,
+ 16,14,15,14,16,15,15,16,16,17,17,15,16,15,17,16,
+ 10,12,12,13,14,11,12,13,14,14,12,13,12,14,14,13,
+ 14,14,15,16,13,14,14,16,15,11,12,12,14,14,12,12,
+ 13,14,15,12,13,13,15,15,13,13,15,15,17,14,14,15,
+ 16,16,12,13,12,14,14,12,13,13,15,15,12,13,13,15,
+ 14,14,15,15,16,16,14,15,14,16,16,13,12,14,13,16,
+ 13,13,15,14,16,14,13,15,15,16,14,14,16,15,17,15,
+ 15,16,16,17,13,14,14,16,15,14,15,15,16,16,14,15,
+ 14,16,15,16,16,16,17,17,15,16,16,18,16,10,12,12,
+ 14,14,12,12,13,14,14,12,13,12,15,14,13,14,14,15,
+ 16,14,15,14,16,15,11,12,12,14,14,12,13,13,14,15,
+ 13,14,13,15,15,14,14,15,15,16,14,15,15,17,16,12,
+ 13,13,14,14,13,13,14,15,15,12,14,13,15,15,14,15,
+ 15,16,16,14,15,15,17,15,13,14,13,15,15,13,14,14,
+ 15,16,14,15,14,17,16,15,15,15,15,17,16,16,16,18,
+ 17,14,14,14,16,16,15,15,15,16,16,14,15,14,16,16,
+ 16,16,17,17,17,16,16,16,17,16,11,12,13,14,14,12,
+ 13,13,15,15,12,13,13,15,15,14,15,15,16,16,14,15,
+ 15,17,16,12,13,13,14,15,13,13,14,14,16,13,14,14,
+ 15,16,15,14,16,15,17,15,15,16,16,17,12,13,13,15,
+ 15,13,14,14,16,16,13,14,14,16,15,15,15,16,17,17,
+ 15,16,15,17,16,14,14,15,13,16,15,14,16,14,17,15,
+ 15,16,14,17,16,15,17,15,18,16,16,17,16,18,14,15,
+ 15,17,16,15,16,16,17,17,15,16,15,17,16,16,17,17,
+ 18,18,16,17,15,18,16,11,12,12,14,14,13,13,14,14,
+ 15,13,14,13,16,14,15,15,15,16,16,15,16,15,17,16,
+ 12,13,13,15,14,13,13,14,15,15,14,15,14,16,15,15,
+ 15,16,15,16,16,16,16,18,16,12,13,13,15,15,14,14,
+ 15,15,16,13,14,13,16,15,16,16,16,17,17,15,16,15,
+ 17,15,14,15,14,16,15,14,15,15,16,16,15,16,15,17,
+ 16,16,15,16,15,17,17,18,17,18,17,15,15,15,16,16,
+ 16,16,16,17,17,14,15,15,17,16,17,17,18,18,18,16,
+ 17,15,18,15, 9,11,11,13,13,11,12,12,14,14,11,12,
+ 12,14,14,13,14,14,15,16,13,14,14,15,15,11,12,12,
+ 14,14,12,13,13,14,15,12,13,13,14,14,14,14,15,15,
+ 16,14,14,14,16,16,11,12,12,14,14,12,13,13,14,15,
+ 11,13,12,14,14,13,14,14,16,16,13,14,14,16,15,13,
+ 14,14,15,15,14,14,15,15,16,14,15,14,16,16,15,15,
+ 16,16,17,15,16,16,17,17,12,13,13,15,15,13,14,14,
+ 16,15,12,14,13,16,15,15,16,15,17,17,14,15,15,17,
+ 15,10,12,12,14,14,12,12,13,14,15,12,13,12,14,14,
+ 14,14,15,15,16,13,14,14,16,16,12,13,13,14,14,13,
+ 13,14,14,15,13,14,13,15,15,14,15,15,15,17,14,15,
+ 15,16,16,11,12,12,14,14,13,13,14,15,15,12,13,13,
+ 15,14,14,15,15,16,17,14,15,14,16,15,14,14,14,16,
+ 16,14,15,15,16,16,15,15,15,16,16,15,16,16,16,18,
+ 16,17,16,18,17,13,13,14,15,15,14,14,15,16,16,13,
+ 14,14,16,15,16,16,17,17,17,15,15,15,17,15,10,12,
+ 12,14,13,12,12,13,14,14,11,13,12,14,14,13,14,14,
+ 16,16,13,14,14,16,15,12,12,13,14,14,12,13,13,14,
+ 15,13,13,13,15,15,14,14,15,16,16,14,15,15,16,16,
+ 11,12,12,14,14,12,13,13,15,15,12,13,12,15,14,14,
+ 15,14,16,16,13,15,13,16,15,13,14,14,15,16,14,15,
+ 15,15,17,14,15,15,16,16,16,15,16,16,17,16,16,16,
+ 17,17,13,14,12,16,13,14,15,13,16,15,13,15,13,16,
+ 14,15,16,15,17,16,15,16,14,17,15,11,12,12,14,15,
+ 13,13,14,14,16,13,14,13,15,14,15,15,16,16,17,15,
+ 15,15,16,16,12,13,13,15,15,13,13,14,15,16,14,15,
+ 14,16,15,15,15,16,15,17,16,16,16,17,17,12,13,13,
+ 14,15,14,14,15,15,16,13,14,13,15,15,16,16,16,17,
+ 17,15,16,15,16,15,15,15,15,16,16,14,15,15,16,17,
+ 16,16,16,17,17,16,15,17,15,18,17,18,17,18,18,14,
+ 14,15,15,17,15,15,16,16,17,14,15,15,16,16,17,17,
+ 17,17,18,16,16,15,17,15,11,12,12,14,14,12,13,13,
+ 15,15,12,13,13,15,15,14,15,15,16,16,14,15,14,17,
+ 16,13,13,13,15,15,13,14,14,15,16,13,14,14,16,16,
+ 15,15,16,16,17,15,16,16,17,17,12,13,13,15,14,13,
+ 14,14,16,15,13,14,13,16,14,15,16,16,17,16,15,16,
+ 14,17,15,14,15,15,16,17,15,15,16,16,17,15,16,16,
+ 17,17,16,15,17,16,18,16,17,17,18,18,14,15,14,16,
+ 13,15,16,15,17,14,15,16,14,17,14,16,17,16,18,16,
+ 16,17,15,18,15,
+};
+
+static const static_codebook _44p9_p5_0 = {
+ 5, 3125,
+ (char *)_vq_lengthlist__44p9_p5_0,
+ 1, -528744448, 1616642048, 3, 0,
+ (long *)_vq_quantlist__44p9_p5_0,
+ 0
+};
+
+static const long _vq_quantlist__44p9_p5_1[] = {
+ 3,
+ 2,
+ 4,
+ 1,
+ 5,
+ 0,
+ 6,
+};
+
+static const char _vq_lengthlist__44p9_p5_1[] = {
+ 2, 3, 3, 3, 3, 3, 3,
+};
+
+static const static_codebook _44p9_p5_1 = {
+ 1, 7,
+ (char *)_vq_lengthlist__44p9_p5_1,
+ 1, -533200896, 1611661312, 3, 0,
+ (long *)_vq_quantlist__44p9_p5_1,
+ 0
+};
+
+static const long _vq_quantlist__44p9_p6_0[] = {
+ 1,
+ 0,
+ 2,
+};
+
+static const char _vq_lengthlist__44p9_p6_0[] = {
+ 2, 5, 5, 5, 7, 7, 5, 7, 7, 5, 7, 7, 7, 8, 9, 7,
+ 9, 9, 5, 7, 7, 7, 9, 9, 7, 9, 8, 5, 7, 8, 8, 9,
+ 10, 8, 9,10, 8, 9,10,10,10,12,10,11,11, 8,10,10,
+ 10,11,12,10,11,10, 5, 8, 7, 8,10,10, 8,10, 9, 8,
+ 10,10,10,10,11,10,12,11, 8,10, 9,10,11,11,10,12,
+ 10, 5, 8, 8, 7, 9,10, 8,10, 9, 7, 9,10, 9,10,11,
+ 9,11,11, 8,10, 9,10,11,11, 9,11,10, 7, 9, 9, 9,
+ 10,11, 9,11,11, 9, 9,11,10,10,13,11,12,12, 9,11,
+ 11,11,12,13,11,13,11, 7, 9, 9, 9,10,11, 9,11,10,
+ 9,11,10,10,10,12,11,13,12, 9,11,11,11,12,12,10,
+ 12,10, 5, 8, 8, 8, 9,10, 7,10, 9, 8, 9,10, 9,10,
+ 11,10,11,11, 7,10, 9, 9,11,11, 9,11,10, 7, 9, 9,
+ 9,10,11, 9,11,10, 9,11,11,10,10,12,11,12,12, 9,
+ 10,11,11,12,13,10,12,10, 7, 9, 9, 9,11,11, 9,11,
+ 10, 9,11,11,11,11,13,11,13,12, 9,11, 9,11,12,12,
+ 10,13,10,
+};
+
+static const static_codebook _44p9_p6_0 = {
+ 5, 243,
+ (char *)_vq_lengthlist__44p9_p6_0,
+ 1, -527106048, 1620377600, 2, 0,
+ (long *)_vq_quantlist__44p9_p6_0,
+ 0
+};
+
+static const long _vq_quantlist__44p9_p6_1[] = {
+ 1,
+ 0,
+ 2,
+};
+
+static const char _vq_lengthlist__44p9_p6_1[] = {
+ 6, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 8, 7, 8, 8, 7,
+ 8, 8, 7, 8, 7, 7, 8, 8, 7, 8, 8, 7, 8, 8, 8, 8,
+ 8, 8, 8, 8, 8, 8, 8, 8, 8, 9, 8, 8, 9, 8, 8, 8,
+ 8, 8, 8, 8, 8, 8, 7, 8, 8, 8, 8, 8, 8, 8, 8, 8,
+ 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 9,
+ 8, 7, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8,
+ 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8,
+ 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 9, 8, 8, 9, 8, 8,
+ 8, 8, 9, 9, 8, 9, 9, 7, 8, 8, 8, 8, 8, 8, 8, 8,
+ 8, 8, 8, 8, 8, 8, 8, 9, 8, 8, 8, 8, 8, 9, 9, 8,
+ 9, 8, 7, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8,
+ 9, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 7, 8, 8,
+ 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 9, 8, 9, 9, 8,
+ 8, 8, 8, 8, 9, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8,
+ 8, 8, 8, 8, 8, 9, 9, 8, 9, 9, 8, 8, 8, 8, 9, 8,
+ 8, 9, 8,
+};
+
+static const static_codebook _44p9_p6_1 = {
+ 5, 243,
+ (char *)_vq_lengthlist__44p9_p6_1,
+ 1, -530841600, 1616642048, 2, 0,
+ (long *)_vq_quantlist__44p9_p6_1,
+ 0
+};
+
+static const long _vq_quantlist__44p9_p7_0[] = {
+ 2,
+ 1,
+ 3,
+ 0,
+ 4,
+};
+
+static const char _vq_lengthlist__44p9_p7_0[] = {
+ 1,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,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,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,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,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,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,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,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,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,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,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,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,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,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 const static_codebook _44p9_p7_0 = {
+ 5, 3125,
+ (char *)_vq_lengthlist__44p9_p7_0,
+ 1, -510105088, 1635281408, 3, 0,
+ (long *)_vq_quantlist__44p9_p7_0,
+ 0
+};
+
+static const long _vq_quantlist__44p9_p7_1[] = {
+ 2,
+ 1,
+ 3,
+ 0,
+ 4,
+};
+
+static const char _vq_lengthlist__44p9_p7_1[] = {
+ 1, 4, 4,16,16, 4, 9,11,15,16, 4,12, 8,16,16,12,
+ 16,16,16,16,13,16,16,16,16, 5, 8,10,16,16, 9, 9,
+ 14,15,16,12,14,14,16,16,16,16,16,16,16,16,16,16,
+ 16,16, 5,11, 8,16,15,12,14,16,16,16, 9,15, 9,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, 6,11,11,
+ 16,16,12,13,16,16,16,12,16,14,16,16,16,16,16,16,
+ 16,16,16,16,16,16,11,15,15,16,16,14,16,16,16,16,
+ 16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,12,
+ 15,16,16,16,16,16,16,16,16,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,16,16,16,16,16,16,16,16,16,
+ 16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
+ 16,16,16,16,16,16,16,16,16,16, 5,11,11,16,16,12,
+ 15,16,16,16,12,16,14,16,16,16,16,16,16,16,16,16,
+ 16,16,16,12,15,15,16,16,14,16,16,16,16,16,16,16,
+ 16,16,16,16,16,16,16,16,16,16,16,16,11,15,15,16,
+ 16,16,16,16,16,16,15,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,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
+ 16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
+ 16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
+ 16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
+ 16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
+ 16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
+ 16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
+ 16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
+ 16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
+ 16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
+ 16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
+ 16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
+ 16,16,16,16,16,16,16,16,16,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,12,16,16,11,15,16,16,16,13,16,14,16,16,
+ 16,16,16,16,16,16,16,16,16,16,11,16,14,16,16,14,
+ 16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
+ 16,16,16,12,14,14,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,16,16,16,16,16,16,16,16,16,
+ 16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
+ 16,16,16,16,16,16,16,16,16,16,16,16,16,16, 8,13,
+ 15,16,16,15,15,16,16,16,14,16,16,16,16,16,16,16,
+ 16,16,16,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,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, 7,12,12,16,16,
+ 13,12,16,16,16,14,16,14,16,16,16,16,16,16,16,16,
+ 16,16,16,16,13,16,16,16,16,14,14,16,16,16,16,16,
+ 16,16,16,16,16,16,16,16,16,16,16,16,16,12,14,16,
+ 16,16,16,16,16,16,16,14,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,16,16,16,16,16,16,16,16,16,16,16,16,16,
+ 16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
+ 16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
+ 16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
+ 16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
+ 16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
+ 16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
+ 16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
+ 16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
+ 16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
+ 16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
+ 16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
+ 16,16,16,16,16,16,16,16,16,16,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,11,16,16,13,15,16,16,16,11,15,14,16,
+ 16,16,16,16,16,16,14,16,16,16,16,11,16,16,16,16,
+ 16,16,16,16,16,15,16,16,16,16,16,16,16,16,16,16,
+ 16,16,16,16,11,16,14,16,16,14,16,16,16,16,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,16,16,16,16,
+ 16,16,16,16,16,16,16,16,16,16,16,16,16,16,16, 7,
+ 11,11,16,16,13,13,16,16,16,13,16,13,16,16,16,16,
+ 16,16,16,16,16,16,16,16,12,16,15,16,16,14,16,16,
+ 16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
+ 16,12,14,16,16,16,16,16,16,16,16,14,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, 8,13,14,16,
+ 16,15,16,16,16,16,14,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,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,16,16,16,16,16,16,
+ 16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
+ 16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
+ 16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
+ 16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
+ 16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
+ 16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
+ 16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
+ 16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
+ 16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
+ 16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
+ 16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,
+ 16,16,16,16,16,16,16,16,16,16,16,16,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,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,
+};
+
+static const static_codebook _44p9_p7_1 = {
+ 5, 3125,
+ (char *)_vq_lengthlist__44p9_p7_1,
+ 1, -514619392, 1630767104, 3, 0,
+ (long *)_vq_quantlist__44p9_p7_1,
+ 0
+};
+
+static const long _vq_quantlist__44p9_p7_2[] = {
+ 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 const char _vq_lengthlist__44p9_p7_2[] = {
+ 1, 3, 2, 5, 4, 7, 7, 8, 8, 9,10,10,10,11,11,11,
+ 12,12,12,13,13,13,13,13,13,
+};
+
+static const static_codebook _44p9_p7_2 = {
+ 1, 25,
+ (char *)_vq_lengthlist__44p9_p7_2,
+ 1, -518864896, 1620639744, 5, 0,
+ (long *)_vq_quantlist__44p9_p7_2,
+ 0
+};
+
+static const long _vq_quantlist__44p9_p7_3[] = {
+ 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 const char _vq_lengthlist__44p9_p7_3[] = {
+ 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 5, 5, 5,
+ 5, 5, 5, 5, 5, 5, 5, 5, 5,
+};
+
+static const static_codebook _44p9_p7_3 = {
+ 1, 25,
+ (char *)_vq_lengthlist__44p9_p7_3,
+ 1, -529006592, 1611661312, 5, 0,
+ (long *)_vq_quantlist__44p9_p7_3,
+ 0
+};
+
+static const char _huff_lengthlist__44p9_short[] = {
+ 3, 3, 3, 3, 3, 3, 3, 3,
+};
+
+static const static_codebook _huff_book__44p9_short = {
+ 1, 8,
+ (char *)_huff_lengthlist__44p9_short,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
+static const long _vq_quantlist__44pn1_l0_0[] = {
+ 6,
+ 5,
+ 7,
+ 4,
+ 8,
+ 3,
+ 9,
+ 2,
+ 10,
+ 1,
+ 11,
+ 0,
+ 12,
+};
+
+static const char _vq_lengthlist__44pn1_l0_0[] = {
+ 1, 3, 3, 8, 8,10,10,10,10,10,10,10,10, 5, 7, 5,
+ 9, 8,10,10,10,10,11,10,11,10, 5, 5, 7, 8, 9,10,
+ 10,11,10,10,11,10,11,10,10,10,11,11,11,11,11,11,
+ 11,10,11,11,10,10,10,10,11,11,11,11,11,10,11,11,
+ 11,11,11,11,11,11,12,11,10,11,11,11,11,11,11,11,
+ 11,11,11,11,11,10,10,11,11,12,11,11,11,11,11,11,
+ 12,11,11,11,10,11,11,11,11,11,11,11,11,10,11,11,
+ 10,11,10,11,11,11,11,11,11,11,11,11,11,12,11,11,
+ 12,12,11,11,11,11,11,11,11,11,11,11,11,11,12,11,
+ 10,11,11,11,11,11,11,11,12,11,13,11,11,11,11,11,
+ 11,11,11,11,11,11,12,11,13,
+};
+
+static const static_codebook _44pn1_l0_0 = {
+ 2, 169,
+ (char *)_vq_lengthlist__44pn1_l0_0,
+ 1, -526516224, 1616117760, 4, 0,
+ (long *)_vq_quantlist__44pn1_l0_0,
+ 0
+};
+
+static const long _vq_quantlist__44pn1_l0_1[] = {
+ 2,
+ 1,
+ 3,
+ 0,
+ 4,
+};
+
+static const char _vq_lengthlist__44pn1_l0_1[] = {
+ 1, 4, 4, 7, 7, 4, 5, 6, 7, 7, 4, 6, 5, 7, 7, 7,
+ 6, 7, 6, 7, 7, 7, 6, 7, 6,
+};
+
+static const static_codebook _44pn1_l0_1 = {
+ 2, 25,
+ (char *)_vq_lengthlist__44pn1_l0_1,
+ 1, -533725184, 1611661312, 3, 0,
+ (long *)_vq_quantlist__44pn1_l0_1,
+ 0
+};
+
+static const long _vq_quantlist__44pn1_l1_0[] = {
+ 1,
+ 0,
+ 2,
+};
+
+static const char _vq_lengthlist__44pn1_l1_0[] = {
+ 1, 4, 4, 4, 4, 4, 4, 4, 4,
+};
+
+static const static_codebook _44pn1_l1_0 = {
+ 2, 9,
+ (char *)_vq_lengthlist__44pn1_l1_0,
+ 1, -516716544, 1630767104, 2, 0,
+ (long *)_vq_quantlist__44pn1_l1_0,
+ 0
+};
+
+static const char _huff_lengthlist__44pn1_lfe[] = {
+ 1, 3, 2, 3,
+};
+
+static const static_codebook _huff_book__44pn1_lfe = {
+ 2, 4,
+ (char *)_huff_lengthlist__44pn1_lfe,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
+static const char _huff_lengthlist__44pn1_long[] = {
+ 2, 3, 6, 7, 9,13,17, 3, 2, 5, 7, 9,13,17, 6, 5,
+ 5, 6, 9,12,16, 7, 7, 6, 6, 7,10,13,10,10, 9, 7,
+ 6,10,13,13,13,12,10,10,11,15,17,17,17,14,14,15,
+ 17,
+};
+
+static const static_codebook _huff_book__44pn1_long = {
+ 2, 49,
+ (char *)_huff_lengthlist__44pn1_long,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
+static const long _vq_quantlist__44pn1_p1_0[] = {
+ 1,
+ 0,
+ 2,
+};
+
+static const char _vq_lengthlist__44pn1_p1_0[] = {
+ 1, 2, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0,
+};
+
+static const static_codebook _44pn1_p1_0 = {
+ 5, 243,
+ (char *)_vq_lengthlist__44pn1_p1_0,
+ 1, -535822336, 1611661312, 2, 0,
+ (long *)_vq_quantlist__44pn1_p1_0,
+ 0
+};
+
+static const long _vq_quantlist__44pn1_p2_0[] = {
+ 1,
+ 0,
+ 2,
+};
+
+static const char _vq_lengthlist__44pn1_p2_0[] = {
+ 1, 5, 5, 0, 7, 7, 0, 8, 8, 0, 9, 9, 0,12,12, 0,
+ 8, 8, 0, 9, 9, 0,13,13, 0, 8, 8, 0, 6, 6, 0,11,
+ 11, 0,12,12, 0,12,12, 0,14,14, 0,11,12, 0,12,12,
+ 0,15,15, 0,12,12, 0, 5, 5, 0, 5, 5, 0, 6, 6, 0,
+ 7, 7, 0,10,10, 0, 6, 6, 0, 7, 7, 0,11,11, 0, 6,
+ 6, 0, 7, 7, 0,11,11, 0,12,11, 0,11,11, 0,14,14,
+ 0,10,10, 0,12,12, 0,15,15, 0,12,12, 0, 6, 6, 0,
+ 12,12, 0,12,12, 0,12,12, 0,14,14, 0,11,11, 0,12,
+ 12, 0,16,16, 0,12,12, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 8, 8, 0,12,12, 0,12,12, 0,12,12, 0,15,
+ 15, 0,12,12, 0,11,11, 0,16,16, 0,11,11, 0, 6, 6,
+ 0,12,12, 0,12,12, 0,13,13, 0,15,15, 0,12,12, 0,
+ 13,13, 0,15,15, 0,12,12, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0,
+};
+
+static const static_codebook _44pn1_p2_0 = {
+ 5, 243,
+ (char *)_vq_lengthlist__44pn1_p2_0,
+ 1, -533200896, 1614282752, 2, 0,
+ (long *)_vq_quantlist__44pn1_p2_0,
+ 0
+};
+
+static const long _vq_quantlist__44pn1_p2_1[] = {
+ 1,
+ 0,
+ 2,
+};
+
+static const char _vq_lengthlist__44pn1_p2_1[] = {
+ 1, 3, 3, 0, 9, 9, 0, 9, 9, 0,10,10, 0, 9, 9, 0,
+ 10,10, 0,10,10, 0,10,10, 0,10,10, 0, 7, 7, 0, 7,
+ 7, 0, 6, 6, 0, 8, 8, 0, 7, 7, 0, 8, 8, 0, 8, 8,
+ 0, 7, 7, 0, 8, 8, 0, 7, 7, 0, 9, 9, 0, 8, 9, 0,
+ 10,10, 0, 9, 9, 0,10,10, 0,10,11, 0, 9, 9, 0,10,
+ 10, 0, 9, 9, 0,11,11, 0,12,12, 0,12,12, 0,11,11,
+ 0,12,12, 0,13,13, 0,12,12, 0,13,13, 0, 8, 8, 0,
+ 12,12, 0,12,12, 0,13,13, 0,13,13, 0,13,13, 0,13,
+ 13, 0,13,13, 0,13,13, 0, 7, 7, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 9, 9, 0,11,11, 0,12,12, 0,13,13, 0,12,
+ 12, 0,13,13, 0,13,13, 0,12,12, 0,12,12, 0, 9, 9,
+ 0,12,12, 0,13,13, 0,14,14, 0,13,13, 0,14,14, 0,
+ 14,14, 0,13,13, 0,14,14, 0, 7, 7, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0,
+};
+
+static const static_codebook _44pn1_p2_1 = {
+ 5, 243,
+ (char *)_vq_lengthlist__44pn1_p2_1,
+ 1, -535822336, 1611661312, 2, 0,
+ (long *)_vq_quantlist__44pn1_p2_1,
+ 0
+};
+
+static const long _vq_quantlist__44pn1_p3_0[] = {
+ 1,
+ 0,
+ 2,
+};
+
+static const char _vq_lengthlist__44pn1_p3_0[] = {
+ 1, 6, 6, 6, 8, 8, 6, 8, 8, 7, 9, 9,10,11,11, 8,
+ 8, 8, 7, 9, 9,11,12,12, 9, 9, 9, 6, 7, 7,10,11,
+ 11,10,11,11,10,11,11,13,13,13,12,12,12,10,12,11,
+ 14,14,14,12,12,12, 6, 5, 5, 9, 6, 6, 9, 6, 6, 9,
+ 7, 7,12,10,10,11, 7, 6, 9, 7, 7,13,11,11,12, 7,
+ 7, 7, 8, 8,12,10,10,12,10,10,11,10,10,15,13,13,
+ 13, 9, 9,12,11,11,15,14,14,15,11,11, 8, 7, 7,12,
+ 11,11,12,11,11,11,11,11,14,13,14,14,12,12,12,11,
+ 11,16,15,15,14,12,12, 0,10,10, 0,12,12, 0,12,12,
+ 0,11,11, 0,14,14, 0,11,11, 0,11,11, 0,15,15, 0,
+ 11,11, 7, 8, 8,13,11,11,12,10,10,12,11,11,15,13,
+ 13,14,11,11,12,10,10,16,14,14,15,10,10, 9, 7, 7,
+ 13,11,12,13,12,11,12,11,11,15,14,14,14,12,12,13,
+ 12,12,16,15,15,15,12,12, 0,11,11, 0,12,12, 0,12,
+ 13, 0,12,12, 0,15,15, 0,12,12, 0,12,12, 0,16,15,
+ 0,12,12,
+};
+
+static const static_codebook _44pn1_p3_0 = {
+ 5, 243,
+ (char *)_vq_lengthlist__44pn1_p3_0,
+ 1, -531365888, 1616117760, 2, 0,
+ (long *)_vq_quantlist__44pn1_p3_0,
+ 0
+};
+
+static const long _vq_quantlist__44pn1_p3_1[] = {
+ 2,
+ 1,
+ 3,
+ 0,
+ 4,
+};
+
+static const char _vq_lengthlist__44pn1_p3_1[] = {
+ 2, 3, 4, 9, 9,10,12,12,12,11,10,12,12,13,12,11,
+ 13,12,11,11,11,12,12,12,11,11,13,13,13,13,11,12,
+ 12,14,14,12,13,13,13,13,11,13,13,13,13,11,13,13,
+ 13,13,11,13,13,13,13,11,12,12,14,14,12,13,13,12,
+ 12,11,13,13,13,13,11,13,13,12,12,11,13,13,13,13,
+ 12,12,13,14,14,12,13,13,12,12,11,13,13,13,13,11,
+ 13,13,12,12,11,13,13,13,13,12,13,13,14,14,12,13,
+ 13,12,12,11,13,13,13,13,11,13,13,12,12,11,10,10,
+ 10,10,12,10,10,11,11,12, 9, 9,11,11,13,11,11,10,
+ 10,13,10,10,10,10,13,11,11,12,12,13,10,10,12,12,
+ 14,12,11,12,12,13,11,11,11,12,13,12,12,12,12,13,
+ 11,11,12,12,13,10,10,12,12,14,11,11,12,12,13,11,
+ 11,12,12,13,11,11,12,12,14,12,12,12,12,14,10,10,
+ 11,11,14,12,11,11,11,13,11,11,11,11,13,12,12,11,
+ 11,14,12,12,12,11,14,10,10,11,11,14,12,11,11,11,
+ 13,11,11,11,11,13,12,12,11,11,11,11,11,10,10,12,
+ 10,11, 9, 9,12,12,12,11,11,13,12,12, 9, 9,13,13,
+ 13,10,10,13,13,13,12,12,13,13,13,14,14,13,12,12,
+ 11,11,14,13,13,12,12,14,13,13,11,11,13,13,13,12,
+ 11,13,13,13,14,14,13,12,12,10,10,14,13,13,11,11,
+ 13,13,13,10,10,13,13,13,11,11,14,13,13,14,14,14,
+ 12,12,10,10,13,13,13,11,11,13,13,13,10,10,13,13,
+ 13,11,11,14,13,13,14,14,14,13,13,10,10,13,13,13,
+ 11,11,13,13,13,10,10,14,12,12, 8, 8,14,12,12, 9,
+ 9,14,11,11, 9, 9,14,12,12, 8, 8,14,12,12, 7, 7,
+ 15,13,13,10,10,15,12,12,10,10,15,13,13,10,10,15,
+ 12,13, 9, 9,15,13,13,10,10,15,13,13,10,10,15,12,
+ 12,10,10,15,13,13,10,10,15,13,13, 9, 9,15,13,13,
+ 10,10,15,13,13,10,10,15,12,12,10,10,15,13,13, 9,
+ 9,14,13,12, 9, 9,14,13,13, 9, 9,15,13,13,10,10,
+ 15,12,12,10,10,15,13,13, 9, 9,15,13,13, 9, 9,14,
+ 13,13, 9, 9,14,12,12, 8, 8,13,13,13, 8, 8,14,14,
+ 13, 9, 9,14,14,13, 7, 7,14,14,14, 8, 8,14,14,14,
+ 10,10,15,14,14,12,12,14,14,14, 9, 9,15,14,14,10,
+ 10,14,14,14, 9, 9,14,14,14,10, 9,15,14,14,12,12,
+ 14,14,14, 9, 9,15,14,14,10,10,14,14,14, 9, 9,15,
+ 14,15, 9, 9,15,14,14,11,11,14,14,14, 8, 8,14,14,
+ 14, 9, 9,14,14,14, 8, 8,14,15,14,10,10,15,14,14,
+ 11,11,14,14,14, 8, 8,15,14,14, 9, 9,14,14,14, 8,
+ 8,12,12,12,13,13,16,16,15,12,12,17,16,16,13,13,
+ 17,16,16,11,11,17,16,16,12,12,17,16,17,13,13,17,
+ 16,16,14,14,17,17,16,12,12,18,16,16,13,13,17,16,
+ 17,12,12,17,17,17,13,13,18,16,16,14,14,18,17,17,
+ 12,12,17,17,17,13,13,18,17,17,13,13,17,17,17,13,
+ 13,17,16,16,14,14,17,17,17,12,12,16,16,17,13,13,
+ 17,17,16,12,12,18,17,17,13,13,18,16,16,14,14,18,
+ 17,17,12,12,19,16,17,13,13,17,16,17,12,12,13,14,
+ 14,10,10,16,14,14,13,13,17,15,15,14,14,17,14,14,
+ 13,13,16,14,14,13,13,17,16,15,14,14,16,16,16,15,
+ 15,17,15,15,14,14,17,15,15,14,14,17,15,15,14,14,
+ 17,16,15,14,14,16,16,16,15,15,18,15,15,13,13,16,
+ 16,15,14,14,17,15,15,14,13,17,15,15,14,14,16,16,
+ 16,15,15,18,15,14,13,13,17,15,15,14,14,18,14,15,
+ 13,13,18,15,15,14,14,16,16,16,15,15,17,15,15,13,
+ 13,17,15,15,14,14,17,15,15,13,13,13,11,11,10,10,
+ 16,14,14,13,13,17,14,15,14,14,17,15,15,12,12,17,
+ 14,14,12,12,16,15,15,14,14,16,14,14,14,14,16,15,
+ 15,14,14,16,15,15,14,14,16,15,15,14,14,16,15,15,
+ 14,14,16,15,14,15,15,17,15,15,14,14,17,15,15,14,
+ 14,17,15,15,14,14,17,15,16,14,14,16,14,14,14,14,
+ 17,15,15,13,13,17,15,15,13,13,16,15,15,13,13,17,
+ 16,16,14,14,17,15,14,15,14,17,15,15,13,13,17,15,
+ 15,13,13,17,15,15,13,13,14,14,14, 9, 9,14,14,14,
+ 18,19,14,15,15,19,18,14,14,14,19,19,15,14,14,19,
+ 19,15,16,16,19,19,15,16,16,19,19,15,15,15,19,19,
+ 15,16,16,19,20,15,15,15,19,19,15,15,15,19,19,15,
+ 16,16,20,20,15,15,15,18,19,15,15,16,19,20,15,15,
+ 15,19,18,15,15,15,18,18,15,16,16,21,20,15,15,15,
+ 19,19,15,15,15,19,19,15,15,14,19,20,15,15,15,20,
+ 19,15,16,16,19,20,15,15,15,19,19,15,15,15,20,21,
+ 15,14,15,19,19,14,12,12, 9, 9,14,14,15,21,19,14,
+ 14,14,18,19,14,15,15,19,20,14,14,14,19,19,15,15,
+ 15,19,20,15,15,14,21,19,15,15,15,20,19,15,14,15,
+ 20,21,15,15,15,18,18,15,15,15,20,21,16,14,14,18,
+ 19,15,15,15,20,19,15,15,15,18,21,15,15,15,19,19,
+ 15,15,15,19,20,16,15,14,20,19,15,16,15,19,19,15,
+ 15,15,19, 0,14,15,15,19,19,15,15,15,19,19,15,15,
+ 14,20,19,15,15,15,20,19,15,15,15,19,19,15,15,15,
+ 20,19,12,12,12,13,13,16,15,16,11,11,16,16,16,12,
+ 12,17,16,16,11,11,17,16,16,12,11,17,17,17,13,13,
+ 18,16,16,14,14,18,18,17,13,13,17,16,16,13,13,17,
+ 17,17,13,13,17,16,17,12,12,17,15,16,13,13,17,16,
+ 17,12,12,17,16,16,13,12,17,16,16,12,12,18,17,17,
+ 13,13,18,16,16,13,14,18,17,17,12,12,17,16,16,12,
+ 12,17,17,17,12,12,18,17,17,13,13,17,16,16,14,14,
+ 17,17,17,12,12,17,16,16,12,12,18,17,17,12,12,13,
+ 14,14, 9, 9,16,14,14,13,13,16,15,15,14,14,16,14,
+ 14,13,13,16,14,14,13,13,17,16,15,15,15,16,15,16,
+ 16,15,17,15,15,14,14,17,15,15,15,15,17,15,15,14,
+ 14,17,15,15,14,14,16,15,16,16,16,17,15,15,14,14,
+ 16,15,15,14,15,16,15,15,14,14,17,15,15,15,15,16,
+ 16,16,15,16,18,15,14,13,14,17,15,15,14,14,17,14,
+ 14,13,13,17,15,15,14,14,16,15,15,15,15,17,15,14,
+ 14,14,17,15,15,14,14,17,14,14,13,13,13,11,11,11,
+ 11,16,14,14,12,12,16,14,14,13,13,16,14,14,12,12,
+ 16,14,14,12,12,16,15,15,13,13,17,14,14,14,14,17,
+ 15,15,13,13,16,15,15,14,13,16,15,15,13,13,16,15,
+ 15,13,13,16,14,14,14,14,16,15,15,13,13,16,14,15,
+ 13,13,17,15,15,13,13,17,15,15,13,13,16,14,14,14,
+ 14,17,15,15,12,12,17,14,15,13,13,17,15,15,12,12,
+ 16,15,15,13,13,17,14,14,14,14,17,15,15,12,12,17,
+ 15,15,13,13,16,15,15,12,12,14,15,15, 8, 8,14,14,
+ 14,19,18,14,15,15,19,20,14,14,14,19,19,14,14,15,
+ 19,20,15,16,15,19,21,15,16,16,21,19,15,15,15,20,
+ 19,15,16,16,19,20,15,15,15,19,18,15,16,15,20,19,
+ 15,16,16,19,20,15,15,15,19,19,15,16,15,20,20,14,
+ 15,15,19,19,15,15,15,21,19,15,17,16,19,20,15,14,
+ 15, 0,21,15,15,15,19,20,14,14,14,19,19,15,15,15,
+ 20,19,15,16,16,19,19,15,15,15,19,18,15,15,15,20,
+ 19,14,14,15,18,18,14,12,12, 9, 9,14,14,14,18,18,
+ 14,14,14,18,18,14,15,14,19,18,14,14,14,19,18,15,
+ 15,15,19,20,15,14,14,18,18,15,15,15,20,19,15,15,
+ 15,18,20,15,15,15,19,18,15,15,15,19,19,15,14,14,
+ 19,21,15,15,15,20,20,15,15,15,18,19,14,15,15,19,
+ 20,15,15,15,20,19,15,14,14,19,21,15,15,15,18,19,
+ 15,14,15,20,19,14,15,15,21,21,14,15,15,19,20,15,
+ 14,14,19,20,15,15,15,19,20,15,15,14,20,20,14,15,
+ 15,20,19,13,12,12,13,13,17,16,16,11,11,17,16,16,
+ 12,12,18,17,16,11,11,18,16,16,11,11,17,17,17,13,
+ 13,18,16,16,13,13,18,17,17,12,12,18,16,16,13,13,
+ 18,17,17,12,12,18,17,17,13,13,18,16,16,14,14,18,
+ 16,17,12,12,18,17,17,13,13,17,17,17,12,12,17,17,
+ 17,12,12,17,16,15,13,13,18,16,16,11,11,17,16,16,
+ 12,12,17,16,17,11,11,18,17,17,13,12,17,16,16,13,
+ 13,17,17,17,12,12,17,16,17,12,12,18,17,17,11,11,
+ 14,14,14, 9, 9,16,14,14,13,13,17,15,15,14,14,17,
+ 14,14,13,13,16,14,14,13,13,17,15,15,14,14,16,16,
+ 16,16,15,18,15,15,14,14,17,16,15,15,15,17,15,15,
+ 14,14,17,15,15,14,15,16,16,16,15,16,18,15,15,14,
+ 14,17,15,15,14,15,17,15,15,14,14,17,15,15,14,14,
+ 16,16,16,15,16,17,14,14,13,13,17,15,15,14,14,18,
+ 15,15,13,13,17,15,15,14,14,16,16,16,15,15,17,14,
+ 14,13,13,17,15,15,14,14,17,14,14,13,13,13,11,11,
+ 11,11,16,14,14,12,12,16,14,14,12,13,17,15,14,11,
+ 11,17,14,14,11,11,17,15,15,13,14,17,14,14,14,14,
+ 17,15,15,13,13,17,14,14,13,13,17,15,15,13,13,17,
+ 15,15,13,13,17,14,14,14,14,17,15,15,13,13,18,14,
+ 15,13,13,17,15,15,13,13,16,15,15,13,13,17,14,14,
+ 13,13,17,15,15,12,12,16,14,14,12,12,16,15,15,12,
+ 12,17,16,15,13,13,17,14,14,13,13,17,15,15,12,12,
+ 16,15,15,12,12,16,15,15,12,12,13,15,15, 8, 8,14,
+ 14,14,18,19,14,15,15,19,20,14,14,14,18,18,14,15,
+ 15,18,18,15,16,16,19,19,15,16,17,20,20,15,15,15,
+ 19,19,15,16,16,18,20,15,15,15,19,19,15,15,16,18,
+ 18,15,17,16,19,19,15,15,15,18,21,15,16,16,21,20,
+ 15,15,15,19,21,15,16,15,20,19,15,16,17,20,20,15,
+ 15,15,19,19,15,16,16,21,20,15,15,15,19,20,15,15,
+ 15,19,19,15,16,16,20,19,15,15,15,19,19,15,16,15,
+ 20,21,15,15,15,21,19,14,12,12, 8, 8,14,14,14,20,
+ 18,14,13,13,19,19,14,14,14,19,18,15,14,14,19,20,
+ 14,15,15,20,20,15,14,14,21,20,15,15,15,20,20,15,
+ 15,14,21,19,15,15,15,19,19,15,15,15,19,20,15,14,
+ 14,20,20,15,15,15,19,20,15,14,14,19,20,15,15,15,
+ 20,20,15,15,15,20,19,15,14,14,20,21,15,15,15,20,
+ 21,15,14,14,20, 0,15,16,15,20,21,15,15,15,19,20,
+ 15,14,14,19,19,15,15,15,19,20,15,15,15,19,19,15,
+ 15,15,18,20,13,12,12,13,13,18,16,17,12,12,17,16,
+ 16,12,12,17,17,16,11,11,18,16,16,11,11,17,17,18,
+ 13,13,18,16,16,14,14,18,17,17,13,13,18,16,16,13,
+ 13,18,17,17,12,12,17,17,16,13,13,17,16,16,13,14,
+ 18,17,17,12,12,18,16,16,12,13,17,16,17,12,12,17,
+ 18,17,13,13,18,16,16,13,13,18,17,17,12,12,17,16,
+ 16,12,12,17,17,17,11,11,17,16,17,12,12,17,16,16,
+ 13,13,17,16,16,11,11,17,16,16,12,12,18,16,17,11,
+ 11,14,14,14, 9, 9,16,14,15,13,13,17,15,15,14,14,
+ 17,14,14,12,12,16,14,14,13,13,18,15,15,15,15,17,
+ 15,16,15,16,18,15,15,14,14,17,15,16,15,15,17,15,
+ 15,14,14,18,15,15,14,14,16,16,16,16,15,17,15,15,
+ 14,14,16,15,15,14,14,17,15,15,14,14,17,15,15,14,
+ 14,17,16,16,15,15,17,15,14,13,13,17,15,15,14,14,
+ 17,15,15,13,13,17,15,15,14,14,16,16,16,15,15,18,
+ 15,14,14,14,17,15,15,14,14,18,15,15,13,13,13,12,
+ 12,11,11,16,14,14,12,12,16,14,14,13,13,17,15,15,
+ 12,12,17,14,14,12,12,17,15,15,14,14,17,14,14,14,
+ 14,17,15,15,13,13,17,15,14,13,13,17,15,15,13,13,
+ 17,15,15,13,13,16,14,14,14,14,17,15,15,13,13,16,
+ 14,14,13,13,16,15,15,13,13,17,15,16,13,13,17,14,
+ 14,14,13,17,15,15,12,12,16,15,14,12,12,17,15,15,
+ 12,12,16,15,16,13,13,16,14,14,14,13,17,15,15,12,
+ 12,16,14,14,12,12,17,15,15,12,12,14,15,15, 8, 8,
+ 14,14,14,18,18,14,15,15,19,18,14,14,14,18,18,14,
+ 15,15,19,20,15,16,15,21,18,15,16,16,18, 0,15,15,
+ 15,19,20,15,16,16,20, 0,15,16,15,19,18,15,15,15,
+ 19,19,15,16,16,21,19,15,15,15,19,19,15,16,16,20,
+ 20,15,15,15,19,19,15,15,15,19,18,15,16,16,20,20,
+ 15,14,15,20,19,15,15,15,19,20,15,15,15,19,19,15,
+ 16,15,19,20,15,16,16,19,20,15,15,15,19,19,15,16,
+ 15,20,20,15,15,15,20,18,13,12,12, 8, 8,14,14,14,
+ 19,20,14,14,14,19,19,14,15,15,20,20,14,14,14,18,
+ 19,15,15,15,20, 0,15,14,14,18,20,15,15,15,19,19,
+ 15,15,15,21,19,15,15,15,19,20,15,15,15,20,21,15,
+ 14,14,20,19,15,15,15,20,19,15,15,14,21,19,15,15,
+ 15,19,18,15,15,15,20,19,15,14,14,19,19,15,15,16,
+ 20,19,15,15,15,20, 0,15,15,15,19,21,15,15,15,22,
+ 20,15,14,14,22,19,15,15,15,19,20,15,14,14,20,19,
+ 14,15,15,19,21,
+};
+
+static const static_codebook _44pn1_p3_1 = {
+ 5, 3125,
+ (char *)_vq_lengthlist__44pn1_p3_1,
+ 1, -533725184, 1611661312, 3, 0,
+ (long *)_vq_quantlist__44pn1_p3_1,
+ 0
+};
+
+static const long _vq_quantlist__44pn1_p4_0[] = {
+ 2,
+ 1,
+ 3,
+ 0,
+ 4,
+};
+
+static const char _vq_lengthlist__44pn1_p4_0[] = {
+ 1, 7, 7,14,14, 6, 8, 8,15,16, 7, 8, 8,16,15, 0,
+ 14,14,17,17, 0,14,14,16,16, 7, 9, 9,16,16,10,11,
+ 11,17,18, 9, 8, 8,16,16, 0,14,14,19,19, 0,14,14,
+ 17,16, 8, 9, 9,16,16,12,12,12,17,17,10, 9, 9,16,
+ 16, 0,15,14,18,20, 0,14,14,17,17, 0,15,15,18,17,
+ 0,21, 0, 0,21, 0,13,13,17,17, 0,17,17, 0, 0, 0,
+ 15,15,17,17, 0,15,15,17,18, 0, 0, 0, 0,21, 0,13,
+ 13,17,17, 0,18,18, 0,21, 0,16,15,17,18, 6, 7, 7,
+ 14,14, 9,10,10,16,16,11,10,10,15,15, 0,21, 0,20,
+ 21, 0, 0, 0,18,20,10,10,10,15,16,12,13,13,18,18,
+ 12,11,11,15,15, 0, 0, 0,20,20, 0, 0,21,19,19,12,
+ 11,11,15,15,15,14,14,18,18,13,11,11,15,16, 0, 0,
+ 0,20,19, 0, 0, 0,20,21, 0, 0,20,19,19, 0, 0, 0,
+ 0, 0, 0,20, 0,17,18, 0, 0,21, 0, 0, 0, 0, 0,21,
+ 0, 0,21, 0,20,19, 0, 0, 0, 0, 0, 0,21, 0,18,18,
+ 0, 0, 0,21, 0, 0, 0, 0, 0,20, 7, 6, 6,13,13, 9,
+ 6, 6,12,12, 9, 7, 7,14,14, 0,10,10,12,12, 0,11,
+ 11,15,15, 9, 7, 7,14,14,12, 9, 9,14,14,10, 7, 7,
+ 14,13, 0,11,11,16,15, 0,11,11,14,14, 9, 7, 7,14,
+ 14,13,10,10,14,14,11, 7, 7,14,13, 0,11,11,16,16,
+ 0,11,11,14,14, 0,12,12,16,16, 0,19, 0,17,18, 0,
+ 10,10,14,14, 0,15,14, 0, 0, 0,12,12,14,14, 0,12,
+ 12,15,15, 0,20, 0,18,19, 0,10,10,14,14, 0,16,15,
+ 0,20, 0,13,13,14,14, 0,11,11,13,13, 0,12,13,16,
+ 16, 0,12,12,16,16, 0,16,16, 0,21, 0,17,18, 0, 0,
+ 0,12,12,16,16, 0,15,15,18, 0, 0,12,12,16,16, 0,
+ 17,16,21,21, 0,16,17, 0, 0, 0,13,13,17,16, 0,16,
+ 16,20,21, 0,12,12,17,16, 0,17,17, 0,21, 0,17,17,
+ 21,21, 0,17,18, 0, 0, 0, 0, 0, 0, 0, 0,15,15, 0,
+ 0, 0,18,21, 0, 0, 0,18,19, 0, 0, 0,18,17,21,21,
+ 0, 0, 0, 0, 0, 0,16,16, 0, 0, 0, 0, 0, 0, 0, 0,
+ 19,19, 0, 0, 0,11,11,12,12, 0,11,11,10,10, 0,12,
+ 12,13,13, 0,12,12, 9, 9, 0,14,14,13,13, 0,12,12,
+ 13,13, 0,14,14,12,13, 0,11,11,12,12, 0,13,13,13,
+ 13, 0,13,13,13,13, 0,12,12,13,13, 0,14,14,12,12,
+ 0,11,11,12,12, 0,14,13,14,14, 0,13,13,13,13, 0,
+ 15,15,14,15, 0, 0, 0,16,16, 0,12,12,13,13, 0,16,
+ 17,20,21, 0,14,13,12,12, 0,14,14,14,14, 0,21, 0,
+ 16,16, 0,12,12,13,13, 0,18,17,21, 0, 0,14,14,13,
+ 13, 7, 8, 8,17,17,11,10,10,18,18,12,10,10,17,17,
+ 0,15,15,20,18, 0,15,15,17,17,11, 9, 9,17,17,14,
+ 12,12,19,19,13, 9, 9,16,16, 0,15,14, 0,19, 0,14,
+ 14,16,16,12,10,10,20,18,16,13,13,21,20,14,10,10,
+ 17,17, 0,15,15,21,20, 0,15,14,17,17, 0,15,15,21,
+ 21, 0, 0,21, 0, 0, 0,13,13,18,18, 0,19,16, 0, 0,
+ 0,15,15,17,16, 0,16,16, 0,21, 0, 0, 0, 0,21, 0,
+ 13,14,18,17, 0,20,19, 0, 0, 0,15,15,18,18, 8, 7,
+ 7,15,15,12,11,11,17,16,13,11,11,16,16, 0, 0, 0,
+ 21,20, 0, 0, 0, 0,20,11,10,10,17,17,14,13,13,19,
+ 18,14,11,11,16,16, 0,20, 0,21,19, 0, 0,21, 0,20,
+ 12,11,11,17,17,16,15,15, 0,19,14,11,11,17,16, 0,
+ 21, 0, 0,19, 0, 0, 0,21,20, 0, 0,21,20, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0,19,21, 0, 0, 0, 0, 0, 0, 0, 0,
+ 19,20, 0, 0, 0,20,21, 0, 0, 0, 0, 0, 0,20, 0,19,
+ 21, 0, 0, 0, 0, 0, 0, 0, 0,21,20,11,10, 9,15,15,
+ 14,11,11,15,15,14,11,11,16,16, 0,14,14,14,14, 0,
+ 16,15,17,16,13,11,11,16,16,16,13,13,16,16,15,10,
+ 10,15,15, 0,14,15,17,17, 0,14,14,16,15,13,11,11,
+ 16,16,17,15,14,16,16,15,10,10,15,15, 0,15,15,17,
+ 18, 0,15,15,16,16, 0,16,16,17,17, 0,21, 0,21,20,
+ 0,13,13,15,15, 0,18,18, 0,21, 0,15,15,15,15, 0,
+ 16,16,17,17, 0, 0, 0, 0,18, 0,13,13,15,15, 0,19,
+ 18, 0, 0, 0,15,15,16,16, 0,12,12,15,15, 0,13,13,
+ 17,17, 0,13,13,17,18, 0,16,17,21, 0, 0,20,18, 0,
+ 0, 0,13,13,17,17, 0,15,15, 0,18, 0,12,12,17,18,
+ 0,16,16, 0, 0, 0,17,17,21, 0, 0,13,13,18,18, 0,
+ 16,16,21,21, 0,12,12,17,18, 0,16,17,21, 0, 0,17,
+ 17, 0,21, 0,17,18, 0, 0, 0, 0, 0, 0, 0, 0,16,15,
+ 0,21, 0,21,19, 0, 0, 0,18,18, 0, 0, 0,18,19, 0,
+ 0, 0, 0, 0, 0, 0, 0,16,16,21,21, 0,20,19, 0, 0,
+ 0,19,21, 0,21, 0,12,12,15,15, 0,12,12,15,16, 0,
+ 13,13,16,16, 0,14,14,15,15, 0,16,15,17,17, 0,13,
+ 13,17,17, 0,15,15,16,18, 0,12,12,16,16, 0,14,14,
+ 17,17, 0,15,14,16,16, 0,13,13,16,16, 0,16,15,17,
+ 17, 0,12,12,16,16, 0,15,15,18,18, 0,14,14,17,16,
+ 0,16,16,17,18, 0, 0, 0,20,21, 0,13,13,16,17, 0,
+ 17,17, 0, 0, 0,15,15,16,16, 0,15,16,17,17, 0, 0,
+ 0,19, 0, 0,13,13,15,16, 0,19,18, 0, 0, 0,16,15,
+ 16,17, 8, 8, 8,17,17,13,11,10,17,18,13,10,10,17,
+ 17, 0,15,15,20,19, 0,15,15,17,17,12,10,10,19,18,
+ 15,12,12,20,18,14,10,10,17,16, 0,15,15,20,20, 0,
+ 14,15,16,16,13,10,10,17,17,17,14,14, 0,18,15,10,
+ 10,17,17, 0,16,15,20,20, 0,14,14,17,17, 0,15,16,
+ 20,20, 0, 0,21, 0, 0, 0,13,13,17,17, 0,18,17, 0,
+ 0, 0,15,16,17,18, 0,15,15,18,21, 0, 0, 0,21, 0,
+ 0,13,13,18,18, 0,19,19, 0, 0, 0,16,16,18,17, 9,
+ 8, 8,15,15,12,11,11,16,16,13,11,11,16,15, 0, 0,
+ 0, 0,21, 0,21, 0,19,19,12,11,11,17,18,15,13,13,
+ 18,19,14,11,11,16,16, 0, 0,21,21,19, 0, 0, 0,21,
+ 20,13,11,11,18,17,17,14,15,20,21,15,11,12,16,16,
+ 0, 0, 0,20, 0, 0, 0,21, 0,19, 0, 0, 0, 0,19, 0,
+ 0, 0, 0, 0, 0,21,21,19,19, 0, 0, 0,21, 0, 0, 0,
+ 0,19,21, 0, 0, 0,19,20, 0, 0, 0,21, 0, 0, 0,21,
+ 19,19, 0, 0, 0, 0, 0, 0, 0, 0,21,20, 0,11,11,15,
+ 15, 0,12,12,15,16, 0,12,12,16,16, 0,15,15,16,15,
+ 0,16,16,17,17, 0,12,12,17,17, 0,14,14,17,17, 0,
+ 11,11,16,16, 0,15,15,19,18, 0,15,15,16,16, 0,12,
+ 12,17,16, 0,14,15,16,16, 0,11,11,15,15, 0,16,16,
+ 18,19, 0,15,15,15,16, 0,17,17,18,20, 0,21, 0,21,
+ 19, 0,14,14,16,16, 0,18,18, 0, 0, 0,16,16,15,15,
+ 0,16,16,18,17, 0, 0, 0,19,20, 0,14,14,16,16, 0,
+ 19,19, 0, 0, 0,16,17,15,15, 0,12,12,14,15, 0,13,
+ 13,16,17, 0,12,12,17,17, 0,17,16, 0, 0, 0,18,17,
+ 21, 0, 0,13,13,19,17, 0,15,15,20,21, 0,12,12,17,
+ 17, 0,17,17, 0, 0, 0,17,17, 0, 0, 0,13,13,17,18,
+ 0,16,16,21, 0, 0,12,12,17,17, 0,17,17, 0, 0, 0,
+ 17,17, 0, 0, 0,18,21, 0, 0, 0, 0, 0, 0, 0, 0,15,
+ 15,21, 0, 0,20,21, 0, 0, 0,18,19, 0, 0, 0,18,17,
+ 0, 0, 0, 0, 0, 0, 0, 0,16,16,21, 0, 0,21,21, 0,
+ 0, 0,18,19, 0, 0, 0,12,12,16,16, 0,13,13,16,17,
+ 0,13,13,17,16, 0,14,14,16,16, 0,16,15,19,18, 0,
+ 13,13,17,17, 0,15,15,18,18, 0,12,12,16,16, 0,15,
+ 15,18,19, 0,15,15,17,16, 0,13,13,17,17, 0,16,16,
+ 18,17, 0,12,12,17,16, 0,15,15,18,18, 0,15,15,17,
+ 17, 0,16,16, 0,19, 0, 0, 0, 0, 0, 0,14,14,16,17,
+ 0,18,18, 0, 0, 0,15,15,17,17, 0,16,16,21,19, 0,
+ 21, 0,21,21, 0,13,14,16,16, 0,19,19, 0, 0, 0,15,
+ 16,16,16, 0,11,11,17,16, 0,15,14,19,18, 0,14,14,
+ 19,19, 0,18,17,18,20, 0,17,17,18,19, 0,13,13,17,
+ 17, 0,16,17,21,18, 0,13,13,17,16, 0,18,17,19, 0,
+ 0,16,17,18,18, 0,12,12,19,18, 0,18,18,20,20, 0,
+ 13,13,17,17, 0,17,17,21, 0, 0,16,17,17,18, 0,18,
+ 17,19,18, 0, 0, 0, 0, 0, 0,14,14,17,17, 0,19,19,
+ 21, 0, 0,16,16,16,17, 0,17,17,19,20, 0, 0, 0, 0,
+ 21, 0,15,15,17,18, 0,21,21, 0, 0, 0,17,17,17,18,
+ 0,10,10,15,15, 0,15,14,17,18, 0,14,14,16,16, 0,
+ 0, 0,18, 0, 0,21, 0,19, 0, 0,13,13,17,16, 0,17,
+ 17,18, 0, 0,14,14,16,15, 0, 0, 0,21, 0, 0,21, 0,
+ 19,18, 0,13,13,17,17, 0,18,18,20,20, 0,15,15,16,
+ 16, 0, 0, 0,21,21, 0, 0, 0,20,20, 0, 0, 0,19, 0,
+ 0, 0, 0, 0, 0, 0,21,20,18,18, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0,20, 0, 0, 0, 0,20, 0, 0, 0, 0, 0, 0, 0,
+ 0,19,18, 0, 0, 0, 0,21, 0, 0, 0,18,20, 0,18,19,
+ 16,17, 0,21,19,17,17, 0, 0,21,18,18, 0, 0,21,20,
+ 19, 0, 0, 0,20,20, 0, 0,21,17,17, 0, 0, 0,19,19,
+ 0,20,20,17,17, 0, 0, 0, 0,20, 0, 0,20,18,18, 0,
+ 21,20,17,17, 0, 0, 0,20,21, 0,19, 0,17,17, 0, 0,
+ 21, 0, 0, 0,20, 0,18,19, 0, 0, 0,21,21, 0, 0, 0,
+ 0,21, 0,20,20,17,17, 0, 0, 0, 0, 0, 0,21, 0,18,
+ 17, 0, 0, 0,20,19, 0, 0, 0, 0,21, 0,20,20,17,17,
+ 0, 0, 0, 0, 0, 0,21,21,18,18, 0,12,12,15,14, 0,
+ 14,14,17,17, 0,14,14,17,16, 0,18,18,21, 0, 0,19,
+ 20, 0, 0, 0,13,13,18,17, 0,16,16,19,18, 0,13,13,
+ 17,17, 0,17,17, 0, 0, 0,17,17,21, 0, 0,13,13,17,
+ 17, 0,17,17,21,20, 0,13,13,18,17, 0,18,19,21,21,
+ 0,19,18, 0, 0, 0,18,17, 0, 0, 0, 0, 0, 0, 0, 0,
+ 15,16, 0, 0, 0,21,21, 0, 0, 0,20,18,21, 0, 0,17,
+ 18, 0, 0, 0, 0, 0, 0, 0, 0,15,16, 0, 0, 0, 0,20,
+ 0, 0, 0, 0,19, 0, 0, 0,15,15,18,19, 0,18,17,21,
+ 0, 0,16,18, 0,20, 0,17,18,21, 0, 0,18,20, 0, 0,
+ 0,16,16,21,21, 0,19,20,21, 0, 0,16,15, 0,21, 0,
+ 18,20, 0, 0, 0,18,19, 0, 0, 0,16,15,21,21, 0,21,
+ 0, 0, 0, 0,16,15,21, 0, 0,20,19, 0, 0, 0,18,21,
+ 21, 0, 0,20,18, 0, 0, 0, 0, 0, 0, 0, 0,16,16, 0,
+ 20, 0,21, 0, 0, 0, 0,17,18,20,21, 0,18,18,21,21,
+ 0, 0, 0, 0, 0, 0,16,16,20, 0, 0, 0,21, 0, 0, 0,
+ 21,18, 0, 0, 0,12,12,20,17, 0,15,15,19,18, 0,14,
+ 14,19,18, 0,18,17,21,19, 0,17,17,21,17, 0,13,13,
+ 21,19, 0,16,17,20,19, 0,13,13,16,16, 0,17,17,20,
+ 21, 0,16,16,19,17, 0,13,13,18,18, 0,17,19,19,19,
+ 0,13,13,17,17, 0,18,18, 0,19, 0,16,17,18,18, 0,
+ 16,17,19,21, 0, 0, 0, 0, 0, 0,15,15,16,17, 0,20,
+ 19,21, 0, 0,17,17,17,17, 0,17,17,21,19, 0, 0, 0,
+ 0, 0, 0,15,15,17,17, 0,21, 0, 0, 0, 0,18,18,17,
+ 17, 0,10,10,15,15, 0,15,15,17,17, 0,15,14,16,16,
+ 0, 0, 0,21,19, 0,21,21,19,21, 0,13,13,17,16, 0,
+ 17,17,18,19, 0,14,15,16,15, 0, 0, 0,21,19, 0,21,
+ 21,18,19, 0,14,14,16,17, 0,18,18,18,19, 0,15,15,
+ 15,16, 0, 0,21, 0,21, 0, 0, 0,19,20, 0, 0, 0,21,
+ 19, 0, 0, 0, 0, 0, 0,21,21,19,17, 0, 0, 0, 0, 0,
+ 0, 0, 0,21,21, 0,21, 0, 0,21, 0, 0, 0, 0, 0, 0,
+ 21,21,19,18, 0, 0, 0, 0, 0, 0, 0, 0, 0,19, 0,21,
+ 18,18,17, 0,21, 0,20,20, 0, 0, 0,18,20, 0, 0,21,
+ 18,21, 0, 0, 0,21,18, 0, 0, 0, 0,19, 0, 0, 0,21,
+ 21, 0,20,21,17,19, 0,21, 0,21, 0, 0,21, 0,18,18,
+ 0,20,21,17,18, 0, 0, 0,21,19, 0,20,21,17,18, 0,
+ 0, 0,21,21, 0, 0, 0,20,19, 0, 0, 0,21,21, 0, 0,
+ 0, 0, 0, 0,21,21,19,18, 0, 0, 0, 0, 0, 0, 0,21,
+ 19,18, 0,21,21,19, 0, 0, 0, 0,21, 0, 0,21,21,18,
+ 17, 0, 0, 0, 0, 0, 0,21, 0,21,18, 0,12,12,14,14,
+ 0,15,14,17,17, 0,14,14,17,16, 0,19,17, 0, 0, 0,
+ 19,19, 0, 0, 0,13,13,17,17, 0,17,17,20,20, 0,13,
+ 13,18,18, 0,18,17, 0, 0, 0,18,21, 0, 0, 0,13,13,
+ 17,17, 0,18,18,21,20, 0,14,14,18,19, 0,19,18,21,
+ 0, 0,19,19, 0, 0, 0,20,18,20, 0, 0, 0, 0, 0, 0,
+ 0,15,16, 0, 0, 0,21,21, 0, 0, 0,19,19, 0, 0, 0,
+ 18,18, 0, 0, 0, 0, 0, 0, 0, 0,16,16, 0,21, 0, 0,
+ 0, 0, 0, 0,19,20, 0, 0, 0,15,15,20,21, 0,17,17,
+ 21,21, 0,17,17, 0, 0, 0,19,18, 0, 0, 0,18,19, 0,
+ 0, 0,17,16, 0,21, 0, 0,20, 0, 0, 0,16,16, 0,20,
+ 0,19,19, 0,21, 0,19,18, 0,21, 0,16,16, 0, 0, 0,
+ 21,21, 0, 0, 0,16,16, 0, 0, 0,21,21, 0, 0, 0,19,
+ 19, 0, 0, 0,20, 0, 0, 0, 0, 0, 0, 0, 0, 0,17,17,
+ 0,21, 0, 0,20, 0, 0, 0,20,18,21,21, 0,19,18, 0,
+ 20, 0, 0, 0, 0, 0, 0,16,17,21, 0, 0, 0,21, 0, 0,
+ 0,19,20,21,20,
+};
+
+static const static_codebook _44pn1_p4_0 = {
+ 5, 3125,
+ (char *)_vq_lengthlist__44pn1_p4_0,
+ 1, -528744448, 1616642048, 3, 0,
+ (long *)_vq_quantlist__44pn1_p4_0,
+ 0
+};
+
+static const long _vq_quantlist__44pn1_p4_1[] = {
+ 3,
+ 2,
+ 4,
+ 1,
+ 5,
+ 0,
+ 6,
+};
+
+static const char _vq_lengthlist__44pn1_p4_1[] = {
+ 2, 3, 3, 3, 3, 3, 3,
+};
+
+static const static_codebook _44pn1_p4_1 = {
+ 1, 7,
+ (char *)_vq_lengthlist__44pn1_p4_1,
+ 1, -533200896, 1611661312, 3, 0,
+ (long *)_vq_quantlist__44pn1_p4_1,
+ 0
+};
+
+static const long _vq_quantlist__44pn1_p5_0[] = {
+ 1,
+ 0,
+ 2,
+};
+
+static const char _vq_lengthlist__44pn1_p5_0[] = {
+ 1, 7, 7, 6, 8, 8, 7, 8, 8, 7, 9, 9,11,11,11, 9,
+ 8, 8, 7, 9, 9,11,12,11, 9, 9, 9, 6, 7, 7,10,11,
+ 11,10,10,10,10,11,11,15,14,14,12,12,12,11,11,11,
+ 14,14,14,12,12,12, 5, 6, 6, 8, 5, 5, 8, 7, 7, 8,
+ 8, 8,12,10,10,10, 7, 7, 8, 7, 7,12,10,10,10, 7,
+ 7, 6, 7, 7,12,11,11,12,10,10,11,10,10,14,14,13,
+ 13,10,10,11,10,10,16,14,14,14,11,10, 7, 7, 7,13,
+ 12,12,12,12,11,11,11,11,15,14,17,13,12,12,12,11,
+ 11,15,15,15,14,13,13,10, 9, 9,14,12,11,13,11,11,
+ 12,11,11,16,15,14,14,11,11,12,11,11,17,14,14,15,
+ 11,11, 7, 8, 8,12,11,11,13,10,10,11,10,10,17,14,
+ 13,14,10,10,12,10,10,18,15,15,14,10,10, 8, 7, 7,
+ 13,12,12,13,11,11,12,11,11,16,14,15,14,12,12,12,
+ 11,11,18,16,16,14,12,12,11,10,10,13,12,11,13,11,
+ 11,13,12,12, 0,15,14,14,11,11,13,11,11,16,15,15,
+ 15,11,11,
+};
+
+static const static_codebook _44pn1_p5_0 = {
+ 5, 243,
+ (char *)_vq_lengthlist__44pn1_p5_0,
+ 1, -527106048, 1620377600, 2, 0,
+ (long *)_vq_quantlist__44pn1_p5_0,
+ 0
+};
+
+static const long _vq_quantlist__44pn1_p5_1[] = {
+ 1,
+ 0,
+ 2,
+};
+
+static const char _vq_lengthlist__44pn1_p5_1[] = {
+ 2, 6, 7, 6, 8, 8, 7, 7, 8, 7, 8, 8, 9, 9, 9, 8,
+ 7, 7, 8, 8, 8, 9, 9, 9, 9, 8, 8, 6, 6, 6, 9, 7,
+ 7, 9, 7, 7, 9, 8, 8,10, 8, 8,10, 8, 8,10, 8, 8,
+ 10, 9, 8,10, 8, 8, 7, 6, 6, 9, 6, 6, 9, 6, 6, 9,
+ 7, 7,10, 8, 8,10, 6, 6, 9, 7, 7,10, 8, 8,10, 6,
+ 6, 7, 7, 7,11, 9, 9,11, 9, 9,10, 9, 9,12,10,10,
+ 12, 8, 8,11, 9, 9,13, 9,10,12, 8, 8, 8, 7, 7,11,
+ 9,10,11,10,10,10, 9, 9,11,11,11,11, 9, 9,11,10,
+ 9,12,11,11,11, 9,10,10, 8, 8,11, 9,10,11, 9, 9,
+ 11, 9, 9,12,10,10,11, 9, 9,11, 9, 9,12,10,11,11,
+ 9, 9, 8, 8, 8,12, 9, 9,12, 9, 9,11, 9, 9,13, 9,
+ 9,13, 8, 8,12, 9, 9,13,10,10,12, 8, 8, 9, 7, 7,
+ 11,10,10,11,10,10,11,10,10,12,11,11,11,10, 9,11,
+ 10,10,11,11,11,11, 9, 9,11, 9, 9,12,10,10,11,10,
+ 10,12,10,10,11,11,11,11, 9, 9,11,10,10,12,11,11,
+ 11, 9, 9,
+};
+
+static const static_codebook _44pn1_p5_1 = {
+ 5, 243,
+ (char *)_vq_lengthlist__44pn1_p5_1,
+ 1, -530841600, 1616642048, 2, 0,
+ (long *)_vq_quantlist__44pn1_p5_1,
+ 0
+};
+
+static const long _vq_quantlist__44pn1_p6_0[] = {
+ 1,
+ 0,
+ 2,
+};
+
+static const char _vq_lengthlist__44pn1_p6_0[] = {
+ 1, 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, 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, 9,
+ 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9,
+ 9, 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, 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, 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,
+ 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, 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, 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, 9, 9,
+ 9, 9, 9,
+};
+
+static const static_codebook _44pn1_p6_0 = {
+ 5, 243,
+ (char *)_vq_lengthlist__44pn1_p6_0,
+ 1, -516716544, 1630767104, 2, 0,
+ (long *)_vq_quantlist__44pn1_p6_0,
+ 0
+};
+
+static const long _vq_quantlist__44pn1_p6_1[] = {
+ 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 const char _vq_lengthlist__44pn1_p6_1[] = {
+ 1, 3, 2, 5, 4, 7, 7, 8, 8, 9, 9,10,10,11,11,12,
+ 12,13,13,14,14,15,15,15,15,
+};
+
+static const static_codebook _44pn1_p6_1 = {
+ 1, 25,
+ (char *)_vq_lengthlist__44pn1_p6_1,
+ 1, -518864896, 1620639744, 5, 0,
+ (long *)_vq_quantlist__44pn1_p6_1,
+ 0
+};
+
+static const long _vq_quantlist__44pn1_p6_2[] = {
+ 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 const char _vq_lengthlist__44pn1_p6_2[] = {
+ 3, 5, 4, 5, 4, 5, 4, 5, 5, 5, 4, 5, 5, 5, 5, 5,
+ 5, 5, 5, 5, 5, 5, 5, 5, 5,
+};
+
+static const static_codebook _44pn1_p6_2 = {
+ 1, 25,
+ (char *)_vq_lengthlist__44pn1_p6_2,
+ 1, -529006592, 1611661312, 5, 0,
+ (long *)_vq_quantlist__44pn1_p6_2,
+ 0
+};
+
+static const char _huff_lengthlist__44pn1_short[] = {
+ 4, 3, 7, 9,12,16,16, 3, 2, 5, 7,11,14,15, 7, 4,
+ 5, 6, 9,12,15, 8, 5, 5, 5, 8,10,14, 9, 7, 6, 6,
+ 8,10,12,12,10,10, 7, 6, 8,10,15,12,10, 6, 4, 7,
+ 9,
+};
+
+static const static_codebook _huff_book__44pn1_short = {
+ 2, 49,
+ (char *)_huff_lengthlist__44pn1_short,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
diff --git a/Sources/libvorbis/lib/books/coupled/res_books_stereo.h b/Sources/libvorbis/lib/books/coupled/res_books_stereo.h
new file mode 100644
index 000000000..9a9049f6e
--- /dev/null
+++ b/Sources/libvorbis/lib/books/coupled/res_books_stereo.h
@@ -0,0 +1,15783 @@
+/********************************************************************
+ * *
+ * THIS FILE IS PART OF THE OggVorbis SOFTWARE CODEC SOURCE CODE. *
+ * USE, DISTRIBUTION AND REPRODUCTION OF THIS LIBRARY SOURCE IS *
+ * GOVERNED BY A BSD-STYLE SOURCE LICENSE INCLUDED WITH THIS SOURCE *
+ * IN 'COPYING'. PLEASE READ THESE TERMS BEFORE DISTRIBUTING. *
+ * *
+ * THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2007 *
+ * by the Xiph.Org Foundation http://www.xiph.org/ *
+ * *
+ ********************************************************************
+
+ function: static codebooks autogenerated by huff/huffbuld
+ last modified: $Id: res_books_stereo.h 19057 2014-01-22 12:32:31Z xiphmont $
+
+ ********************************************************************/
+
+#include "codebook.h"
+
+static const long _vq_quantlist__16c0_s_p1_0[] = {
+ 1,
+ 0,
+ 2,
+};
+
+static const char _vq_lengthlist__16c0_s_p1_0[] = {
+ 1, 4, 4, 0, 0, 0, 0, 0, 0, 5, 7, 7, 0, 0, 0, 0,
+ 0, 0, 5, 7, 7, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 5, 8, 8, 0, 0, 0, 0, 0, 0, 8, 9,10, 0, 0, 0,
+ 0, 0, 0, 7, 9,10, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 5, 8, 8, 0, 0, 0, 0, 0, 0, 7, 9, 9, 0, 0,
+ 0, 0, 0, 0, 7, 9, 9, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 5, 8, 8, 0, 0, 0, 0,
+ 0, 0, 8,10,10, 0, 0, 0, 0, 0, 0, 8,10,10, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 7,10,10, 0, 0, 0,
+ 0, 0, 0, 9, 9,12, 0, 0, 0, 0, 0, 0,10,12,11, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 7,10,10, 0, 0,
+ 0, 0, 0, 0, 9,12,10, 0, 0, 0, 0, 0, 0,10,11,12,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 5, 8, 8, 0, 0, 0, 0, 0, 0, 8,10,10, 0, 0,
+ 0, 0, 0, 0, 8,10,10, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 7,10,10, 0, 0, 0, 0, 0, 0,10,12,11, 0,
+ 0, 0, 0, 0, 0, 9,10,12, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 7,10,10, 0, 0, 0, 0, 0, 0,10,11,12,
+ 0, 0, 0, 0, 0, 0, 9,12, 9, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0,
+};
+
+static const static_codebook _16c0_s_p1_0 = {
+ 8, 6561,
+ (char *)_vq_lengthlist__16c0_s_p1_0,
+ 1, -535822336, 1611661312, 2, 0,
+ (long *)_vq_quantlist__16c0_s_p1_0,
+ 0
+};
+
+static const long _vq_quantlist__16c0_s_p3_0[] = {
+ 2,
+ 1,
+ 3,
+ 0,
+ 4,
+};
+
+static const char _vq_lengthlist__16c0_s_p3_0[] = {
+ 1, 4, 4, 6, 6, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 4, 6, 6, 7, 6, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 4, 6, 6, 6, 6, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6, 6, 6, 9, 9,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 6, 6, 6, 9, 9, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0,
+};
+
+static const static_codebook _16c0_s_p3_0 = {
+ 4, 625,
+ (char *)_vq_lengthlist__16c0_s_p3_0,
+ 1, -533725184, 1611661312, 3, 0,
+ (long *)_vq_quantlist__16c0_s_p3_0,
+ 0
+};
+
+static const long _vq_quantlist__16c0_s_p4_0[] = {
+ 4,
+ 3,
+ 5,
+ 2,
+ 6,
+ 1,
+ 7,
+ 0,
+ 8,
+};
+
+static const char _vq_lengthlist__16c0_s_p4_0[] = {
+ 1, 3, 2, 7, 8, 0, 0, 0, 0, 0, 0, 0, 6, 6, 0, 0,
+ 0, 0, 0, 0, 0, 6, 6, 0, 0, 0, 0, 0, 0, 0, 7, 7,
+ 0, 0, 0, 0, 0, 0, 0, 7, 7, 0, 0, 0, 0, 0, 0, 0,
+ 8, 8, 0, 0, 0, 0, 0, 0, 0, 8, 8, 0, 0, 0, 0, 0,
+ 0, 0, 9, 9, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0,
+};
+
+static const static_codebook _16c0_s_p4_0 = {
+ 2, 81,
+ (char *)_vq_lengthlist__16c0_s_p4_0,
+ 1, -531628032, 1611661312, 4, 0,
+ (long *)_vq_quantlist__16c0_s_p4_0,
+ 0
+};
+
+static const long _vq_quantlist__16c0_s_p5_0[] = {
+ 4,
+ 3,
+ 5,
+ 2,
+ 6,
+ 1,
+ 7,
+ 0,
+ 8,
+};
+
+static const char _vq_lengthlist__16c0_s_p5_0[] = {
+ 1, 3, 3, 6, 6, 6, 6, 8, 8, 0, 0, 0, 7, 7, 7, 7,
+ 8, 8, 0, 0, 0, 7, 7, 7, 7, 8, 8, 0, 0, 0, 7, 7,
+ 8, 8, 9, 9, 0, 0, 0, 7, 7, 8, 8, 9, 9, 0, 0, 0,
+ 8, 9, 8, 8,10,10, 0, 0, 0, 8, 8, 8, 8,10,10, 0,
+ 0, 0,10,10, 9, 9,10,10, 0, 0, 0, 0, 0, 9, 9,10,
+ 10,
+};
+
+static const static_codebook _16c0_s_p5_0 = {
+ 2, 81,
+ (char *)_vq_lengthlist__16c0_s_p5_0,
+ 1, -531628032, 1611661312, 4, 0,
+ (long *)_vq_quantlist__16c0_s_p5_0,
+ 0
+};
+
+static const long _vq_quantlist__16c0_s_p6_0[] = {
+ 8,
+ 7,
+ 9,
+ 6,
+ 10,
+ 5,
+ 11,
+ 4,
+ 12,
+ 3,
+ 13,
+ 2,
+ 14,
+ 1,
+ 15,
+ 0,
+ 16,
+};
+
+static const char _vq_lengthlist__16c0_s_p6_0[] = {
+ 1, 3, 4, 6, 6, 7, 7, 8, 8, 8, 8, 9, 9,10,10,11,
+ 11, 0, 0, 0, 7, 7, 8, 8, 9, 9, 9, 9,10,10,10,11,
+ 11,11, 0, 0, 0, 6, 6, 8, 8, 9, 9, 9, 9,10,10,11,
+ 11,11,11, 0, 0, 0, 7, 7, 8, 8, 9, 9, 9, 9,10,10,
+ 11,11,12,12, 0, 0, 0, 7, 7, 8, 8, 9, 9, 9, 9,10,
+ 10,11,11,12,12, 0, 0, 0, 8, 8, 9, 9,10,10,10,10,
+ 11,11,12,12,12,12, 0, 0, 0, 8, 8, 9, 9,10,10,10,
+ 10,11,11,12,12,12,13, 0, 0, 0, 9, 9, 9, 9,10,10,
+ 10,10,11,11,12,12,13,13, 0, 0, 0, 0, 0,10,10,10,
+ 10,10,10,11,11,12,12,13,13, 0, 0, 0, 0, 0, 9, 9,
+ 10,10,11,11,12,12,13,13,13,13, 0, 0, 0, 0, 0, 9,
+ 9,10,10,11,11,12,12,13,13,13,14, 0, 0, 0, 0, 0,
+ 10,10,10,11,11,11,12,12,13,13,13,14, 0, 0, 0, 0,
+ 0, 0, 0,10,10,11,11,12,12,13,13,14,14, 0, 0, 0,
+ 0, 0, 0, 0,11,11,12,12,13,13,13,13,14,14, 0, 0,
+ 0, 0, 0, 0, 0,11,11,12,12,12,13,13,14,15,14, 0,
+ 0, 0, 0, 0, 0, 0,12,12,12,12,13,13,13,14,14,15,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0,12,12,13,13,14,13,14,
+ 14,
+};
+
+static const static_codebook _16c0_s_p6_0 = {
+ 2, 289,
+ (char *)_vq_lengthlist__16c0_s_p6_0,
+ 1, -529530880, 1611661312, 5, 0,
+ (long *)_vq_quantlist__16c0_s_p6_0,
+ 0
+};
+
+static const long _vq_quantlist__16c0_s_p7_0[] = {
+ 1,
+ 0,
+ 2,
+};
+
+static const char _vq_lengthlist__16c0_s_p7_0[] = {
+ 1, 4, 4, 6, 6, 6, 7, 6, 6, 4, 7, 7,11,10,10,11,
+ 11,10, 4, 7, 7,10,10,10,11,10,10, 6,10,10,11,11,
+ 11,11,11,10, 6, 9, 9,11,12,12,11, 9, 9, 6, 9,10,
+ 11,12,12,11, 9,10, 7,11,11,11,11,11,12,13,12, 6,
+ 9,10,11,10,10,12,13,13, 6,10, 9,11,10,10,11,12,
+ 13,
+};
+
+static const static_codebook _16c0_s_p7_0 = {
+ 4, 81,
+ (char *)_vq_lengthlist__16c0_s_p7_0,
+ 1, -529137664, 1618345984, 2, 0,
+ (long *)_vq_quantlist__16c0_s_p7_0,
+ 0
+};
+
+static const long _vq_quantlist__16c0_s_p7_1[] = {
+ 5,
+ 4,
+ 6,
+ 3,
+ 7,
+ 2,
+ 8,
+ 1,
+ 9,
+ 0,
+ 10,
+};
+
+static const char _vq_lengthlist__16c0_s_p7_1[] = {
+ 1, 3, 4, 6, 6, 7, 7, 8, 8, 8, 8,10,10,10, 7, 7,
+ 8, 8, 8, 9, 9, 9,10,10,10, 6, 7, 8, 8, 8, 8, 9,
+ 8,10,10,10, 7, 7, 8, 8, 9, 9, 9, 9,10,10,10, 7,
+ 7, 8, 8, 9, 9, 8, 9,10,10,10, 8, 8, 9, 9, 9, 9,
+ 9, 9,11,11,11, 8, 8, 9, 9, 9, 9, 9,10,10,11,11,
+ 9, 9, 9, 9, 9, 9, 9,10,11,11,11,10,11, 9, 9, 9,
+ 9,10, 9,11,11,11,10,11,10,10, 9, 9,10,10,11,11,
+ 11,11,11, 9, 9, 9, 9,10,10,
+};
+
+static const static_codebook _16c0_s_p7_1 = {
+ 2, 121,
+ (char *)_vq_lengthlist__16c0_s_p7_1,
+ 1, -531365888, 1611661312, 4, 0,
+ (long *)_vq_quantlist__16c0_s_p7_1,
+ 0
+};
+
+static const long _vq_quantlist__16c0_s_p8_0[] = {
+ 6,
+ 5,
+ 7,
+ 4,
+ 8,
+ 3,
+ 9,
+ 2,
+ 10,
+ 1,
+ 11,
+ 0,
+ 12,
+};
+
+static const char _vq_lengthlist__16c0_s_p8_0[] = {
+ 1, 4, 4, 7, 7, 7, 7, 7, 6, 8, 8,10,10, 6, 5, 6,
+ 8, 8, 8, 8, 8, 8, 8, 9,10,10, 7, 6, 6, 8, 8, 8,
+ 8, 8, 8, 8, 8,10,10, 0, 8, 8, 8, 8, 9, 8, 9, 9,
+ 9,10,10,10, 0, 9, 8, 8, 8, 9, 9, 8, 8, 9, 9,10,
+ 10, 0,12,11, 8, 8, 9, 9, 9, 9,10,10,11,10, 0,12,
+ 13, 8, 8, 9,10, 9, 9,11,11,11,12, 0, 0, 0, 8, 8,
+ 8, 8,10, 9,12,13,12,14, 0, 0, 0, 8, 8, 8, 9,10,
+ 10,12,12,13,14, 0, 0, 0,13,13, 9, 9,11,11, 0, 0,
+ 14, 0, 0, 0, 0,14,14,10,10,12,11,12,14,14,14, 0,
+ 0, 0, 0, 0,11,11,13,13,14,13,14,14, 0, 0, 0, 0,
+ 0,12,13,13,12,13,14,14,14,
+};
+
+static const static_codebook _16c0_s_p8_0 = {
+ 2, 169,
+ (char *)_vq_lengthlist__16c0_s_p8_0,
+ 1, -526516224, 1616117760, 4, 0,
+ (long *)_vq_quantlist__16c0_s_p8_0,
+ 0
+};
+
+static const long _vq_quantlist__16c0_s_p8_1[] = {
+ 2,
+ 1,
+ 3,
+ 0,
+ 4,
+};
+
+static const char _vq_lengthlist__16c0_s_p8_1[] = {
+ 1, 4, 3, 5, 5, 7, 7, 7, 6, 6, 7, 7, 7, 5, 5, 7,
+ 7, 7, 6, 6, 7, 7, 7, 6, 6,
+};
+
+static const static_codebook _16c0_s_p8_1 = {
+ 2, 25,
+ (char *)_vq_lengthlist__16c0_s_p8_1,
+ 1, -533725184, 1611661312, 3, 0,
+ (long *)_vq_quantlist__16c0_s_p8_1,
+ 0
+};
+
+static const long _vq_quantlist__16c0_s_p9_0[] = {
+ 1,
+ 0,
+ 2,
+};
+
+static const char _vq_lengthlist__16c0_s_p9_0[] = {
+ 1, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8,
+ 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8,
+ 8, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7,
+ 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7,
+ 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7,
+ 7,
+};
+
+static const static_codebook _16c0_s_p9_0 = {
+ 4, 81,
+ (char *)_vq_lengthlist__16c0_s_p9_0,
+ 1, -518803456, 1628680192, 2, 0,
+ (long *)_vq_quantlist__16c0_s_p9_0,
+ 0
+};
+
+static const long _vq_quantlist__16c0_s_p9_1[] = {
+ 7,
+ 6,
+ 8,
+ 5,
+ 9,
+ 4,
+ 10,
+ 3,
+ 11,
+ 2,
+ 12,
+ 1,
+ 13,
+ 0,
+ 14,
+};
+
+static const char _vq_lengthlist__16c0_s_p9_1[] = {
+ 1, 5, 5, 5, 5, 9,11,11,10,10,10,10,10,10,10, 7,
+ 6, 6, 6, 6,10,10,10,10,10,10,10,10,10,10, 7, 6,
+ 6, 6, 6,10, 9,10,10,10,10,10,10,10,10,10, 7, 7,
+ 8, 9,10,10,10,10,10,10,10,10,10,10,10, 8, 7,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,
+};
+
+static const static_codebook _16c0_s_p9_1 = {
+ 2, 225,
+ (char *)_vq_lengthlist__16c0_s_p9_1,
+ 1, -520986624, 1620377600, 4, 0,
+ (long *)_vq_quantlist__16c0_s_p9_1,
+ 0
+};
+
+static const long _vq_quantlist__16c0_s_p9_2[] = {
+ 10,
+ 9,
+ 11,
+ 8,
+ 12,
+ 7,
+ 13,
+ 6,
+ 14,
+ 5,
+ 15,
+ 4,
+ 16,
+ 3,
+ 17,
+ 2,
+ 18,
+ 1,
+ 19,
+ 0,
+ 20,
+};
+
+static const char _vq_lengthlist__16c0_s_p9_2[] = {
+ 1, 5, 5, 7, 8, 8, 7, 9, 9, 9,12,12,11,12,12,10,
+ 10,11,12,12,12,11,12,12, 8, 9, 8, 7, 9,10,10,11,
+ 11,10,11,12,10,12,10,12,12,12,11,12,11, 9, 8, 8,
+ 9,10, 9, 8, 9,10,12,12,11,11,12,11,10,11,12,11,
+ 12,12, 8, 9, 9, 9,10,11,12,11,12,11,11,11,11,12,
+ 12,11,11,12,12,11,11, 9, 9, 8, 9, 9,11, 9, 9,10,
+ 9,11,11,11,11,12,11,11,10,12,12,12, 9,12,11,10,
+ 11,11,11,11,12,12,12,11,11,11,12,10,12,12,12,10,
+ 10, 9,10, 9,10,10, 9, 9, 9,10,10,12,10,11,11, 9,
+ 11,11,10,11,11,11,10,10,10, 9, 9,10,10, 9, 9,10,
+ 11,11,10,11,10,11,10,11,11,10,11,11,11,10, 9,10,
+ 10, 9,10, 9, 9,11, 9, 9,11,10,10,11,11,10,10,11,
+ 10,11, 8, 9,11,11,10, 9,10,11,11,10,11,11,10,10,
+ 10,11,10, 9,10,10,11, 9,10,10, 9,11,10,10,10,10,
+ 11,10,11,11, 9,11,10,11,10,10,11,11,10,10,10, 9,
+ 10,10,11,11,11, 9,10,10,10,10,10,11,10,10,10, 9,
+ 10,10,11,10,10,10,10,10, 9,10,11,10,10,10,10,11,
+ 11,11,10,10,10,10,10,11,10,11,10,11,10,10,10, 9,
+ 11,11,10,10,10,11,11,10,10,10,10,10,10,10,10,11,
+ 11, 9,10,10,10,11,10,11,10,10,10,11, 9,10,11,10,
+ 11,10,10, 9,10,10,10,11,10,11,10,10,10,10,10,11,
+ 11,10,11,11,10,10,11,11,10, 9, 9,10,10,10,10,10,
+ 9,11, 9,10,10,10,11,11,10,10,10,10,11,11,11,10,
+ 9, 9,10,10,11,10,10,10,10,10,11,11,11,10,10,10,
+ 11,11,11, 9,10,10,10,10, 9,10, 9,10,11,10,11,10,
+ 10,11,11,10,11,11,11,11,11,10,11,10,10,10, 9,11,
+ 11,10,11,11,11,11,11,11,11,11,11,10,11,10,10,10,
+ 10,11,10,10,11, 9,10,10,10,
+};
+
+static const static_codebook _16c0_s_p9_2 = {
+ 2, 441,
+ (char *)_vq_lengthlist__16c0_s_p9_2,
+ 1, -529268736, 1611661312, 5, 0,
+ (long *)_vq_quantlist__16c0_s_p9_2,
+ 0
+};
+
+static const char _huff_lengthlist__16c0_s_single[] = {
+ 3, 4,19, 7, 9, 7, 8,11, 9,12, 4, 1,19, 6, 7, 7,
+ 8,10,11,13,18,18,18,18,18,18,18,18,18,18, 8, 6,
+ 18, 8, 9, 9,11,12,14,18, 9, 6,18, 9, 7, 8, 9,11,
+ 12,18, 7, 6,18, 8, 7, 7, 7, 9,11,17, 8, 8,18, 9,
+ 7, 6, 6, 8,11,17,10,10,18,12, 9, 8, 7, 9,12,18,
+ 13,15,18,15,13,11,10,11,15,18,14,18,18,18,18,18,
+ 16,16,18,18,
+};
+
+static const static_codebook _huff_book__16c0_s_single = {
+ 2, 100,
+ (char *)_huff_lengthlist__16c0_s_single,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
+static const char _huff_lengthlist__16c1_s_long[] = {
+ 2, 5,20, 7,10, 7, 8,10,11,11, 4, 2,20, 5, 8, 6,
+ 7, 9,10,10,20,20,20,20,19,19,19,19,19,19, 7, 5,
+ 19, 6,10, 7, 9,11,13,17,11, 8,19,10, 7, 7, 8,10,
+ 11,15, 7, 5,19, 7, 7, 5, 6, 9,11,16, 7, 6,19, 8,
+ 7, 6, 6, 7, 9,13, 9, 9,19,11, 9, 8, 6, 7, 8,13,
+ 12,14,19,16,13,10, 9, 8, 9,13,14,17,19,18,18,17,
+ 12,11,11,13,
+};
+
+static const static_codebook _huff_book__16c1_s_long = {
+ 2, 100,
+ (char *)_huff_lengthlist__16c1_s_long,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
+static const long _vq_quantlist__16c1_s_p1_0[] = {
+ 1,
+ 0,
+ 2,
+};
+
+static const char _vq_lengthlist__16c1_s_p1_0[] = {
+ 1, 5, 5, 0, 0, 0, 0, 0, 0, 5, 7, 7, 0, 0, 0, 0,
+ 0, 0, 5, 7, 7, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 5, 8, 7, 0, 0, 0, 0, 0, 0, 7, 9, 9, 0, 0, 0,
+ 0, 0, 0, 7, 8, 9, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 5, 7, 8, 0, 0, 0, 0, 0, 0, 7, 9, 8, 0, 0,
+ 0, 0, 0, 0, 7, 9, 9, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 5, 8, 7, 0, 0, 0, 0,
+ 0, 0, 8, 9, 9, 0, 0, 0, 0, 0, 0, 7, 9, 9, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 7, 9, 9, 0, 0, 0,
+ 0, 0, 0, 9, 9,11, 0, 0, 0, 0, 0, 0, 9,11,10, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 7, 9, 9, 0, 0,
+ 0, 0, 0, 0, 8,11, 9, 0, 0, 0, 0, 0, 0, 9,10,11,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 5, 7, 8, 0, 0, 0, 0, 0, 0, 7, 9, 9, 0, 0,
+ 0, 0, 0, 0, 8, 9, 9, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 7, 9, 9, 0, 0, 0, 0, 0, 0, 9,11,10, 0,
+ 0, 0, 0, 0, 0, 8, 9,11, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 7, 9, 9, 0, 0, 0, 0, 0, 0, 9,10,11,
+ 0, 0, 0, 0, 0, 0, 9,11, 9, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0,
+};
+
+static const static_codebook _16c1_s_p1_0 = {
+ 8, 6561,
+ (char *)_vq_lengthlist__16c1_s_p1_0,
+ 1, -535822336, 1611661312, 2, 0,
+ (long *)_vq_quantlist__16c1_s_p1_0,
+ 0
+};
+
+static const long _vq_quantlist__16c1_s_p3_0[] = {
+ 2,
+ 1,
+ 3,
+ 0,
+ 4,
+};
+
+static const char _vq_lengthlist__16c1_s_p3_0[] = {
+ 1, 4, 4, 6, 6, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 4, 5, 5, 7, 7, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 4, 5, 5, 7, 7, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 7, 7, 7, 9, 9,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 6, 7, 7, 9, 9, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0,
+};
+
+static const static_codebook _16c1_s_p3_0 = {
+ 4, 625,
+ (char *)_vq_lengthlist__16c1_s_p3_0,
+ 1, -533725184, 1611661312, 3, 0,
+ (long *)_vq_quantlist__16c1_s_p3_0,
+ 0
+};
+
+static const long _vq_quantlist__16c1_s_p4_0[] = {
+ 4,
+ 3,
+ 5,
+ 2,
+ 6,
+ 1,
+ 7,
+ 0,
+ 8,
+};
+
+static const char _vq_lengthlist__16c1_s_p4_0[] = {
+ 1, 2, 3, 7, 7, 0, 0, 0, 0, 0, 0, 0, 6, 6, 0, 0,
+ 0, 0, 0, 0, 0, 6, 6, 0, 0, 0, 0, 0, 0, 0, 7, 7,
+ 0, 0, 0, 0, 0, 0, 0, 7, 7, 0, 0, 0, 0, 0, 0, 0,
+ 8, 8, 0, 0, 0, 0, 0, 0, 0, 8, 9, 0, 0, 0, 0, 0,
+ 0, 0,10,10, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0,
+};
+
+static const static_codebook _16c1_s_p4_0 = {
+ 2, 81,
+ (char *)_vq_lengthlist__16c1_s_p4_0,
+ 1, -531628032, 1611661312, 4, 0,
+ (long *)_vq_quantlist__16c1_s_p4_0,
+ 0
+};
+
+static const long _vq_quantlist__16c1_s_p5_0[] = {
+ 4,
+ 3,
+ 5,
+ 2,
+ 6,
+ 1,
+ 7,
+ 0,
+ 8,
+};
+
+static const char _vq_lengthlist__16c1_s_p5_0[] = {
+ 1, 3, 3, 5, 5, 6, 6, 8, 8, 0, 0, 0, 7, 7, 7, 7,
+ 9, 9, 0, 0, 0, 7, 7, 7, 7, 9, 9, 0, 0, 0, 8, 8,
+ 8, 8, 9, 9, 0, 0, 0, 8, 8, 8, 8,10,10, 0, 0, 0,
+ 9, 9, 8, 8,10,10, 0, 0, 0, 9, 9, 8, 8,10,10, 0,
+ 0, 0,10,10, 9, 9,10,10, 0, 0, 0, 0, 0, 9, 9,10,
+ 10,
+};
+
+static const static_codebook _16c1_s_p5_0 = {
+ 2, 81,
+ (char *)_vq_lengthlist__16c1_s_p5_0,
+ 1, -531628032, 1611661312, 4, 0,
+ (long *)_vq_quantlist__16c1_s_p5_0,
+ 0
+};
+
+static const long _vq_quantlist__16c1_s_p6_0[] = {
+ 8,
+ 7,
+ 9,
+ 6,
+ 10,
+ 5,
+ 11,
+ 4,
+ 12,
+ 3,
+ 13,
+ 2,
+ 14,
+ 1,
+ 15,
+ 0,
+ 16,
+};
+
+static const char _vq_lengthlist__16c1_s_p6_0[] = {
+ 1, 3, 3, 6, 6, 8, 8, 9, 9, 9, 9,10,10,11,11,12,
+ 12, 0, 0, 0, 7, 7, 8, 8, 9, 9, 9, 9,10,10,11,11,
+ 12,12, 0, 0, 0, 7, 7, 8, 8, 9, 9, 9, 9,10,10,11,
+ 11,12,12, 0, 0, 0, 8, 8, 8, 9,10, 9,10,10,10,10,
+ 11,11,12,12, 0, 0, 0, 8, 8, 9, 9,10,10,10,10,11,
+ 11,11,12,12,12, 0, 0, 0, 8, 8, 9, 9,10,10,10,10,
+ 11,11,12,12,12,12, 0, 0, 0, 8, 8, 9, 9,10,10,10,
+ 10,11,11,12,12,13,13, 0, 0, 0, 9, 9, 9, 9,10,10,
+ 10,10,11,11,12,12,13,13, 0, 0, 0, 0, 0, 9, 9,10,
+ 10,10,10,11,11,12,12,13,13, 0, 0, 0, 0, 0, 9, 9,
+ 10,10,11,11,12,12,12,12,13,13, 0, 0, 0, 0, 0, 9,
+ 9,10,10,11,11,12,12,12,12,13,13, 0, 0, 0, 0, 0,
+ 10,10,11,10,11,11,12,12,13,13,13,13, 0, 0, 0, 0,
+ 0, 0, 0,10,10,11,11,12,12,13,13,13,13, 0, 0, 0,
+ 0, 0, 0, 0,11,11,12,12,12,12,13,13,14,14, 0, 0,
+ 0, 0, 0, 0, 0,11,11,12,12,12,12,13,13,14,14, 0,
+ 0, 0, 0, 0, 0, 0,12,12,12,12,13,13,13,13,14,14,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0,12,12,13,13,13,13,14,
+ 14,
+};
+
+static const static_codebook _16c1_s_p6_0 = {
+ 2, 289,
+ (char *)_vq_lengthlist__16c1_s_p6_0,
+ 1, -529530880, 1611661312, 5, 0,
+ (long *)_vq_quantlist__16c1_s_p6_0,
+ 0
+};
+
+static const long _vq_quantlist__16c1_s_p7_0[] = {
+ 1,
+ 0,
+ 2,
+};
+
+static const char _vq_lengthlist__16c1_s_p7_0[] = {
+ 1, 4, 4, 6, 6, 6, 7, 6, 6, 4, 7, 7,10, 9,10,10,
+ 10, 9, 4, 7, 7,10,10,10,11,10,10, 6,10,10,11,11,
+ 11,11,10,10, 6,10, 9,11,11,11,11,10,10, 6,10,10,
+ 11,11,11,11,10,10, 7,11,11,11,11,11,12,12,11, 6,
+ 10,10,11,10,10,11,11,11, 6,10,10,10,11,10,11,11,
+ 11,
+};
+
+static const static_codebook _16c1_s_p7_0 = {
+ 4, 81,
+ (char *)_vq_lengthlist__16c1_s_p7_0,
+ 1, -529137664, 1618345984, 2, 0,
+ (long *)_vq_quantlist__16c1_s_p7_0,
+ 0
+};
+
+static const long _vq_quantlist__16c1_s_p7_1[] = {
+ 5,
+ 4,
+ 6,
+ 3,
+ 7,
+ 2,
+ 8,
+ 1,
+ 9,
+ 0,
+ 10,
+};
+
+static const char _vq_lengthlist__16c1_s_p7_1[] = {
+ 2, 3, 3, 5, 6, 7, 7, 7, 7, 8, 8,10,10,10, 6, 6,
+ 7, 7, 8, 8, 8, 8,10,10,10, 6, 6, 7, 7, 8, 8, 8,
+ 8,10,10,10, 7, 7, 7, 7, 8, 8, 8, 8,10,10,10, 7,
+ 7, 7, 7, 8, 8, 8, 8,10,10,10, 7, 7, 8, 8, 8, 8,
+ 8, 8,10,10,10, 7, 7, 8, 8, 8, 8, 8, 8,10,10,10,
+ 8, 8, 8, 8, 8, 8, 9, 9,10,10,10,10,10, 8, 8, 8,
+ 8, 9, 9,10,10,10,10,10, 9, 9, 8, 8, 9, 9,10,10,
+ 10,10,10, 8, 8, 8, 8, 9, 9,
+};
+
+static const static_codebook _16c1_s_p7_1 = {
+ 2, 121,
+ (char *)_vq_lengthlist__16c1_s_p7_1,
+ 1, -531365888, 1611661312, 4, 0,
+ (long *)_vq_quantlist__16c1_s_p7_1,
+ 0
+};
+
+static const long _vq_quantlist__16c1_s_p8_0[] = {
+ 6,
+ 5,
+ 7,
+ 4,
+ 8,
+ 3,
+ 9,
+ 2,
+ 10,
+ 1,
+ 11,
+ 0,
+ 12,
+};
+
+static const char _vq_lengthlist__16c1_s_p8_0[] = {
+ 1, 4, 4, 6, 6, 7, 7, 7, 7, 8, 8, 9, 9, 6, 5, 5,
+ 7, 8, 8, 9, 8, 8, 9, 9,10,11, 6, 5, 5, 8, 8, 9,
+ 9, 8, 8, 9,10,10,11, 0, 8, 8, 8, 9, 9, 9, 9, 9,
+ 10,10,11,11, 0, 9, 9, 9, 8, 9, 9, 9, 9,10,10,11,
+ 11, 0,13,13, 9, 9,10,10,10,10,11,11,12,12, 0,14,
+ 13, 9, 9,10,10,10,10,11,11,12,12, 0, 0, 0,10,10,
+ 9, 9,11,11,12,12,13,12, 0, 0, 0,10,10, 9, 9,10,
+ 10,12,12,13,13, 0, 0, 0,13,14,11,10,11,11,12,12,
+ 13,14, 0, 0, 0,14,14,10,10,11,11,12,12,13,13, 0,
+ 0, 0, 0, 0,12,12,12,12,13,13,14,15, 0, 0, 0, 0,
+ 0,12,12,12,12,13,13,14,15,
+};
+
+static const static_codebook _16c1_s_p8_0 = {
+ 2, 169,
+ (char *)_vq_lengthlist__16c1_s_p8_0,
+ 1, -526516224, 1616117760, 4, 0,
+ (long *)_vq_quantlist__16c1_s_p8_0,
+ 0
+};
+
+static const long _vq_quantlist__16c1_s_p8_1[] = {
+ 2,
+ 1,
+ 3,
+ 0,
+ 4,
+};
+
+static const char _vq_lengthlist__16c1_s_p8_1[] = {
+ 2, 3, 3, 5, 5, 6, 6, 6, 5, 5, 6, 6, 6, 5, 5, 6,
+ 6, 6, 5, 5, 6, 6, 6, 5, 5,
+};
+
+static const static_codebook _16c1_s_p8_1 = {
+ 2, 25,
+ (char *)_vq_lengthlist__16c1_s_p8_1,
+ 1, -533725184, 1611661312, 3, 0,
+ (long *)_vq_quantlist__16c1_s_p8_1,
+ 0
+};
+
+static const long _vq_quantlist__16c1_s_p9_0[] = {
+ 6,
+ 5,
+ 7,
+ 4,
+ 8,
+ 3,
+ 9,
+ 2,
+ 10,
+ 1,
+ 11,
+ 0,
+ 12,
+};
+
+static const char _vq_lengthlist__16c1_s_p9_0[] = {
+ 1, 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, 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, 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, 9,
+ 9, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8,
+ 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8,
+ 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8,
+ 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8,
+ 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8,
+ 8, 8, 8, 8, 8, 8, 8, 8, 8,
+};
+
+static const static_codebook _16c1_s_p9_0 = {
+ 2, 169,
+ (char *)_vq_lengthlist__16c1_s_p9_0,
+ 1, -513964032, 1628680192, 4, 0,
+ (long *)_vq_quantlist__16c1_s_p9_0,
+ 0
+};
+
+static const long _vq_quantlist__16c1_s_p9_1[] = {
+ 7,
+ 6,
+ 8,
+ 5,
+ 9,
+ 4,
+ 10,
+ 3,
+ 11,
+ 2,
+ 12,
+ 1,
+ 13,
+ 0,
+ 14,
+};
+
+static const char _vq_lengthlist__16c1_s_p9_1[] = {
+ 1, 4, 4, 4, 4, 8, 8,12,13,14,14,14,14,14,14, 6,
+ 6, 6, 6, 6,10, 9,14,14,14,14,14,14,14,14, 7, 6,
+ 5, 6, 6,10, 9,12,13,13,13,13,13,13,13,13, 7, 7,
+ 9, 9,11,11,12,13,13,13,13,13,13,13,13, 7, 7, 8,
+ 8,11,12,13,13,13,13,13,13,13,13,13,12,12,10,10,
+ 13,12,13,13,13,13,13,13,13,13,13,12,12,10,10,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,12,13,12,
+ 13,13,13,13,13,13,13,13,13,13,13,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,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,12,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,
+};
+
+static const static_codebook _16c1_s_p9_1 = {
+ 2, 225,
+ (char *)_vq_lengthlist__16c1_s_p9_1,
+ 1, -520986624, 1620377600, 4, 0,
+ (long *)_vq_quantlist__16c1_s_p9_1,
+ 0
+};
+
+static const long _vq_quantlist__16c1_s_p9_2[] = {
+ 10,
+ 9,
+ 11,
+ 8,
+ 12,
+ 7,
+ 13,
+ 6,
+ 14,
+ 5,
+ 15,
+ 4,
+ 16,
+ 3,
+ 17,
+ 2,
+ 18,
+ 1,
+ 19,
+ 0,
+ 20,
+};
+
+static const char _vq_lengthlist__16c1_s_p9_2[] = {
+ 1, 4, 4, 6, 6, 7, 7, 8, 7, 8, 8, 9, 9, 9, 9,10,
+ 10,10, 9,10,10,11,12,12, 8, 8, 8, 8, 9, 9, 9, 9,
+ 10,10,10,10,10,11,11,10,12,11,11,13,11, 7, 7, 8,
+ 8, 8, 8, 9, 9, 9,10,10,10,10, 9,10,10,11,11,12,
+ 11,11, 8, 8, 8, 8, 9, 9,10,10,10,10,11,11,11,11,
+ 11,11,11,12,11,12,12, 8, 8, 9, 9, 9, 9, 9,10,10,
+ 10,10,10,10,11,11,11,11,11,11,12,11, 9, 9, 9, 9,
+ 10,10,10,10,11,10,11,11,11,11,11,11,12,12,12,12,
+ 11, 9, 9, 9, 9,10,10,10,10,11,11,11,11,11,11,11,
+ 11,11,12,12,12,13, 9,10,10, 9,11,10,10,10,10,11,
+ 11,11,11,11,10,11,12,11,12,12,11,12,11,10, 9,10,
+ 10,11,10,11,11,11,11,11,11,11,11,11,12,12,11,12,
+ 12,12,10,10,10,11,10,11,11,11,11,11,11,11,11,11,
+ 11,11,12,13,12,12,11, 9,10,10,11,11,10,11,11,11,
+ 12,11,11,11,11,11,12,12,13,13,12,13,10,10,12,10,
+ 11,11,11,11,11,11,11,11,11,12,12,11,13,12,12,12,
+ 12,13,12,11,11,11,11,11,11,12,11,12,11,11,11,11,
+ 12,12,13,12,11,12,12,11,11,11,11,11,12,11,11,11,
+ 11,12,11,11,12,11,12,13,13,12,12,12,12,11,11,11,
+ 11,11,12,11,11,12,11,12,11,11,11,11,13,12,12,12,
+ 12,13,11,11,11,12,12,11,11,11,12,11,12,12,12,11,
+ 12,13,12,11,11,12,12,11,12,11,11,11,12,12,11,12,
+ 11,11,11,12,12,12,12,13,12,13,12,12,12,12,11,11,
+ 12,11,11,11,11,11,11,12,12,12,13,12,11,13,13,12,
+ 12,11,12,10,11,11,11,11,12,11,12,12,11,12,12,13,
+ 12,12,13,12,12,12,12,12,11,12,12,12,11,12,11,11,
+ 11,12,13,12,13,13,13,13,13,12,13,13,12,12,13,11,
+ 11,11,11,11,12,11,11,12,11,
+};
+
+static const static_codebook _16c1_s_p9_2 = {
+ 2, 441,
+ (char *)_vq_lengthlist__16c1_s_p9_2,
+ 1, -529268736, 1611661312, 5, 0,
+ (long *)_vq_quantlist__16c1_s_p9_2,
+ 0
+};
+
+static const char _huff_lengthlist__16c1_s_short[] = {
+ 5, 6,17, 8,12, 9,10,10,12,13, 5, 2,17, 4, 9, 5,
+ 7, 8,11,13,16,16,16,16,16,16,16,16,16,16, 6, 4,
+ 16, 5,10, 5, 7,10,14,16,13, 9,16,11, 8, 7, 8, 9,
+ 13,16, 7, 4,16, 5, 7, 4, 6, 8,11,13, 8, 6,16, 7,
+ 8, 5, 5, 7, 9,13, 9, 8,16, 9, 8, 6, 6, 7, 9,13,
+ 11,11,16,10,10, 7, 7, 7, 9,13,13,13,16,13,13, 9,
+ 9, 9,10,13,
+};
+
+static const static_codebook _huff_book__16c1_s_short = {
+ 2, 100,
+ (char *)_huff_lengthlist__16c1_s_short,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
+static const char _huff_lengthlist__16c2_s_long[] = {
+ 4, 7, 9, 9, 9, 8, 9,10,13,16, 5, 4, 5, 6, 7, 7,
+ 8, 9,12,16, 6, 5, 5, 5, 7, 7, 9,10,12,15, 7, 6,
+ 5, 4, 5, 6, 8, 9,10,13, 8, 7, 7, 5, 5, 5, 7, 9,
+ 10,12, 7, 7, 7, 6, 5, 5, 6, 7,10,12, 8, 8, 8, 7,
+ 7, 5, 5, 6, 9,11, 8, 9, 9, 8, 8, 6, 6, 5, 8,11,
+ 10,11,12,12,11, 9, 9, 8, 9,12,13,14,15,15,14,12,
+ 12,11,11,13,
+};
+
+static const static_codebook _huff_book__16c2_s_long = {
+ 2, 100,
+ (char *)_huff_lengthlist__16c2_s_long,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
+static const long _vq_quantlist__16c2_s_p1_0[] = {
+ 1,
+ 0,
+ 2,
+};
+
+static const char _vq_lengthlist__16c2_s_p1_0[] = {
+ 1, 3, 3, 0, 0, 0, 0, 0, 0, 4, 5, 5, 0, 0, 0, 0,
+ 0, 0, 4, 5, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0,
+};
+
+static const static_codebook _16c2_s_p1_0 = {
+ 4, 81,
+ (char *)_vq_lengthlist__16c2_s_p1_0,
+ 1, -535822336, 1611661312, 2, 0,
+ (long *)_vq_quantlist__16c2_s_p1_0,
+ 0
+};
+
+static const long _vq_quantlist__16c2_s_p2_0[] = {
+ 2,
+ 1,
+ 3,
+ 0,
+ 4,
+};
+
+static const char _vq_lengthlist__16c2_s_p2_0[] = {
+ 2, 4, 4, 7, 7, 0, 0, 0, 8, 8, 0, 0, 0, 8, 8, 0,
+ 0, 0, 8, 8, 0, 0, 0, 8, 8, 4, 4, 4, 8, 7, 0, 0,
+ 0, 8, 8, 0, 0, 0, 8, 8, 0, 0, 0, 9, 9, 0, 0, 0,
+ 9, 9, 4, 4, 4, 7, 8, 0, 0, 0, 8, 8, 0, 0, 0, 8,
+ 8, 0, 0, 0, 9, 9, 0, 0, 0, 9, 9, 7, 8, 8,10, 9,
+ 0, 0, 0,12,11, 0, 0, 0,11,12, 0, 0, 0,14,13, 0,
+ 0, 0,14,14, 7, 8, 8, 9,10, 0, 0, 0,11,12, 0, 0,
+ 0,11,11, 0, 0, 0,14,14, 0, 0, 0,14,14, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 8, 8, 8,11,11, 0, 0, 0,
+ 12,11, 0, 0, 0,12,12, 0, 0, 0,13,12, 0, 0, 0,13,
+ 13, 8, 8, 8,11,11, 0, 0, 0,11,11, 0, 0, 0,12,12,
+ 0, 0, 0,13,13, 0, 0, 0,13,13, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 8, 9, 8,12,11, 0, 0, 0,12,12, 0,
+ 0, 0,12,11, 0, 0, 0,13,13, 0, 0, 0,13,13, 8, 8,
+ 8,11,12, 0, 0, 0,11,12, 0, 0, 0,11,12, 0, 0, 0,
+ 13,14, 0, 0, 0,13,13, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 8, 9, 9,14,14, 0, 0, 0,13,13, 0, 0, 0,13,
+ 13, 0, 0, 0,13,12, 0, 0, 0,13,13, 8, 9, 9,14,14,
+ 0, 0, 0,13,13, 0, 0, 0,13,13, 0, 0, 0,12,13, 0,
+ 0, 0,13,13, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 8,
+ 9, 9,14,14, 0, 0, 0,13,13, 0, 0, 0,13,13, 0, 0,
+ 0,13,13, 0, 0, 0,13,12, 8, 9, 9,14,14, 0, 0, 0,
+ 13,13, 0, 0, 0,13,13, 0, 0, 0,13,13, 0, 0, 0,12,
+ 12,
+};
+
+static const static_codebook _16c2_s_p2_0 = {
+ 4, 625,
+ (char *)_vq_lengthlist__16c2_s_p2_0,
+ 1, -533725184, 1611661312, 3, 0,
+ (long *)_vq_quantlist__16c2_s_p2_0,
+ 0
+};
+
+static const long _vq_quantlist__16c2_s_p3_0[] = {
+ 4,
+ 3,
+ 5,
+ 2,
+ 6,
+ 1,
+ 7,
+ 0,
+ 8,
+};
+
+static const char _vq_lengthlist__16c2_s_p3_0[] = {
+ 1, 3, 3, 5, 5, 7, 7, 8, 8, 0, 0, 0, 6, 6, 8, 8,
+ 9, 9, 0, 0, 0, 6, 6, 8, 8, 9, 9, 0, 0, 0, 7, 7,
+ 8, 9,10,10, 0, 0, 0, 7, 7, 9, 9,10,10, 0, 0, 0,
+ 8, 8, 9, 9,11,11, 0, 0, 0, 7, 7, 9, 9,11,11, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0,
+};
+
+static const static_codebook _16c2_s_p3_0 = {
+ 2, 81,
+ (char *)_vq_lengthlist__16c2_s_p3_0,
+ 1, -531628032, 1611661312, 4, 0,
+ (long *)_vq_quantlist__16c2_s_p3_0,
+ 0
+};
+
+static const long _vq_quantlist__16c2_s_p4_0[] = {
+ 8,
+ 7,
+ 9,
+ 6,
+ 10,
+ 5,
+ 11,
+ 4,
+ 12,
+ 3,
+ 13,
+ 2,
+ 14,
+ 1,
+ 15,
+ 0,
+ 16,
+};
+
+static const char _vq_lengthlist__16c2_s_p4_0[] = {
+ 2, 3, 3, 5, 5, 6, 6, 6, 6, 7, 7, 8, 8, 8, 8, 9,
+ 9, 0, 0, 0, 6, 6, 7, 7, 8, 8, 8, 8, 9, 9,10,10,
+ 11,10, 0, 0, 0, 6, 6, 7, 7, 8, 8, 8, 8, 9, 9,10,
+ 10,10,10, 0, 0, 0, 6, 6, 8, 8, 9, 9, 9, 9,10,10,
+ 11,11,11,11, 0, 0, 0, 7, 6, 8, 8, 9, 9, 9, 9,10,
+ 10,11,11,11,11, 0, 0, 0, 7, 7, 8, 8, 9, 9,10,10,
+ 11,11,11,11,12,12, 0, 0, 0, 7, 7, 8, 8, 9, 9,10,
+ 10,11,11,11,11,12,12, 0, 0, 0, 7, 8, 8, 8, 9, 9,
+ 10,10,11,11,12,12,13,13, 0, 0, 0, 0, 0, 8, 8, 9,
+ 9,10,10,11,11,12,12,13,13, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0,
+};
+
+static const static_codebook _16c2_s_p4_0 = {
+ 2, 289,
+ (char *)_vq_lengthlist__16c2_s_p4_0,
+ 1, -529530880, 1611661312, 5, 0,
+ (long *)_vq_quantlist__16c2_s_p4_0,
+ 0
+};
+
+static const long _vq_quantlist__16c2_s_p5_0[] = {
+ 1,
+ 0,
+ 2,
+};
+
+static const char _vq_lengthlist__16c2_s_p5_0[] = {
+ 1, 4, 4, 5, 7, 7, 6, 7, 7, 4, 6, 6,10,11,10,10,
+ 10,11, 4, 6, 6,10,10,11,10,11,10, 5,10,10, 9,12,
+ 11,10,12,12, 7,10,10,12,12,12,12,13,13, 7,11,10,
+ 11,12,12,12,13,13, 6,11,10,10,12,12,11,12,12, 7,
+ 11,10,12,13,13,12,12,12, 7,10,11,12,13,13,12,12,
+ 12,
+};
+
+static const static_codebook _16c2_s_p5_0 = {
+ 4, 81,
+ (char *)_vq_lengthlist__16c2_s_p5_0,
+ 1, -529137664, 1618345984, 2, 0,
+ (long *)_vq_quantlist__16c2_s_p5_0,
+ 0
+};
+
+static const long _vq_quantlist__16c2_s_p5_1[] = {
+ 5,
+ 4,
+ 6,
+ 3,
+ 7,
+ 2,
+ 8,
+ 1,
+ 9,
+ 0,
+ 10,
+};
+
+static const char _vq_lengthlist__16c2_s_p5_1[] = {
+ 2, 3, 3, 6, 6, 6, 6, 7, 7, 7, 7,11,10,10, 6, 6,
+ 7, 7, 8, 8, 8, 8,10,10,10, 6, 6, 7, 7, 8, 8, 8,
+ 8,11,11,11, 7, 7, 8, 8, 8, 8, 9, 9,11,11,11, 6,
+ 7, 8, 8, 8, 8, 9, 9,11,11,11, 7, 7, 8, 8, 8, 8,
+ 8, 8,11,11,11, 7, 7, 8, 8, 8, 8, 9, 9,11,11,11,
+ 8, 8, 8, 8, 8, 8, 8, 8,11,11,11,11,11, 8, 8, 8,
+ 8, 8, 8,12,11,11,11,11, 8, 8, 8, 8, 8, 8,12,11,
+ 11,11,11, 7, 7, 8, 8, 8, 8,
+};
+
+static const static_codebook _16c2_s_p5_1 = {
+ 2, 121,
+ (char *)_vq_lengthlist__16c2_s_p5_1,
+ 1, -531365888, 1611661312, 4, 0,
+ (long *)_vq_quantlist__16c2_s_p5_1,
+ 0
+};
+
+static const long _vq_quantlist__16c2_s_p6_0[] = {
+ 6,
+ 5,
+ 7,
+ 4,
+ 8,
+ 3,
+ 9,
+ 2,
+ 10,
+ 1,
+ 11,
+ 0,
+ 12,
+};
+
+static const char _vq_lengthlist__16c2_s_p6_0[] = {
+ 1, 4, 4, 6, 6, 8, 7, 8, 8, 9, 9,10,10, 5, 5, 5,
+ 7, 7, 9, 9, 9, 9,11,11,12,12, 6, 5, 5, 7, 7, 9,
+ 9,10, 9,11,11,12,12, 0, 7, 7, 7, 7, 9, 9,10,10,
+ 11,11,12,12, 0, 7, 7, 7, 7, 9, 9,10,10,11,11,12,
+ 12, 0,11,11, 8, 8,10,10,11,11,12,12,13,13, 0,12,
+ 12, 9, 9,10,10,11,11,12,12,13,13, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0,
+};
+
+static const static_codebook _16c2_s_p6_0 = {
+ 2, 169,
+ (char *)_vq_lengthlist__16c2_s_p6_0,
+ 1, -526516224, 1616117760, 4, 0,
+ (long *)_vq_quantlist__16c2_s_p6_0,
+ 0
+};
+
+static const long _vq_quantlist__16c2_s_p6_1[] = {
+ 2,
+ 1,
+ 3,
+ 0,
+ 4,
+};
+
+static const char _vq_lengthlist__16c2_s_p6_1[] = {
+ 2, 3, 3, 5, 5, 6, 6, 6, 5, 5, 6, 6, 6, 5, 5, 6,
+ 6, 6, 5, 5, 6, 6, 6, 5, 5,
+};
+
+static const static_codebook _16c2_s_p6_1 = {
+ 2, 25,
+ (char *)_vq_lengthlist__16c2_s_p6_1,
+ 1, -533725184, 1611661312, 3, 0,
+ (long *)_vq_quantlist__16c2_s_p6_1,
+ 0
+};
+
+static const long _vq_quantlist__16c2_s_p7_0[] = {
+ 6,
+ 5,
+ 7,
+ 4,
+ 8,
+ 3,
+ 9,
+ 2,
+ 10,
+ 1,
+ 11,
+ 0,
+ 12,
+};
+
+static const char _vq_lengthlist__16c2_s_p7_0[] = {
+ 1, 4, 4, 7, 7, 8, 8, 8, 8,10, 9,10,10, 5, 5, 5,
+ 7, 7, 9, 9,10,10,11,10,12,11, 6, 5, 5, 7, 7, 9,
+ 9,10,10,11,11,12,12,20, 7, 7, 7, 7, 9, 9,10,10,
+ 11,11,12,12,20, 7, 7, 7, 7, 9, 9,11,10,12,11,12,
+ 12,20,11,11, 8, 8,10,10,11,11,12,12,13,13,20,12,
+ 12, 8, 8, 9, 9,11,11,12,12,13,13,20,20,21,10,10,
+ 10,10,11,11,12,12,13,13,21,21,21,10,10,10,10,11,
+ 11,12,12,13,13,21,21,21,14,14,11,11,12,12,13,13,
+ 13,14,21,21,21,16,15,11,11,12,11,13,13,14,14,21,
+ 21,21,21,21,13,13,12,12,13,13,14,14,21,21,21,21,
+ 21,13,13,12,12,13,13,14,14,
+};
+
+static const static_codebook _16c2_s_p7_0 = {
+ 2, 169,
+ (char *)_vq_lengthlist__16c2_s_p7_0,
+ 1, -523206656, 1618345984, 4, 0,
+ (long *)_vq_quantlist__16c2_s_p7_0,
+ 0
+};
+
+static const long _vq_quantlist__16c2_s_p7_1[] = {
+ 5,
+ 4,
+ 6,
+ 3,
+ 7,
+ 2,
+ 8,
+ 1,
+ 9,
+ 0,
+ 10,
+};
+
+static const char _vq_lengthlist__16c2_s_p7_1[] = {
+ 2, 4, 4, 6, 6, 7, 7, 7, 7, 7, 7, 9, 9, 9, 6, 7,
+ 7, 7, 7, 7, 8, 8, 9, 9, 9, 6, 6, 7, 7, 7, 7, 8,
+ 8, 9, 9, 9, 7, 7, 7, 7, 8, 8, 8, 8, 9, 9, 9, 7,
+ 7, 7, 7, 8, 8, 8, 8, 9, 9, 9, 7, 7, 7, 7, 8, 8,
+ 8, 8, 9, 9, 9, 7, 7, 7, 7, 7, 7, 8, 8, 9, 9, 9,
+ 7, 7, 8, 8, 7, 7, 8, 8, 9, 9, 9, 9, 9, 8, 8, 7,
+ 7, 8, 8, 9, 9, 9, 9, 9, 8, 8, 7, 7, 8, 8, 9, 9,
+ 9, 9, 9, 7, 7, 7, 7, 8, 8,
+};
+
+static const static_codebook _16c2_s_p7_1 = {
+ 2, 121,
+ (char *)_vq_lengthlist__16c2_s_p7_1,
+ 1, -531365888, 1611661312, 4, 0,
+ (long *)_vq_quantlist__16c2_s_p7_1,
+ 0
+};
+
+static const long _vq_quantlist__16c2_s_p8_0[] = {
+ 7,
+ 6,
+ 8,
+ 5,
+ 9,
+ 4,
+ 10,
+ 3,
+ 11,
+ 2,
+ 12,
+ 1,
+ 13,
+ 0,
+ 14,
+};
+
+static const char _vq_lengthlist__16c2_s_p8_0[] = {
+ 1, 4, 4, 6, 6, 7, 7, 7, 7, 8, 8, 9, 9,10,10, 6,
+ 6, 6, 8, 8, 9, 9, 8, 8, 9, 9,10,10,11,11, 6, 5,
+ 5, 8, 7, 9, 9, 8, 8, 9, 9,10,10,11,11,20, 8, 8,
+ 8, 8, 9, 9, 9, 9,10,10,11,10,12,11,20, 8, 8, 8,
+ 8, 9, 9, 9, 9,10,10,11,11,12,12,20,12,12, 9, 9,
+ 10,10,10,10,11,11,12,12,13,12,20,13,13, 9, 9,10,
+ 10,10,10,11,11,12,12,13,13,20,20,20, 9, 9, 9, 9,
+ 10,10,11,11,12,12,13,12,20,20,20, 9, 9, 9, 8,10,
+ 10,12,11,12,12,13,13,20,20,20,13,13,10,10,11,11,
+ 12,12,13,13,13,13,20,20,20,13,13,10,10,11,10,12,
+ 11,13,13,14,14,20,20,20,20,20,11,11,11,11,12,12,
+ 13,13,14,14,20,20,20,20,20,11,10,11,11,13,11,13,
+ 13,14,14,20,20,21,21,21,14,14,11,12,13,13,13,13,
+ 14,14,21,21,21,21,21,15,15,12,11,13,12,14,13,15,
+ 14,
+};
+
+static const static_codebook _16c2_s_p8_0 = {
+ 2, 225,
+ (char *)_vq_lengthlist__16c2_s_p8_0,
+ 1, -520986624, 1620377600, 4, 0,
+ (long *)_vq_quantlist__16c2_s_p8_0,
+ 0
+};
+
+static const long _vq_quantlist__16c2_s_p8_1[] = {
+ 10,
+ 9,
+ 11,
+ 8,
+ 12,
+ 7,
+ 13,
+ 6,
+ 14,
+ 5,
+ 15,
+ 4,
+ 16,
+ 3,
+ 17,
+ 2,
+ 18,
+ 1,
+ 19,
+ 0,
+ 20,
+};
+
+static const char _vq_lengthlist__16c2_s_p8_1[] = {
+ 2, 4, 4, 6, 6, 7, 7, 8, 8, 8, 8, 8, 8, 8, 8, 8,
+ 8, 8, 8, 8, 8,11,11,11, 7, 7, 8, 8, 8, 8, 9, 9,
+ 9, 9, 9, 9, 9, 9, 9, 9, 9, 9,10,11,10, 7, 7, 8,
+ 8, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9,11,
+ 11,11, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9,
+ 9, 9, 9, 9,11,11,11, 8, 8, 8, 8, 9, 9, 9, 9, 9,
+ 9, 9, 9,10, 9,10,10,10,10,11,11,11, 8, 8, 9, 9,
+ 9, 9, 9, 9, 9, 9,10,10,10,10,10,10,10,10,11,11,
+ 11, 8, 8, 9, 9, 9, 9, 9, 9, 9,10,10,10,10,10,10,
+ 10,10,10,11,11,11, 9, 9, 9, 9, 9, 9, 9, 9,10,10,
+ 10,10,10,10,10,10,10,10,11,11,11,11,11, 9, 9, 9,
+ 9, 9, 9,10,10,10,10,10,10,10,10,10,10,11,11,11,
+ 11,11, 9, 9, 9, 9,10,10,10,10,10,10,10,10,10,10,
+ 10,10,11,11,11,11,11, 9, 9, 9, 9,10,10,10,10,10,
+ 10,10,10,10,10,10,10,11,11,11,11,11,10, 9,10,10,
+ 10,10,10,10,10,10,10,10,10,10,10,10,11,11,11,11,
+ 11,11,11,10,10,10,10,10,10,10,10,10,10,10,10,10,
+ 10,11,11,11,11,11,11,11,10,10,10,10,10,10,10,10,
+ 10,10,10,10,10,10,11,11,11,11,11,11,11,10,10,10,
+ 10,10,10,10,10,10,10,10,10,10,10,11,11,11,11,11,
+ 11,11,10,10,10,10,10,10,10,10,10,10,10,10,10,10,
+ 11,11,11,11,11,11,11,11,11,10,10,10,10,10,10,10,
+ 10,10,10,10,10,11,11,11,11,11,11,11,11,11,10,10,
+ 10,10,10,10,10,10,10,10,10,10,11,11,11,11,11,11,
+ 11,11,11,10,10,10,10,10,10,10,10,10,10,10,10,11,
+ 11,11,11,11,11,11,11,11,10,10,10,10,10,10,10,10,
+ 10,10,10,10,11,11,11,11,11,11,11,11,11,11,11,10,
+ 10,10,10,10,10,10,10,10,10,
+};
+
+static const static_codebook _16c2_s_p8_1 = {
+ 2, 441,
+ (char *)_vq_lengthlist__16c2_s_p8_1,
+ 1, -529268736, 1611661312, 5, 0,
+ (long *)_vq_quantlist__16c2_s_p8_1,
+ 0
+};
+
+static const long _vq_quantlist__16c2_s_p9_0[] = {
+ 8,
+ 7,
+ 9,
+ 6,
+ 10,
+ 5,
+ 11,
+ 4,
+ 12,
+ 3,
+ 13,
+ 2,
+ 14,
+ 1,
+ 15,
+ 0,
+ 16,
+};
+
+static const char _vq_lengthlist__16c2_s_p9_0[] = {
+ 1, 4, 3,10, 8,10,10,10,10,10,10,10,10,10,10,10,
+ 10, 6,10,10,10,10,10,10,10,10,10,10,10,10,10,10,
+ 10,10, 6,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,10,10,10,10,10,10,10,10,10,10,10,
+ 10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,
+ 10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,
+ 10,10,10,10,10,10,10,10,10,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 const static_codebook _16c2_s_p9_0 = {
+ 2, 289,
+ (char *)_vq_lengthlist__16c2_s_p9_0,
+ 1, -509798400, 1631393792, 5, 0,
+ (long *)_vq_quantlist__16c2_s_p9_0,
+ 0
+};
+
+static const long _vq_quantlist__16c2_s_p9_1[] = {
+ 9,
+ 8,
+ 10,
+ 7,
+ 11,
+ 6,
+ 12,
+ 5,
+ 13,
+ 4,
+ 14,
+ 3,
+ 15,
+ 2,
+ 16,
+ 1,
+ 17,
+ 0,
+ 18,
+};
+
+static const char _vq_lengthlist__16c2_s_p9_1[] = {
+ 1, 4, 4, 7, 7, 7, 7, 7, 7, 8, 8,10, 9,11,10,13,
+ 11,14,13, 6, 6, 6, 8, 8, 8, 8, 8, 7, 9, 8,11, 9,
+ 13,11,14,12,14,13, 5, 6, 6, 8, 8, 8, 8, 8, 8, 9,
+ 9,11,11,13,11,14,13,15,15,17, 8, 8, 8, 8, 9, 9,
+ 9, 8,11, 9,12,10,13,11,14,12,14,13,17, 8, 8, 8,
+ 8, 9, 9, 9, 9,10,10,11,11,13,13,13,14,16,15,17,
+ 12,12, 8, 8, 9, 9,10,10,11,11,12,11,13,12,13,12,
+ 14,13,16,12,12, 8, 8, 9, 9,10,10,11,11,12,12,13,
+ 13,14,14,15,15,17,17,17, 9, 9, 9, 9,11,11,12,12,
+ 12,13,13,13,16,14,14,14,17,17,17, 9, 8, 9, 8,11,
+ 10,12,12,13,13,14,14,15,15,16,16,17,17,17,12,12,
+ 10,10,11,12,12,13,13,14,13,15,15,14,16,15,17,17,
+ 17,12,12,10, 8,12, 9,13,12,14,14,15,14,15,16,16,
+ 16,17,17,17,17,17,11,11,12,12,14,14,14,16,15,16,
+ 15,16,15,17,17,17,17,17,17,11, 9,12,10,13,11,15,
+ 14,16,16,17,16,16,15,17,17,17,17,17,15,15,12,12,
+ 14,14,15,16,16,15,16,16,17,17,17,17,17,17,17,14,
+ 14,12,10,14,11,15,12,17,16,15,16,17,16,17,17,17,
+ 17,17,17,17,13,13,14,14,14,16,17,17,16,17,17,17,
+ 17,17,17,17,17,17,17,13, 9,13,12,15,13,16,16,17,
+ 17,17,17,17,17,17,17,17,17,17,15,17,14,14,15,16,
+ 16,17,16,17,16,17,17,17,17,17,17,17,17,17,17,14,
+ 13,15,16,16,17,16,17,17,17,
+};
+
+static const static_codebook _16c2_s_p9_1 = {
+ 2, 361,
+ (char *)_vq_lengthlist__16c2_s_p9_1,
+ 1, -518287360, 1622704128, 5, 0,
+ (long *)_vq_quantlist__16c2_s_p9_1,
+ 0
+};
+
+static const long _vq_quantlist__16c2_s_p9_2[] = {
+ 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 const char _vq_lengthlist__16c2_s_p9_2[] = {
+ 2, 4, 4, 4, 4, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 6,
+ 6, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7,
+ 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7,
+ 7,
+};
+
+static const static_codebook _16c2_s_p9_2 = {
+ 1, 49,
+ (char *)_vq_lengthlist__16c2_s_p9_2,
+ 1, -526909440, 1611661312, 6, 0,
+ (long *)_vq_quantlist__16c2_s_p9_2,
+ 0
+};
+
+static const char _huff_lengthlist__16c2_s_short[] = {
+ 7,10,12,11,12,13,15,16,18,15,10, 8, 8, 8, 9,10,
+ 12,13,14,17,10, 7, 7, 7, 7, 8,10,12,15,18,10, 7,
+ 7, 5, 5, 6, 8,10,13,15,10, 7, 6, 5, 4, 4, 6, 9,
+ 12,15,11, 7, 7, 5, 4, 3, 4, 7,11,13,12, 9, 8, 7,
+ 5, 4, 4, 5,10,13,11,11,11, 9, 7, 5, 5, 5, 9,12,
+ 13,12,13,12,10, 8, 8, 7, 9,13,14,14,14,14,13,11,
+ 11,10,10,13,
+};
+
+static const static_codebook _huff_book__16c2_s_short = {
+ 2, 100,
+ (char *)_huff_lengthlist__16c2_s_short,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
+static const long _vq_quantlist__8c0_s_p1_0[] = {
+ 1,
+ 0,
+ 2,
+};
+
+static const char _vq_lengthlist__8c0_s_p1_0[] = {
+ 1, 5, 4, 0, 0, 0, 0, 0, 0, 5, 7, 7, 0, 0, 0, 0,
+ 0, 0, 5, 7, 7, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 5, 8, 8, 0, 0, 0, 0, 0, 0, 7, 8, 9, 0, 0, 0,
+ 0, 0, 0, 7, 8, 9, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 5, 8, 8, 0, 0, 0, 0, 0, 0, 7, 9, 9, 0, 0,
+ 0, 0, 0, 0, 7, 9, 8, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 5, 8, 8, 0, 0, 0, 0,
+ 0, 0, 8,10,10, 0, 0, 0, 0, 0, 0, 8, 9, 9, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 7,10, 9, 0, 0, 0,
+ 0, 0, 0, 8, 9,11, 0, 0, 0, 0, 0, 0, 9,11,11, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 7, 9,10, 0, 0,
+ 0, 0, 0, 0, 9,11,10, 0, 0, 0, 0, 0, 0, 9,11,11,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 5, 8, 8, 0, 0, 0, 0, 0, 0, 8, 9, 9, 0, 0,
+ 0, 0, 0, 0, 8, 9,10, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 7, 9, 9, 0, 0, 0, 0, 0, 0, 9,11,11, 0,
+ 0, 0, 0, 0, 0, 9,10,11, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 7, 9,10, 0, 0, 0, 0, 0, 0, 9,11,11,
+ 0, 0, 0, 0, 0, 0, 8,11, 9, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0,
+};
+
+static const static_codebook _8c0_s_p1_0 = {
+ 8, 6561,
+ (char *)_vq_lengthlist__8c0_s_p1_0,
+ 1, -535822336, 1611661312, 2, 0,
+ (long *)_vq_quantlist__8c0_s_p1_0,
+ 0
+};
+
+static const long _vq_quantlist__8c0_s_p3_0[] = {
+ 2,
+ 1,
+ 3,
+ 0,
+ 4,
+};
+
+static const char _vq_lengthlist__8c0_s_p3_0[] = {
+ 1, 4, 4, 6, 6, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 4, 5, 6, 7, 7, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 4, 5, 5, 7, 7, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6, 7, 7, 8, 8,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 6, 7, 7, 8, 8, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0,
+};
+
+static const static_codebook _8c0_s_p3_0 = {
+ 4, 625,
+ (char *)_vq_lengthlist__8c0_s_p3_0,
+ 1, -533725184, 1611661312, 3, 0,
+ (long *)_vq_quantlist__8c0_s_p3_0,
+ 0
+};
+
+static const long _vq_quantlist__8c0_s_p4_0[] = {
+ 4,
+ 3,
+ 5,
+ 2,
+ 6,
+ 1,
+ 7,
+ 0,
+ 8,
+};
+
+static const char _vq_lengthlist__8c0_s_p4_0[] = {
+ 1, 2, 3, 7, 7, 0, 0, 0, 0, 0, 0, 0, 6, 6, 0, 0,
+ 0, 0, 0, 0, 0, 6, 6, 0, 0, 0, 0, 0, 0, 0, 7, 7,
+ 0, 0, 0, 0, 0, 0, 0, 7, 7, 0, 0, 0, 0, 0, 0, 0,
+ 8, 8, 0, 0, 0, 0, 0, 0, 0, 9, 8, 0, 0, 0, 0, 0,
+ 0, 0,10,10, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0,
+};
+
+static const static_codebook _8c0_s_p4_0 = {
+ 2, 81,
+ (char *)_vq_lengthlist__8c0_s_p4_0,
+ 1, -531628032, 1611661312, 4, 0,
+ (long *)_vq_quantlist__8c0_s_p4_0,
+ 0
+};
+
+static const long _vq_quantlist__8c0_s_p5_0[] = {
+ 4,
+ 3,
+ 5,
+ 2,
+ 6,
+ 1,
+ 7,
+ 0,
+ 8,
+};
+
+static const char _vq_lengthlist__8c0_s_p5_0[] = {
+ 1, 3, 3, 5, 5, 7, 6, 8, 8, 0, 0, 0, 7, 7, 7, 7,
+ 8, 8, 0, 0, 0, 7, 7, 7, 7, 8, 9, 0, 0, 0, 8, 8,
+ 8, 8, 9, 9, 0, 0, 0, 8, 8, 8, 8, 9, 9, 0, 0, 0,
+ 9, 9, 8, 8,10,10, 0, 0, 0, 9, 9, 8, 8,10,10, 0,
+ 0, 0,10,10, 9, 9,10,10, 0, 0, 0, 0, 0, 9, 9,10,
+ 10,
+};
+
+static const static_codebook _8c0_s_p5_0 = {
+ 2, 81,
+ (char *)_vq_lengthlist__8c0_s_p5_0,
+ 1, -531628032, 1611661312, 4, 0,
+ (long *)_vq_quantlist__8c0_s_p5_0,
+ 0
+};
+
+static const long _vq_quantlist__8c0_s_p6_0[] = {
+ 8,
+ 7,
+ 9,
+ 6,
+ 10,
+ 5,
+ 11,
+ 4,
+ 12,
+ 3,
+ 13,
+ 2,
+ 14,
+ 1,
+ 15,
+ 0,
+ 16,
+};
+
+static const char _vq_lengthlist__8c0_s_p6_0[] = {
+ 1, 3, 3, 6, 6, 8, 8, 9, 9, 8, 8,10, 9,10,10,11,
+ 11, 0, 0, 0, 7, 7, 8, 8, 9, 9, 9, 9,10,10,11,11,
+ 11,12, 0, 0, 0, 7, 7, 8, 8, 9, 9, 9, 9,10,10,11,
+ 11,12,11, 0, 0, 0, 8, 8, 9, 9,10,10, 9, 9,10,10,
+ 11,11,12,12, 0, 0, 0, 8, 8, 9, 9,10,10, 9, 9,11,
+ 10,11,11,12,12, 0, 0, 0, 9, 9, 9, 9,10,10,10,10,
+ 11,11,11,12,12,12, 0, 0, 0, 9, 9, 9, 9,10,10,10,
+ 10,11,11,12,12,13,13, 0, 0, 0,10,10,10,10,11,11,
+ 10,10,11,11,12,12,13,13, 0, 0, 0, 0, 0,10, 9,10,
+ 11,10,10,11,11,12,12,13,13, 0, 0, 0, 0, 0, 9, 9,
+ 10, 9,10,11,12,12,13,13,14,13, 0, 0, 0, 0, 0, 9,
+ 9, 9,10,10,10,11,11,13,12,13,13, 0, 0, 0, 0, 0,
+ 10,10,10,10,11,11,12,12,13,13,14,14, 0, 0, 0, 0,
+ 0, 0, 0,10,10,11,11,12,12,13,13,13,14, 0, 0, 0,
+ 0, 0, 0, 0,11,11,11,11,12,12,13,14,14,14, 0, 0,
+ 0, 0, 0, 0, 0,11,11,11,11,12,12,13,13,14,13, 0,
+ 0, 0, 0, 0, 0, 0,11,11,12,12,13,13,14,14,14,14,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0,12,12,12,12,13,13,14,
+ 14,
+};
+
+static const static_codebook _8c0_s_p6_0 = {
+ 2, 289,
+ (char *)_vq_lengthlist__8c0_s_p6_0,
+ 1, -529530880, 1611661312, 5, 0,
+ (long *)_vq_quantlist__8c0_s_p6_0,
+ 0
+};
+
+static const long _vq_quantlist__8c0_s_p7_0[] = {
+ 1,
+ 0,
+ 2,
+};
+
+static const char _vq_lengthlist__8c0_s_p7_0[] = {
+ 1, 4, 4, 7, 6, 6, 7, 6, 6, 4, 7, 7,11, 9,10,12,
+ 9,10, 4, 7, 7,10,10,10,11, 9, 9, 6,11,10,11,11,
+ 12,11,11,11, 6,10,10,11,11,12,11,10,10, 6, 9,10,
+ 11,11,11,11,10,10, 7,10,11,12,11,11,12,11,12, 6,
+ 9, 9,10, 9, 9,11,10,10, 6, 9, 9,10,10,10,11,10,
+ 10,
+};
+
+static const static_codebook _8c0_s_p7_0 = {
+ 4, 81,
+ (char *)_vq_lengthlist__8c0_s_p7_0,
+ 1, -529137664, 1618345984, 2, 0,
+ (long *)_vq_quantlist__8c0_s_p7_0,
+ 0
+};
+
+static const long _vq_quantlist__8c0_s_p7_1[] = {
+ 5,
+ 4,
+ 6,
+ 3,
+ 7,
+ 2,
+ 8,
+ 1,
+ 9,
+ 0,
+ 10,
+};
+
+static const char _vq_lengthlist__8c0_s_p7_1[] = {
+ 1, 3, 3, 6, 6, 8, 8, 9, 9, 9, 9,10,10,10, 7, 7,
+ 8, 8, 9, 9, 9, 9,10,10, 9, 7, 7, 8, 8, 9, 9, 9,
+ 9,10,10,10, 8, 8, 9, 9, 9, 9, 9, 9,10,10,10, 8,
+ 8, 9, 9, 9, 9, 8, 9,10,10,10, 8, 8, 9, 9, 9,10,
+ 10,10,10,10,10, 9, 9, 9, 9, 9, 9,10,10,11,10,11,
+ 9, 9, 9, 9,10,10,10,10,11,11,11,10,10, 9, 9,10,
+ 10,10, 9,11,10,10,10,10,10,10, 9, 9,10,10,11,11,
+ 10,10,10, 9, 9, 9,10,10,10,
+};
+
+static const static_codebook _8c0_s_p7_1 = {
+ 2, 121,
+ (char *)_vq_lengthlist__8c0_s_p7_1,
+ 1, -531365888, 1611661312, 4, 0,
+ (long *)_vq_quantlist__8c0_s_p7_1,
+ 0
+};
+
+static const long _vq_quantlist__8c0_s_p8_0[] = {
+ 6,
+ 5,
+ 7,
+ 4,
+ 8,
+ 3,
+ 9,
+ 2,
+ 10,
+ 1,
+ 11,
+ 0,
+ 12,
+};
+
+static const char _vq_lengthlist__8c0_s_p8_0[] = {
+ 1, 4, 4, 7, 6, 7, 7, 7, 7, 8, 8, 9, 9, 7, 6, 6,
+ 7, 7, 8, 8, 7, 7, 8, 9,10,10, 7, 6, 6, 7, 7, 8,
+ 7, 7, 7, 9, 9,10,12, 0, 8, 8, 8, 8, 8, 9, 8, 8,
+ 9, 9,10,10, 0, 8, 8, 8, 8, 8, 9, 8, 9, 9, 9,11,
+ 10, 0, 0,13, 9, 8, 9, 9, 9, 9,10,10,11,11, 0,13,
+ 0, 9, 9, 9, 9, 9, 9,11,10,11,11, 0, 0, 0, 8, 9,
+ 10, 9,10,10,13,11,12,12, 0, 0, 0, 8, 9, 9, 9,10,
+ 10,13,12,12,13, 0, 0, 0,12, 0,10,10,12,11,10,11,
+ 12,12, 0, 0, 0,13,13,10,10,10,11,12, 0,13, 0, 0,
+ 0, 0, 0, 0,13,11, 0,12,12,12,13,12, 0, 0, 0, 0,
+ 0, 0,13,13,11,13,13,11,12,
+};
+
+static const static_codebook _8c0_s_p8_0 = {
+ 2, 169,
+ (char *)_vq_lengthlist__8c0_s_p8_0,
+ 1, -526516224, 1616117760, 4, 0,
+ (long *)_vq_quantlist__8c0_s_p8_0,
+ 0
+};
+
+static const long _vq_quantlist__8c0_s_p8_1[] = {
+ 2,
+ 1,
+ 3,
+ 0,
+ 4,
+};
+
+static const char _vq_lengthlist__8c0_s_p8_1[] = {
+ 1, 3, 4, 5, 5, 7, 6, 6, 6, 5, 7, 7, 7, 6, 6, 7,
+ 7, 7, 6, 6, 7, 7, 7, 6, 6,
+};
+
+static const static_codebook _8c0_s_p8_1 = {
+ 2, 25,
+ (char *)_vq_lengthlist__8c0_s_p8_1,
+ 1, -533725184, 1611661312, 3, 0,
+ (long *)_vq_quantlist__8c0_s_p8_1,
+ 0
+};
+
+static const long _vq_quantlist__8c0_s_p9_0[] = {
+ 1,
+ 0,
+ 2,
+};
+
+static const char _vq_lengthlist__8c0_s_p9_0[] = {
+ 1, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8,
+ 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8,
+ 8, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7,
+ 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7,
+ 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7,
+ 7,
+};
+
+static const static_codebook _8c0_s_p9_0 = {
+ 4, 81,
+ (char *)_vq_lengthlist__8c0_s_p9_0,
+ 1, -518803456, 1628680192, 2, 0,
+ (long *)_vq_quantlist__8c0_s_p9_0,
+ 0
+};
+
+static const long _vq_quantlist__8c0_s_p9_1[] = {
+ 7,
+ 6,
+ 8,
+ 5,
+ 9,
+ 4,
+ 10,
+ 3,
+ 11,
+ 2,
+ 12,
+ 1,
+ 13,
+ 0,
+ 14,
+};
+
+static const char _vq_lengthlist__8c0_s_p9_1[] = {
+ 1, 4, 4, 5, 5,10, 8,11,11,11,11,11,11,11,11, 6,
+ 6, 6, 7, 6,11,10,11,11,11,11,11,11,11,11, 7, 5,
+ 6, 6, 6, 8, 7,11,11,11,11,11,11,11,11,11, 7, 8,
+ 8, 8, 9, 9,11,11,11,11,11,11,11,11,11, 9, 8, 7,
+ 8, 9,11,11,11,11,11,11,11,11,11,11,11,10,11,11,
+ 11,11,11,11,11,11,11,11,11,11,11,11,11,10,11,11,
+ 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
+ 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
+ 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
+ 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
+ 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
+ 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
+ 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
+ 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
+ 11,
+};
+
+static const static_codebook _8c0_s_p9_1 = {
+ 2, 225,
+ (char *)_vq_lengthlist__8c0_s_p9_1,
+ 1, -520986624, 1620377600, 4, 0,
+ (long *)_vq_quantlist__8c0_s_p9_1,
+ 0
+};
+
+static const long _vq_quantlist__8c0_s_p9_2[] = {
+ 10,
+ 9,
+ 11,
+ 8,
+ 12,
+ 7,
+ 13,
+ 6,
+ 14,
+ 5,
+ 15,
+ 4,
+ 16,
+ 3,
+ 17,
+ 2,
+ 18,
+ 1,
+ 19,
+ 0,
+ 20,
+};
+
+static const char _vq_lengthlist__8c0_s_p9_2[] = {
+ 1, 5, 5, 7, 7, 8, 7, 8, 8,10,10, 9, 9,10,10,10,
+ 11,11,10,12,11,12,12,12, 9, 8, 8, 8, 8, 8, 9,10,
+ 10,10,10,11,11,11,10,11,11,12,12,11,12, 8, 8, 7,
+ 7, 8, 9,10,10,10, 9,10,10, 9,10,10,11,11,11,11,
+ 11,11, 9, 9, 9, 9, 8, 9,10,10,11,10,10,11,11,12,
+ 10,10,12,12,11,11,10, 9, 9,10, 8, 9,10,10,10, 9,
+ 10,10,11,11,10,11,10,10,10,12,12,12, 9,10, 9,10,
+ 9, 9,10,10,11,11,11,11,10,10,10,11,12,11,12,11,
+ 12,10,11,10,11, 9,10, 9,10, 9,10,10, 9,10,10,11,
+ 10,11,11,11,11,12,11, 9,10,10,10,10,11,11,11,11,
+ 11,10,11,11,11,11,10,12,10,12,12,11,12,10,10,11,
+ 10, 9,11,10,11, 9,10,11,10,10,10,11,11,11,11,12,
+ 12,10, 9, 9,11,10, 9,12,11,10,12,12,11,11,11,11,
+ 10,11,11,12,11,10,12, 9,11,10,11,10,10,11,10,11,
+ 9,10,10,10,11,12,11,11,12,11,10,10,11,11, 9,10,
+ 10,12,10,11,10,10,10, 9,10,10,10,10, 9,10,10,11,
+ 11,11,11,12,11,10,10,10,10,11,11,10,11,11, 9,11,
+ 10,12,10,12,11,10,11,10,10,10,11,10,10,11,11,10,
+ 11,10,10,10,10,11,11,12,10,10,10,11,10,11,12,11,
+ 10,11,10,10,11,11,10,12,10, 9,10,10,11,11,11,10,
+ 12,10,10,11,11,11,10,10,11,10,10,10,11,10,11,10,
+ 12,11,11,10,10,10,12,10,10,11, 9,10,11,11,11,10,
+ 10,11,10,10, 9,11,11,12,12,11,12,11,11,11,11,11,
+ 11, 9,10,11,10,12,10,10,10,10,11,10,10,11,10,10,
+ 12,10,10,10,10,10, 9,12,10,10,10,10,12, 9,11,10,
+ 10,11,10,12,12,10,12,12,12,10,10,10,10, 9,10,11,
+ 10,10,12,10,10,12,11,10,11,10,10,12,11,10,12,10,
+ 10,11, 9,11,10, 9,10, 9,10,
+};
+
+static const static_codebook _8c0_s_p9_2 = {
+ 2, 441,
+ (char *)_vq_lengthlist__8c0_s_p9_2,
+ 1, -529268736, 1611661312, 5, 0,
+ (long *)_vq_quantlist__8c0_s_p9_2,
+ 0
+};
+
+static const char _huff_lengthlist__8c0_s_single[] = {
+ 4, 5,18, 7,10, 6, 7, 8, 9,10, 5, 2,18, 5, 7, 5,
+ 6, 7, 8,11,17,17,17,17,17,17,17,17,17,17, 7, 4,
+ 17, 6, 9, 6, 8,10,12,15,11, 7,17, 9, 6, 6, 7, 9,
+ 11,15, 6, 4,17, 6, 6, 4, 5, 8,11,16, 6, 6,17, 8,
+ 6, 5, 6, 9,13,16, 8, 9,17,11, 9, 8, 8,11,13,17,
+ 9,12,17,15,14,13,12,13,14,17,12,15,17,17,17,17,
+ 17,16,17,17,
+};
+
+static const static_codebook _huff_book__8c0_s_single = {
+ 2, 100,
+ (char *)_huff_lengthlist__8c0_s_single,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
+static const long _vq_quantlist__8c1_s_p1_0[] = {
+ 1,
+ 0,
+ 2,
+};
+
+static const char _vq_lengthlist__8c1_s_p1_0[] = {
+ 1, 5, 5, 0, 0, 0, 0, 0, 0, 5, 7, 7, 0, 0, 0, 0,
+ 0, 0, 5, 7, 7, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 5, 8, 7, 0, 0, 0, 0, 0, 0, 7, 8, 9, 0, 0, 0,
+ 0, 0, 0, 7, 8, 9, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 5, 7, 8, 0, 0, 0, 0, 0, 0, 7, 9, 8, 0, 0,
+ 0, 0, 0, 0, 7, 9, 8, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 5, 8, 8, 0, 0, 0, 0,
+ 0, 0, 8, 9, 9, 0, 0, 0, 0, 0, 0, 8, 9, 9, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 7, 9, 9, 0, 0, 0,
+ 0, 0, 0, 8, 8,10, 0, 0, 0, 0, 0, 0, 9,10,10, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 7, 9, 9, 0, 0,
+ 0, 0, 0, 0, 8,10, 9, 0, 0, 0, 0, 0, 0, 9,10,10,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 5, 8, 8, 0, 0, 0, 0, 0, 0, 8, 9, 9, 0, 0,
+ 0, 0, 0, 0, 8, 9, 9, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 7, 9, 9, 0, 0, 0, 0, 0, 0, 9,10,10, 0,
+ 0, 0, 0, 0, 0, 8, 9,10, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 7, 9, 9, 0, 0, 0, 0, 0, 0, 9,10,10,
+ 0, 0, 0, 0, 0, 0, 8,10, 8, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0,
+};
+
+static const static_codebook _8c1_s_p1_0 = {
+ 8, 6561,
+ (char *)_vq_lengthlist__8c1_s_p1_0,
+ 1, -535822336, 1611661312, 2, 0,
+ (long *)_vq_quantlist__8c1_s_p1_0,
+ 0
+};
+
+static const long _vq_quantlist__8c1_s_p3_0[] = {
+ 2,
+ 1,
+ 3,
+ 0,
+ 4,
+};
+
+static const char _vq_lengthlist__8c1_s_p3_0[] = {
+ 2, 4, 4, 5, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 4, 4, 4, 6, 6, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 4, 4, 4, 6, 6, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6, 6, 6, 7, 7,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 6, 6, 6, 7, 7, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0,
+};
+
+static const static_codebook _8c1_s_p3_0 = {
+ 4, 625,
+ (char *)_vq_lengthlist__8c1_s_p3_0,
+ 1, -533725184, 1611661312, 3, 0,
+ (long *)_vq_quantlist__8c1_s_p3_0,
+ 0
+};
+
+static const long _vq_quantlist__8c1_s_p4_0[] = {
+ 4,
+ 3,
+ 5,
+ 2,
+ 6,
+ 1,
+ 7,
+ 0,
+ 8,
+};
+
+static const char _vq_lengthlist__8c1_s_p4_0[] = {
+ 1, 2, 3, 7, 7, 0, 0, 0, 0, 0, 0, 0, 6, 6, 0, 0,
+ 0, 0, 0, 0, 0, 6, 6, 0, 0, 0, 0, 0, 0, 0, 7, 7,
+ 0, 0, 0, 0, 0, 0, 0, 7, 7, 0, 0, 0, 0, 0, 0, 0,
+ 8, 8, 0, 0, 0, 0, 0, 0, 0, 9, 8, 0, 0, 0, 0, 0,
+ 0, 0,10,10, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0,
+};
+
+static const static_codebook _8c1_s_p4_0 = {
+ 2, 81,
+ (char *)_vq_lengthlist__8c1_s_p4_0,
+ 1, -531628032, 1611661312, 4, 0,
+ (long *)_vq_quantlist__8c1_s_p4_0,
+ 0
+};
+
+static const long _vq_quantlist__8c1_s_p5_0[] = {
+ 4,
+ 3,
+ 5,
+ 2,
+ 6,
+ 1,
+ 7,
+ 0,
+ 8,
+};
+
+static const char _vq_lengthlist__8c1_s_p5_0[] = {
+ 1, 3, 3, 4, 5, 6, 6, 8, 8, 0, 0, 0, 8, 8, 7, 7,
+ 9, 9, 0, 0, 0, 8, 8, 7, 7, 9, 9, 0, 0, 0, 9,10,
+ 8, 8, 9, 9, 0, 0, 0,10,10, 8, 8, 9, 9, 0, 0, 0,
+ 11,10, 8, 8,10,10, 0, 0, 0,11,11, 8, 8,10,10, 0,
+ 0, 0,12,12, 9, 9,10,10, 0, 0, 0, 0, 0, 9, 9,10,
+ 10,
+};
+
+static const static_codebook _8c1_s_p5_0 = {
+ 2, 81,
+ (char *)_vq_lengthlist__8c1_s_p5_0,
+ 1, -531628032, 1611661312, 4, 0,
+ (long *)_vq_quantlist__8c1_s_p5_0,
+ 0
+};
+
+static const long _vq_quantlist__8c1_s_p6_0[] = {
+ 8,
+ 7,
+ 9,
+ 6,
+ 10,
+ 5,
+ 11,
+ 4,
+ 12,
+ 3,
+ 13,
+ 2,
+ 14,
+ 1,
+ 15,
+ 0,
+ 16,
+};
+
+static const char _vq_lengthlist__8c1_s_p6_0[] = {
+ 1, 3, 3, 5, 5, 8, 8, 8, 8, 9, 9,10,10,11,11,11,
+ 11, 0, 0, 0, 8, 8, 8, 8, 9, 9, 9, 9,10,10,11,11,
+ 12,12, 0, 0, 0, 8, 8, 8, 8, 9, 9, 9, 9,10,10,11,
+ 11,12,12, 0, 0, 0, 9, 9, 8, 8,10,10,10,10,11,11,
+ 12,12,12,12, 0, 0, 0, 9, 9, 8, 8,10,10,10,10,11,
+ 11,12,12,12,12, 0, 0, 0,10,10, 9, 9,10,10,10,10,
+ 11,11,12,12,13,13, 0, 0, 0,10,10, 9, 9,10,10,10,
+ 10,11,11,12,12,13,13, 0, 0, 0,11,11, 9, 9,10,10,
+ 10,10,11,11,12,12,13,13, 0, 0, 0, 0, 0, 9, 9,10,
+ 10,10,10,11,11,12,12,13,13, 0, 0, 0, 0, 0, 9, 9,
+ 10,10,11,11,12,12,12,12,13,13, 0, 0, 0, 0, 0, 9,
+ 9,10,10,11,11,12,11,12,12,13,13, 0, 0, 0, 0, 0,
+ 10,10,11,11,11,11,12,12,13,12,13,13, 0, 0, 0, 0,
+ 0, 0, 0,11,10,11,11,12,12,13,13,13,13, 0, 0, 0,
+ 0, 0, 0, 0,11,11,12,12,12,12,13,13,13,14, 0, 0,
+ 0, 0, 0, 0, 0,11,11,12,12,12,12,13,13,14,13, 0,
+ 0, 0, 0, 0, 0, 0,12,12,12,12,13,13,13,13,14,14,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0,12,12,13,13,13,13,14,
+ 14,
+};
+
+static const static_codebook _8c1_s_p6_0 = {
+ 2, 289,
+ (char *)_vq_lengthlist__8c1_s_p6_0,
+ 1, -529530880, 1611661312, 5, 0,
+ (long *)_vq_quantlist__8c1_s_p6_0,
+ 0
+};
+
+static const long _vq_quantlist__8c1_s_p7_0[] = {
+ 1,
+ 0,
+ 2,
+};
+
+static const char _vq_lengthlist__8c1_s_p7_0[] = {
+ 1, 4, 4, 6, 6, 6, 7, 6, 6, 4, 7, 7,10, 9, 9,10,
+ 9, 9, 5, 7, 7,10, 9, 9,10, 9, 9, 6,10,10,10,10,
+ 10,11,10,10, 6, 9, 9,10, 9,10,11,10,10, 6, 9, 9,
+ 10, 9, 9,11, 9,10, 7,10,10,11,11,11,11,10,10, 6,
+ 9, 9,10,10,10,11, 9, 9, 6, 9, 9,10,10,10,10, 9,
+ 9,
+};
+
+static const static_codebook _8c1_s_p7_0 = {
+ 4, 81,
+ (char *)_vq_lengthlist__8c1_s_p7_0,
+ 1, -529137664, 1618345984, 2, 0,
+ (long *)_vq_quantlist__8c1_s_p7_0,
+ 0
+};
+
+static const long _vq_quantlist__8c1_s_p7_1[] = {
+ 5,
+ 4,
+ 6,
+ 3,
+ 7,
+ 2,
+ 8,
+ 1,
+ 9,
+ 0,
+ 10,
+};
+
+static const char _vq_lengthlist__8c1_s_p7_1[] = {
+ 2, 3, 3, 5, 5, 7, 7, 7, 7, 7, 7,10,10, 9, 7, 7,
+ 7, 7, 8, 8, 8, 8, 9, 9, 9, 7, 7, 7, 7, 8, 8, 8,
+ 8,10,10,10, 7, 7, 7, 7, 8, 8, 8, 8,10,10,10, 7,
+ 7, 7, 7, 8, 8, 8, 8,10,10,10, 8, 8, 8, 8, 8, 8,
+ 8, 8,10,10,10, 8, 8, 8, 8, 8, 8, 8, 8,10,10,10,
+ 8, 8, 8, 8, 8, 8, 8, 8,10,10,10,10,10, 8, 8, 8,
+ 8, 8, 8,10,10,10,10,10, 8, 8, 8, 8, 8, 8,10,10,
+ 10,10,10, 8, 8, 8, 8, 8, 8,
+};
+
+static const static_codebook _8c1_s_p7_1 = {
+ 2, 121,
+ (char *)_vq_lengthlist__8c1_s_p7_1,
+ 1, -531365888, 1611661312, 4, 0,
+ (long *)_vq_quantlist__8c1_s_p7_1,
+ 0
+};
+
+static const long _vq_quantlist__8c1_s_p8_0[] = {
+ 6,
+ 5,
+ 7,
+ 4,
+ 8,
+ 3,
+ 9,
+ 2,
+ 10,
+ 1,
+ 11,
+ 0,
+ 12,
+};
+
+static const char _vq_lengthlist__8c1_s_p8_0[] = {
+ 1, 4, 4, 6, 6, 8, 8, 8, 8, 9, 9,10,10, 7, 5, 5,
+ 7, 7, 8, 8, 8, 8, 9,10,11,11, 7, 5, 5, 7, 7, 8,
+ 8, 9, 9,10,10,11,11, 0, 8, 8, 8, 8, 9, 9, 9, 9,
+ 9,10,11,11, 0, 8, 8, 8, 8, 9, 9, 9, 9,10,10,11,
+ 11, 0,12,12, 9, 9, 9, 9,10, 9,10,11,11,11, 0,13,
+ 12, 9, 8, 9, 9,10,10,11,11,12,11, 0, 0, 0, 9, 9,
+ 9, 9,10,10,11,11,12,12, 0, 0, 0,10,10, 9, 9,10,
+ 10,11,11,12,12, 0, 0, 0,13,13,10,10,11,11,12,11,
+ 13,12, 0, 0, 0,14,14,10,10,11,10,11,11,12,12, 0,
+ 0, 0, 0, 0,12,12,11,11,12,12,13,13, 0, 0, 0, 0,
+ 0,12,12,11,10,12,11,13,12,
+};
+
+static const static_codebook _8c1_s_p8_0 = {
+ 2, 169,
+ (char *)_vq_lengthlist__8c1_s_p8_0,
+ 1, -526516224, 1616117760, 4, 0,
+ (long *)_vq_quantlist__8c1_s_p8_0,
+ 0
+};
+
+static const long _vq_quantlist__8c1_s_p8_1[] = {
+ 2,
+ 1,
+ 3,
+ 0,
+ 4,
+};
+
+static const char _vq_lengthlist__8c1_s_p8_1[] = {
+ 2, 3, 3, 5, 5, 6, 6, 6, 5, 5, 6, 6, 6, 5, 5, 6,
+ 6, 6, 5, 5, 6, 6, 6, 5, 5,
+};
+
+static const static_codebook _8c1_s_p8_1 = {
+ 2, 25,
+ (char *)_vq_lengthlist__8c1_s_p8_1,
+ 1, -533725184, 1611661312, 3, 0,
+ (long *)_vq_quantlist__8c1_s_p8_1,
+ 0
+};
+
+static const long _vq_quantlist__8c1_s_p9_0[] = {
+ 6,
+ 5,
+ 7,
+ 4,
+ 8,
+ 3,
+ 9,
+ 2,
+ 10,
+ 1,
+ 11,
+ 0,
+ 12,
+};
+
+static const char _vq_lengthlist__8c1_s_p9_0[] = {
+ 1, 3, 3,10,10,10,10,10,10,10,10,10,10, 5, 6, 6,
+ 10,10,10,10,10,10,10,10,10,10, 6, 7, 8,10,10,10,
+ 10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,
+ 10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,
+ 10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,
+ 10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,
+ 10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,
+ 10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,
+ 10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,
+ 10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,
+ 10,10,10,10,10, 9, 9, 9, 9,
+};
+
+static const static_codebook _8c1_s_p9_0 = {
+ 2, 169,
+ (char *)_vq_lengthlist__8c1_s_p9_0,
+ 1, -513964032, 1628680192, 4, 0,
+ (long *)_vq_quantlist__8c1_s_p9_0,
+ 0
+};
+
+static const long _vq_quantlist__8c1_s_p9_1[] = {
+ 7,
+ 6,
+ 8,
+ 5,
+ 9,
+ 4,
+ 10,
+ 3,
+ 11,
+ 2,
+ 12,
+ 1,
+ 13,
+ 0,
+ 14,
+};
+
+static const char _vq_lengthlist__8c1_s_p9_1[] = {
+ 1, 4, 4, 5, 5, 7, 7, 9, 9,11,11,12,12,13,13, 6,
+ 5, 5, 6, 6, 9, 9,10,10,12,12,12,13,15,14, 6, 5,
+ 5, 7, 7, 9, 9,10,10,12,12,12,13,14,13,17, 7, 7,
+ 8, 8,10,10,11,11,12,13,13,13,13,13,17, 7, 7, 8,
+ 8,10,10,11,11,13,13,13,13,14,14,17,11,11, 9, 9,
+ 11,11,12,12,12,13,13,14,15,13,17,12,12, 9, 9,11,
+ 11,12,12,13,13,13,13,14,16,17,17,17,11,12,12,12,
+ 13,13,13,14,15,14,15,15,17,17,17,12,12,11,11,13,
+ 13,14,14,15,14,15,15,17,17,17,15,15,13,13,14,14,
+ 15,14,15,15,16,15,17,17,17,15,15,13,13,13,14,14,
+ 15,15,15,15,16,17,17,17,17,16,14,15,14,14,15,14,
+ 14,15,15,15,17,17,17,17,17,14,14,16,14,15,15,15,
+ 15,15,15,17,17,17,17,17,17,16,16,15,17,15,15,14,
+ 17,15,17,16,17,17,17,17,16,15,14,15,15,15,15,15,
+ 15,
+};
+
+static const static_codebook _8c1_s_p9_1 = {
+ 2, 225,
+ (char *)_vq_lengthlist__8c1_s_p9_1,
+ 1, -520986624, 1620377600, 4, 0,
+ (long *)_vq_quantlist__8c1_s_p9_1,
+ 0
+};
+
+static const long _vq_quantlist__8c1_s_p9_2[] = {
+ 10,
+ 9,
+ 11,
+ 8,
+ 12,
+ 7,
+ 13,
+ 6,
+ 14,
+ 5,
+ 15,
+ 4,
+ 16,
+ 3,
+ 17,
+ 2,
+ 18,
+ 1,
+ 19,
+ 0,
+ 20,
+};
+
+static const char _vq_lengthlist__8c1_s_p9_2[] = {
+ 2, 4, 4, 6, 6, 7, 7, 8, 8, 8, 8, 9, 8, 9, 9, 9,
+ 9, 9, 9, 9, 9,11,11,12, 7, 7, 7, 7, 8, 8, 9, 9,
+ 9, 9,10,10,10,10,10,10,10,10,11,11,11, 7, 7, 7,
+ 7, 8, 8, 9, 8, 9, 9, 9, 9, 9, 9,10,10,10,10,11,
+ 11,12, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9,10,10,10,10,
+ 10,10,10,10,11,11,11, 7, 7, 8, 8, 8, 8, 9, 9, 9,
+ 9,10,10,10,10,10,10,10,10,11,11,11, 8, 8, 8, 8,
+ 9, 9, 9, 9, 9, 9,10,10,10,10,10,10,10,10,11,11,
+ 11, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9,10,10,10,10,10,
+ 10,10,10,11,12,11, 9, 9, 8, 9, 9, 9, 9, 9,10,10,
+ 10,10,10,10,10,10,10,10,11,11,11,11,11, 8, 8, 9,
+ 9, 9, 9,10,10,10,10,10,10,10,10,10,10,11,12,11,
+ 12,11, 9, 9, 9, 9, 9,10,10,10,10,10,10,10,10,10,
+ 10,10,11,11,11,11,11, 9, 9, 9, 9,10,10,10,10,10,
+ 10,10,10,10,10,10,10,12,11,12,11,11, 9, 9, 9,10,
+ 10,10,10,10,10,10,10,10,10,10,10,10,12,11,11,11,
+ 11,11,11,10,10,10,10,10,10,10,10,10,10,10,10,10,
+ 11,11,11,12,11,11,12,11,10,10,10,10,10,10,10,10,
+ 10,10,10,10,11,10,11,11,11,11,11,11,11,10,10,10,
+ 10,10,10,10,10,10,10,10,10,10,10,11,11,12,11,12,
+ 11,11,10,10,10,10,10,10,10,10,10,10,10,10,10,10,
+ 11,11,12,11,12,11,11,11,11,10,10,10,10,10,10,10,
+ 10,10,10,10,10,11,11,12,11,11,12,11,11,12,10,10,
+ 11,10,10,10,10,10,10,10,10,10,11,11,11,11,11,11,
+ 11,11,11,10,10,10,10,10,10,10,10,10,10,10,10,12,
+ 12,11,12,11,11,12,12,12,11,11,10,10,10,10,10,10,
+ 10,10,10,11,12,12,11,12,12,11,12,11,11,11,11,10,
+ 10,10,10,10,10,10,10,10,10,
+};
+
+static const static_codebook _8c1_s_p9_2 = {
+ 2, 441,
+ (char *)_vq_lengthlist__8c1_s_p9_2,
+ 1, -529268736, 1611661312, 5, 0,
+ (long *)_vq_quantlist__8c1_s_p9_2,
+ 0
+};
+
+static const char _huff_lengthlist__8c1_s_single[] = {
+ 4, 6,18, 8,11, 8, 8, 9, 9,10, 4, 4,18, 5, 9, 5,
+ 6, 7, 8,10,18,18,18,18,17,17,17,17,17,17, 7, 5,
+ 17, 6,11, 6, 7, 8, 9,12,12, 9,17,12, 8, 8, 9,10,
+ 10,13, 7, 5,17, 6, 8, 4, 5, 6, 8,10, 6, 5,17, 6,
+ 8, 5, 4, 5, 7, 9, 7, 7,17, 8, 9, 6, 5, 5, 6, 8,
+ 8, 8,17, 9,11, 8, 6, 6, 6, 7, 9,10,17,12,12,10,
+ 9, 7, 7, 8,
+};
+
+static const static_codebook _huff_book__8c1_s_single = {
+ 2, 100,
+ (char *)_huff_lengthlist__8c1_s_single,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
+static const char _huff_lengthlist__44c2_s_long[] = {
+ 6, 6,12,10,10,10, 9,10,12,12, 6, 1,10, 5, 6, 6,
+ 7, 9,11,14,12, 9, 8,11, 7, 8, 9,11,13,15,10, 5,
+ 12, 7, 8, 7, 9,12,14,15,10, 6, 7, 8, 5, 6, 7, 9,
+ 12,14, 9, 6, 8, 7, 6, 6, 7, 9,12,12, 9, 7, 9, 9,
+ 7, 6, 6, 7,10,10,10, 9,10,11, 8, 7, 6, 6, 8,10,
+ 12,11,13,13,11,10, 8, 8, 8,10,11,13,15,15,14,13,
+ 10, 8, 8, 9,
+};
+
+static const static_codebook _huff_book__44c2_s_long = {
+ 2, 100,
+ (char *)_huff_lengthlist__44c2_s_long,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
+static const long _vq_quantlist__44c2_s_p1_0[] = {
+ 1,
+ 0,
+ 2,
+};
+
+static const char _vq_lengthlist__44c2_s_p1_0[] = {
+ 2, 4, 4, 0, 0, 0, 0, 0, 0, 5, 6, 6, 0, 0, 0, 0,
+ 0, 0, 5, 6, 7, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 5, 7, 7, 0, 0, 0, 0, 0, 0, 7, 8, 8, 0, 0, 0,
+ 0, 0, 0, 6, 8, 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, 5, 7, 7, 0, 0, 0, 0, 0, 0, 6, 8, 7, 0, 0,
+ 0, 0, 0, 0, 7, 8, 8, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 5, 7, 7, 0, 0, 0, 0,
+ 0, 0, 7, 8, 8, 0, 0, 0, 0, 0, 0, 7, 8, 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, 7, 8, 8, 0, 0, 0,
+ 0, 0, 0, 8, 9, 9, 0, 0, 0, 0, 0, 0, 8, 9, 9, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6, 8, 8, 0, 0,
+ 0, 0, 0, 0, 8, 9, 8, 0, 0, 0, 0, 0, 0, 8, 9, 9,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 4, 7, 7, 0, 0, 0, 0, 0, 0, 7, 8, 8, 0, 0,
+ 0, 0, 0, 0, 7, 8, 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, 6, 8, 8, 0, 0, 0, 0, 0, 0, 8, 9, 9, 0,
+ 0, 0, 0, 0, 0, 8, 8, 9, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 7, 8, 8, 0, 0, 0, 0, 0, 0, 8, 9, 9,
+ 0, 0, 0, 0, 0, 0, 8, 9, 9, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0,
+};
+
+static const static_codebook _44c2_s_p1_0 = {
+ 8, 6561,
+ (char *)_vq_lengthlist__44c2_s_p1_0,
+ 1, -535822336, 1611661312, 2, 0,
+ (long *)_vq_quantlist__44c2_s_p1_0,
+ 0
+};
+
+static const long _vq_quantlist__44c2_s_p2_0[] = {
+ 2,
+ 1,
+ 3,
+ 0,
+ 4,
+};
+
+static const char _vq_lengthlist__44c2_s_p2_0[] = {
+ 1, 4, 4, 0, 0, 0, 7, 7, 0, 0, 0, 7, 7, 0, 0, 0,
+ 8, 8, 0, 0, 0, 0, 0, 0, 0, 4, 6, 6, 0, 0, 0, 8,
+ 8, 0, 0, 0, 8, 8, 0, 0, 0, 9, 9, 0, 0, 0, 0, 0,
+ 0, 0, 4, 6, 6, 0, 0, 0, 8, 8, 0, 0, 0, 8, 8, 0,
+ 0, 0, 9, 9, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 7, 8, 8, 0, 0, 0,11,11, 0, 0,
+ 0,11,11, 0, 0, 0,12,11, 0, 0, 0, 0, 0, 0, 0, 7,
+ 8, 8, 0, 0, 0,10,11, 0, 0, 0,11,11, 0, 0, 0,11,
+ 12, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 6, 8, 8, 0, 0, 0,11,11, 0, 0, 0,11,11,
+ 0, 0, 0,12,12, 0, 0, 0, 0, 0, 0, 0, 6, 8, 8, 0,
+ 0, 0,10,11, 0, 0, 0,10,11, 0, 0, 0,11,11, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 8, 9, 9, 0, 0, 0,11,12, 0, 0, 0,11,12, 0, 0, 0,
+ 12,11, 0, 0, 0, 0, 0, 0, 0, 8,10, 9, 0, 0, 0,12,
+ 11, 0, 0, 0,12,11, 0, 0, 0,11,12, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0,
+};
+
+static const static_codebook _44c2_s_p2_0 = {
+ 4, 625,
+ (char *)_vq_lengthlist__44c2_s_p2_0,
+ 1, -533725184, 1611661312, 3, 0,
+ (long *)_vq_quantlist__44c2_s_p2_0,
+ 0
+};
+
+static const long _vq_quantlist__44c2_s_p3_0[] = {
+ 2,
+ 1,
+ 3,
+ 0,
+ 4,
+};
+
+static const char _vq_lengthlist__44c2_s_p3_0[] = {
+ 2, 4, 3, 6, 6, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 4, 4, 4, 6, 6, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 4, 4, 4, 6, 6, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6, 6, 6, 9, 9,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 6, 6, 7, 9, 9, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0,
+};
+
+static const static_codebook _44c2_s_p3_0 = {
+ 4, 625,
+ (char *)_vq_lengthlist__44c2_s_p3_0,
+ 1, -533725184, 1611661312, 3, 0,
+ (long *)_vq_quantlist__44c2_s_p3_0,
+ 0
+};
+
+static const long _vq_quantlist__44c2_s_p4_0[] = {
+ 4,
+ 3,
+ 5,
+ 2,
+ 6,
+ 1,
+ 7,
+ 0,
+ 8,
+};
+
+static const char _vq_lengthlist__44c2_s_p4_0[] = {
+ 1, 3, 3, 6, 6, 0, 0, 0, 0, 0, 6, 6, 6, 6, 0, 0,
+ 0, 0, 0, 6, 6, 6, 6, 0, 0, 0, 0, 0, 7, 7, 6, 6,
+ 0, 0, 0, 0, 0, 0, 0, 6, 7, 0, 0, 0, 0, 0, 0, 0,
+ 7, 8, 0, 0, 0, 0, 0, 0, 0, 8, 8, 0, 0, 0, 0, 0,
+ 0, 0, 9, 9, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0,
+};
+
+static const static_codebook _44c2_s_p4_0 = {
+ 2, 81,
+ (char *)_vq_lengthlist__44c2_s_p4_0,
+ 1, -531628032, 1611661312, 4, 0,
+ (long *)_vq_quantlist__44c2_s_p4_0,
+ 0
+};
+
+static const long _vq_quantlist__44c2_s_p5_0[] = {
+ 4,
+ 3,
+ 5,
+ 2,
+ 6,
+ 1,
+ 7,
+ 0,
+ 8,
+};
+
+static const char _vq_lengthlist__44c2_s_p5_0[] = {
+ 1, 3, 3, 6, 6, 7, 7, 9, 9, 0, 7, 7, 7, 7, 7, 7,
+ 9, 9, 0, 7, 7, 7, 7, 7, 7, 9, 9, 0, 8, 8, 7, 7,
+ 8, 8,10,10, 0, 0, 0, 7, 7, 8, 8,10,10, 0, 0, 0,
+ 9, 9, 8, 8,10,10, 0, 0, 0, 9, 9, 8, 8,10,10, 0,
+ 0, 0,10,10, 9, 9,11,11, 0, 0, 0, 0, 0, 9, 9,11,
+ 11,
+};
+
+static const static_codebook _44c2_s_p5_0 = {
+ 2, 81,
+ (char *)_vq_lengthlist__44c2_s_p5_0,
+ 1, -531628032, 1611661312, 4, 0,
+ (long *)_vq_quantlist__44c2_s_p5_0,
+ 0
+};
+
+static const long _vq_quantlist__44c2_s_p6_0[] = {
+ 8,
+ 7,
+ 9,
+ 6,
+ 10,
+ 5,
+ 11,
+ 4,
+ 12,
+ 3,
+ 13,
+ 2,
+ 14,
+ 1,
+ 15,
+ 0,
+ 16,
+};
+
+static const char _vq_lengthlist__44c2_s_p6_0[] = {
+ 1, 4, 3, 6, 6, 8, 8, 9, 9, 9, 9, 9, 9,10,10,11,
+ 11, 0, 7, 7, 7, 7, 8, 8, 9, 9, 9, 9,10,10,11,11,
+ 12,11, 0, 7, 7, 7, 7, 8, 8, 9, 9, 9, 9,10,10,11,
+ 11,11,12, 0, 8, 8, 7, 7, 9, 9,10,10, 9, 9,10,10,
+ 11,11,12,12, 0, 0, 0, 7, 7, 9, 9,10,10,10, 9,10,
+ 10,11,11,12,12, 0, 0, 0, 8, 8, 9, 9,10,10,10,10,
+ 11,11,11,11,12,12, 0, 0, 0, 8, 8, 9, 9,10,10,10,
+ 10,11,11,12,12,12,12, 0, 0, 0, 9, 9, 9, 9,10,10,
+ 10,10,11,11,12,12,12,12, 0, 0, 0, 0, 0, 9, 9,10,
+ 10,10,10,11,11,12,12,13,13, 0, 0, 0, 0, 0, 9, 9,
+ 10,10,11,11,11,11,12,12,13,13, 0, 0, 0, 0, 0, 9,
+ 9,10,10,11,11,11,11,12,12,13,13, 0, 0, 0, 0, 0,
+ 10,10,10,10,11,11,12,12,13,12,13,13, 0, 0, 0, 0,
+ 0, 0, 0,10,10,11,11,12,12,13,13,13,13, 0, 0, 0,
+ 0, 0, 0, 0,11,11,12,12,12,12,13,13,13,14, 0, 0,
+ 0, 0, 0, 0, 0,11,11,12,12,12,12,13,13,13,14, 0,
+ 0, 0, 0, 0, 0, 0,12,12,12,12,13,13,13,13,14,14,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0,12,12,13,13,13,13,14,
+ 14,
+};
+
+static const static_codebook _44c2_s_p6_0 = {
+ 2, 289,
+ (char *)_vq_lengthlist__44c2_s_p6_0,
+ 1, -529530880, 1611661312, 5, 0,
+ (long *)_vq_quantlist__44c2_s_p6_0,
+ 0
+};
+
+static const long _vq_quantlist__44c2_s_p7_0[] = {
+ 1,
+ 0,
+ 2,
+};
+
+static const char _vq_lengthlist__44c2_s_p7_0[] = {
+ 1, 4, 4, 7, 6, 6, 7, 6, 6, 4, 7, 7,10, 9, 9,11,
+ 9, 9, 4, 7, 7,10, 9, 9,10, 9, 9, 7,10,10,11,10,
+ 11,11,10,11, 6, 9, 9,11,10,10,11,10,10, 6, 9, 9,
+ 11,10,11,11,10,10, 7,11,10,11,11,11,12,11,11, 6,
+ 9, 9,11,10,10,11,11,10, 6, 9, 9,11,10,10,12,10,
+ 11,
+};
+
+static const static_codebook _44c2_s_p7_0 = {
+ 4, 81,
+ (char *)_vq_lengthlist__44c2_s_p7_0,
+ 1, -529137664, 1618345984, 2, 0,
+ (long *)_vq_quantlist__44c2_s_p7_0,
+ 0
+};
+
+static const long _vq_quantlist__44c2_s_p7_1[] = {
+ 5,
+ 4,
+ 6,
+ 3,
+ 7,
+ 2,
+ 8,
+ 1,
+ 9,
+ 0,
+ 10,
+};
+
+static const char _vq_lengthlist__44c2_s_p7_1[] = {
+ 2, 3, 4, 6, 6, 7, 7, 7, 7, 7, 7, 9, 7, 7, 6, 6,
+ 7, 7, 8, 8, 8, 8, 9, 6, 6, 6, 6, 7, 7, 8, 8, 8,
+ 8,10, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8,10,10,10, 7,
+ 7, 7, 7, 8, 8, 8, 8,10,10,10, 7, 7, 8, 8, 8, 8,
+ 8, 8,10,10,10, 7, 8, 8, 8, 8, 8, 8, 8,10,10,10,
+ 8, 8, 8, 8, 8, 8, 8, 8,10,10,10,10,10, 8, 8, 8,
+ 8, 8, 8,10,10,10,10,10, 9, 9, 8, 8, 8, 8,10,10,
+ 10,10,10, 8, 8, 8, 8, 8, 8,
+};
+
+static const static_codebook _44c2_s_p7_1 = {
+ 2, 121,
+ (char *)_vq_lengthlist__44c2_s_p7_1,
+ 1, -531365888, 1611661312, 4, 0,
+ (long *)_vq_quantlist__44c2_s_p7_1,
+ 0
+};
+
+static const long _vq_quantlist__44c2_s_p8_0[] = {
+ 6,
+ 5,
+ 7,
+ 4,
+ 8,
+ 3,
+ 9,
+ 2,
+ 10,
+ 1,
+ 11,
+ 0,
+ 12,
+};
+
+static const char _vq_lengthlist__44c2_s_p8_0[] = {
+ 1, 4, 4, 6, 6, 7, 7, 7, 7, 8, 8, 9, 9, 6, 5, 5,
+ 7, 7, 8, 8, 8, 8, 9, 9,10,10, 7, 6, 5, 7, 7, 8,
+ 8, 8, 8, 9, 9,10,10, 0, 8, 8, 8, 8, 9, 9, 9, 9,
+ 10,10,11,11, 0, 8, 8, 8, 8, 9, 9, 9, 9,10,10,11,
+ 11, 0,12,12, 9, 9,10,10,10,10,11,11,11,11, 0,13,
+ 13, 9, 9,10,10,10,10,11,11,12,12, 0, 0, 0,10,10,
+ 10,10,11,11,12,12,12,13, 0, 0, 0,10,10,10,10,11,
+ 11,12,12,12,12, 0, 0, 0,14,14,10,11,11,11,12,12,
+ 13,13, 0, 0, 0,14,14,11,10,11,11,13,12,13,13, 0,
+ 0, 0, 0, 0,12,12,11,12,13,12,14,14, 0, 0, 0, 0,
+ 0,12,12,12,12,13,12,14,14,
+};
+
+static const static_codebook _44c2_s_p8_0 = {
+ 2, 169,
+ (char *)_vq_lengthlist__44c2_s_p8_0,
+ 1, -526516224, 1616117760, 4, 0,
+ (long *)_vq_quantlist__44c2_s_p8_0,
+ 0
+};
+
+static const long _vq_quantlist__44c2_s_p8_1[] = {
+ 2,
+ 1,
+ 3,
+ 0,
+ 4,
+};
+
+static const char _vq_lengthlist__44c2_s_p8_1[] = {
+ 2, 4, 4, 5, 4, 6, 5, 5, 5, 5, 6, 5, 5, 5, 5, 6,
+ 5, 5, 5, 5, 6, 6, 6, 5, 5,
+};
+
+static const static_codebook _44c2_s_p8_1 = {
+ 2, 25,
+ (char *)_vq_lengthlist__44c2_s_p8_1,
+ 1, -533725184, 1611661312, 3, 0,
+ (long *)_vq_quantlist__44c2_s_p8_1,
+ 0
+};
+
+static const long _vq_quantlist__44c2_s_p9_0[] = {
+ 6,
+ 5,
+ 7,
+ 4,
+ 8,
+ 3,
+ 9,
+ 2,
+ 10,
+ 1,
+ 11,
+ 0,
+ 12,
+};
+
+static const char _vq_lengthlist__44c2_s_p9_0[] = {
+ 1, 5, 4,12,12,12,12,12,12,12,12,12,12, 4, 9, 8,
+ 11,11,11,11,11,11,11,11,11,11, 2, 8, 7,11,11,11,
+ 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
+ 11,11,11,11,11,11,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,11,11,11,
+ 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
+ 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
+ 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
+ 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
+ 11,11,11,11,11,11,11,11,11,
+};
+
+static const static_codebook _44c2_s_p9_0 = {
+ 2, 169,
+ (char *)_vq_lengthlist__44c2_s_p9_0,
+ 1, -514541568, 1627103232, 4, 0,
+ (long *)_vq_quantlist__44c2_s_p9_0,
+ 0
+};
+
+static const long _vq_quantlist__44c2_s_p9_1[] = {
+ 6,
+ 5,
+ 7,
+ 4,
+ 8,
+ 3,
+ 9,
+ 2,
+ 10,
+ 1,
+ 11,
+ 0,
+ 12,
+};
+
+static const char _vq_lengthlist__44c2_s_p9_1[] = {
+ 1, 4, 4, 6, 6, 7, 6, 8, 8,10, 9,10,10, 6, 5, 5,
+ 7, 7, 8, 7,10, 9,11,11,12,13, 6, 5, 5, 7, 7, 8,
+ 8,10,10,11,11,13,13,18, 8, 8, 8, 8, 9, 9,10,10,
+ 12,12,12,13,18, 8, 8, 8, 8, 9, 9,10,10,12,12,13,
+ 13,18,11,11, 8, 8,10,10,11,11,12,11,13,12,18,11,
+ 11, 9, 7,10,10,11,11,11,12,12,13,17,17,17,10,10,
+ 11,11,12,12,12,10,12,12,17,17,17,11,10,11,10,13,
+ 12,11,12,12,12,17,17,17,15,14,11,11,12,11,13,10,
+ 13,12,17,17,17,14,14,12,10,11,11,13,13,13,13,17,
+ 17,16,17,16,13,13,12,10,13,10,14,13,17,16,17,16,
+ 17,13,12,12,10,13,11,14,14,
+};
+
+static const static_codebook _44c2_s_p9_1 = {
+ 2, 169,
+ (char *)_vq_lengthlist__44c2_s_p9_1,
+ 1, -522616832, 1620115456, 4, 0,
+ (long *)_vq_quantlist__44c2_s_p9_1,
+ 0
+};
+
+static const long _vq_quantlist__44c2_s_p9_2[] = {
+ 8,
+ 7,
+ 9,
+ 6,
+ 10,
+ 5,
+ 11,
+ 4,
+ 12,
+ 3,
+ 13,
+ 2,
+ 14,
+ 1,
+ 15,
+ 0,
+ 16,
+};
+
+static const char _vq_lengthlist__44c2_s_p9_2[] = {
+ 2, 4, 4, 6, 6, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8,
+ 8,10, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 9, 9, 9, 9,
+ 9, 9,10, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 9, 9, 9,
+ 9, 9, 9,10, 8, 8, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9,
+ 9, 9, 9, 9,10,10,10, 8, 7, 8, 8, 8, 8, 9, 9, 9,
+ 9, 9, 9, 9, 9,10,11,11, 8, 8, 8, 8, 9, 9, 9, 9,
+ 9, 9,10, 9, 9, 9,10,11,10, 8, 8, 8, 8, 9, 9, 9,
+ 9, 9, 9, 9,10,10,10,10,11,10, 8, 8, 9, 9, 9, 9,
+ 9, 9,10, 9, 9,10, 9,10,11,10,11,11,11, 8, 8, 9,
+ 9, 9, 9, 9, 9, 9, 9,10,10,11,11,11,11,11, 9, 9,
+ 9, 9, 9, 9,10, 9, 9, 9,10,10,11,11,11,11,11, 9,
+ 9, 9, 9, 9, 9, 9, 9, 9,10, 9,10,11,11,11,11,11,
+ 9, 9, 9, 9,10,10, 9, 9, 9,10,10,10,11,11,11,11,
+ 11,11,11, 9, 9, 9,10, 9, 9,10,10,10,10,11,11,10,
+ 11,11,11,11,10, 9,10,10, 9, 9, 9, 9,10,10,11,10,
+ 11,11,11,11,11, 9, 9, 9, 9,10, 9,10,10,10,10,11,
+ 10,11,11,11,11,11,10,10, 9, 9,10, 9,10,10,10,10,
+ 10,10,10,11,11,11,11,11,11, 9, 9,10, 9,10, 9,10,
+ 10,
+};
+
+static const static_codebook _44c2_s_p9_2 = {
+ 2, 289,
+ (char *)_vq_lengthlist__44c2_s_p9_2,
+ 1, -529530880, 1611661312, 5, 0,
+ (long *)_vq_quantlist__44c2_s_p9_2,
+ 0
+};
+
+static const char _huff_lengthlist__44c2_s_short[] = {
+ 11, 9,13,12,12,11,12,12,13,15, 8, 2,11, 4, 8, 5,
+ 7,10,12,15,13, 7,10, 9, 8, 8,10,13,17,17,11, 4,
+ 12, 5, 9, 5, 8,11,14,16,12, 6, 8, 7, 6, 6, 8,11,
+ 13,16,11, 4, 9, 5, 6, 4, 6,10,13,16,11, 6,11, 7,
+ 7, 6, 7,10,13,15,13, 9,12, 9, 8, 6, 8,10,12,14,
+ 14,10,10, 8, 6, 5, 6, 9,11,13,15,11,11, 9, 6, 5,
+ 6, 8, 9,12,
+};
+
+static const static_codebook _huff_book__44c2_s_short = {
+ 2, 100,
+ (char *)_huff_lengthlist__44c2_s_short,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
+static const char _huff_lengthlist__44c3_s_long[] = {
+ 5, 6,11,11,11,11,10,10,12,11, 5, 2,11, 5, 6, 6,
+ 7, 9,11,13,13,10, 7,11, 6, 7, 8, 9,10,12,11, 5,
+ 11, 6, 8, 7, 9,11,14,15,11, 6, 6, 8, 4, 5, 7, 8,
+ 10,13,10, 5, 7, 7, 5, 5, 6, 8,10,11,10, 7, 7, 8,
+ 6, 5, 5, 7, 9, 9,11, 8, 8,11, 8, 7, 6, 6, 7, 9,
+ 12,11,10,13, 9, 9, 7, 7, 7, 9,11,13,12,15,12,11,
+ 9, 8, 8, 8,
+};
+
+static const static_codebook _huff_book__44c3_s_long = {
+ 2, 100,
+ (char *)_huff_lengthlist__44c3_s_long,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
+static const long _vq_quantlist__44c3_s_p1_0[] = {
+ 1,
+ 0,
+ 2,
+};
+
+static const char _vq_lengthlist__44c3_s_p1_0[] = {
+ 2, 4, 4, 0, 0, 0, 0, 0, 0, 5, 6, 6, 0, 0, 0, 0,
+ 0, 0, 5, 6, 6, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 5, 7, 7, 0, 0, 0, 0, 0, 0, 7, 8, 8, 0, 0, 0,
+ 0, 0, 0, 6, 7, 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, 5, 7, 7, 0, 0, 0, 0, 0, 0, 6, 8, 7, 0, 0,
+ 0, 0, 0, 0, 7, 8, 8, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 5, 7, 7, 0, 0, 0, 0,
+ 0, 0, 7, 8, 8, 0, 0, 0, 0, 0, 0, 7, 8, 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, 7, 8, 8, 0, 0, 0,
+ 0, 0, 0, 8, 8, 9, 0, 0, 0, 0, 0, 0, 8, 9, 9, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6, 8, 8, 0, 0,
+ 0, 0, 0, 0, 7, 9, 8, 0, 0, 0, 0, 0, 0, 8, 9, 9,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 5, 7, 7, 0, 0, 0, 0, 0, 0, 7, 8, 8, 0, 0,
+ 0, 0, 0, 0, 7, 8, 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, 6, 8, 8, 0, 0, 0, 0, 0, 0, 8, 9, 9, 0,
+ 0, 0, 0, 0, 0, 7, 8, 9, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 6, 8, 8, 0, 0, 0, 0, 0, 0, 8, 9, 9,
+ 0, 0, 0, 0, 0, 0, 8, 9, 8, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0,
+};
+
+static const static_codebook _44c3_s_p1_0 = {
+ 8, 6561,
+ (char *)_vq_lengthlist__44c3_s_p1_0,
+ 1, -535822336, 1611661312, 2, 0,
+ (long *)_vq_quantlist__44c3_s_p1_0,
+ 0
+};
+
+static const long _vq_quantlist__44c3_s_p2_0[] = {
+ 2,
+ 1,
+ 3,
+ 0,
+ 4,
+};
+
+static const char _vq_lengthlist__44c3_s_p2_0[] = {
+ 2, 5, 5, 0, 0, 0, 5, 5, 0, 0, 0, 5, 5, 0, 0, 0,
+ 7, 8, 0, 0, 0, 0, 0, 0, 0, 5, 6, 6, 0, 0, 0, 7,
+ 7, 0, 0, 0, 7, 7, 0, 0, 0,10,10, 0, 0, 0, 0, 0,
+ 0, 0, 5, 6, 6, 0, 0, 0, 7, 7, 0, 0, 0, 7, 7, 0,
+ 0, 0,10,10, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 5, 7, 7, 0, 0, 0, 7, 7, 0, 0,
+ 0, 7, 7, 0, 0, 0, 9, 9, 0, 0, 0, 0, 0, 0, 0, 5,
+ 7, 7, 0, 0, 0, 7, 7, 0, 0, 0, 7, 7, 0, 0, 0, 9,
+ 9, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 5, 7, 7, 0, 0, 0, 7, 7, 0, 0, 0, 7, 7,
+ 0, 0, 0, 9, 9, 0, 0, 0, 0, 0, 0, 0, 5, 7, 7, 0,
+ 0, 0, 7, 7, 0, 0, 0, 7, 7, 0, 0, 0, 9, 9, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 8,10,10, 0, 0, 0, 9, 9, 0, 0, 0, 9, 9, 0, 0, 0,
+ 10,10, 0, 0, 0, 0, 0, 0, 0, 8,10,10, 0, 0, 0, 9,
+ 9, 0, 0, 0, 9, 9, 0, 0, 0,10,10, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0,
+};
+
+static const static_codebook _44c3_s_p2_0 = {
+ 4, 625,
+ (char *)_vq_lengthlist__44c3_s_p2_0,
+ 1, -533725184, 1611661312, 3, 0,
+ (long *)_vq_quantlist__44c3_s_p2_0,
+ 0
+};
+
+static const long _vq_quantlist__44c3_s_p3_0[] = {
+ 2,
+ 1,
+ 3,
+ 0,
+ 4,
+};
+
+static const char _vq_lengthlist__44c3_s_p3_0[] = {
+ 2, 4, 3, 6, 6, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 4, 4, 4, 6, 6, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 4, 4, 4, 6, 6, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6, 6, 6, 9, 9,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 6, 6, 7, 9, 9, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0,
+};
+
+static const static_codebook _44c3_s_p3_0 = {
+ 4, 625,
+ (char *)_vq_lengthlist__44c3_s_p3_0,
+ 1, -533725184, 1611661312, 3, 0,
+ (long *)_vq_quantlist__44c3_s_p3_0,
+ 0
+};
+
+static const long _vq_quantlist__44c3_s_p4_0[] = {
+ 4,
+ 3,
+ 5,
+ 2,
+ 6,
+ 1,
+ 7,
+ 0,
+ 8,
+};
+
+static const char _vq_lengthlist__44c3_s_p4_0[] = {
+ 2, 3, 3, 6, 6, 0, 0, 0, 0, 0, 4, 4, 6, 6, 0, 0,
+ 0, 0, 0, 4, 4, 6, 6, 0, 0, 0, 0, 0, 5, 5, 6, 6,
+ 0, 0, 0, 0, 0, 0, 0, 6, 6, 0, 0, 0, 0, 0, 0, 0,
+ 7, 8, 0, 0, 0, 0, 0, 0, 0, 7, 7, 0, 0, 0, 0, 0,
+ 0, 0, 9, 9, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0,
+};
+
+static const static_codebook _44c3_s_p4_0 = {
+ 2, 81,
+ (char *)_vq_lengthlist__44c3_s_p4_0,
+ 1, -531628032, 1611661312, 4, 0,
+ (long *)_vq_quantlist__44c3_s_p4_0,
+ 0
+};
+
+static const long _vq_quantlist__44c3_s_p5_0[] = {
+ 4,
+ 3,
+ 5,
+ 2,
+ 6,
+ 1,
+ 7,
+ 0,
+ 8,
+};
+
+static const char _vq_lengthlist__44c3_s_p5_0[] = {
+ 1, 3, 4, 6, 6, 7, 7, 9, 9, 0, 5, 5, 7, 7, 7, 8,
+ 9, 9, 0, 5, 5, 7, 7, 8, 8, 9, 9, 0, 7, 7, 8, 8,
+ 8, 8,10,10, 0, 0, 0, 8, 8, 8, 8,10,10, 0, 0, 0,
+ 9, 9, 9, 9,10,10, 0, 0, 0, 9, 9, 9, 9,10,10, 0,
+ 0, 0,10,10,10,10,11,11, 0, 0, 0, 0, 0,10,10,11,
+ 11,
+};
+
+static const static_codebook _44c3_s_p5_0 = {
+ 2, 81,
+ (char *)_vq_lengthlist__44c3_s_p5_0,
+ 1, -531628032, 1611661312, 4, 0,
+ (long *)_vq_quantlist__44c3_s_p5_0,
+ 0
+};
+
+static const long _vq_quantlist__44c3_s_p6_0[] = {
+ 8,
+ 7,
+ 9,
+ 6,
+ 10,
+ 5,
+ 11,
+ 4,
+ 12,
+ 3,
+ 13,
+ 2,
+ 14,
+ 1,
+ 15,
+ 0,
+ 16,
+};
+
+static const char _vq_lengthlist__44c3_s_p6_0[] = {
+ 2, 3, 3, 6, 6, 7, 7, 8, 8, 8, 8, 9, 9,10,10,11,
+ 10, 0, 5, 5, 7, 7, 8, 8, 9, 9, 9, 9,10,10,10,10,
+ 11,11, 0, 5, 5, 7, 7, 8, 8, 9, 9, 9, 9,10,10,10,
+ 10,11,11, 0, 6, 6, 7, 7, 8, 8, 9, 9, 9, 9,10,10,
+ 11,11,11,11, 0, 0, 0, 7, 7, 8, 8, 9, 9, 9, 9,10,
+ 10,11,11,11,12, 0, 0, 0, 8, 8, 8, 8, 9, 9, 9, 9,
+ 10,10,11,11,12,12, 0, 0, 0, 8, 8, 8, 8, 9, 9, 9,
+ 9,10,10,11,11,12,12, 0, 0, 0, 9, 9, 9, 9,10,10,
+ 10,10,11,10,11,11,12,12, 0, 0, 0, 0, 0, 9, 9,10,
+ 10,10,10,11,11,11,11,12,12, 0, 0, 0, 0, 0, 9, 8,
+ 9, 9,10,10,11,11,12,12,12,12, 0, 0, 0, 0, 0, 8,
+ 8, 9, 9,10,10,11,11,12,11,12,12, 0, 0, 0, 0, 0,
+ 9,10,10,10,11,11,11,11,12,12,13,13, 0, 0, 0, 0,
+ 0, 0, 0,10,10,10,10,11,11,12,12,13,13, 0, 0, 0,
+ 0, 0, 0, 0,11,11,11,11,12,12,12,12,13,13, 0, 0,
+ 0, 0, 0, 0, 0,11,11,11,11,12,12,12,12,13,13, 0,
+ 0, 0, 0, 0, 0, 0,11,11,12,12,12,12,13,13,13,13,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0,12,12,12,12,13,13,13,
+ 13,
+};
+
+static const static_codebook _44c3_s_p6_0 = {
+ 2, 289,
+ (char *)_vq_lengthlist__44c3_s_p6_0,
+ 1, -529530880, 1611661312, 5, 0,
+ (long *)_vq_quantlist__44c3_s_p6_0,
+ 0
+};
+
+static const long _vq_quantlist__44c3_s_p7_0[] = {
+ 1,
+ 0,
+ 2,
+};
+
+static const char _vq_lengthlist__44c3_s_p7_0[] = {
+ 1, 4, 4, 7, 6, 6, 7, 6, 6, 4, 7, 7,10, 9, 9,11,
+ 9, 9, 4, 7, 7,10, 9, 9,11, 9, 9, 7,10,10,11,11,
+ 10,12,11,11, 6, 9, 9,11,10,10,11,10,10, 6, 9, 9,
+ 11,10,10,11,10,10, 7,11,11,11,11,11,12,11,11, 6,
+ 9, 9,11,10,10,11,10,10, 6, 9, 9,11,10,10,11,10,
+ 10,
+};
+
+static const static_codebook _44c3_s_p7_0 = {
+ 4, 81,
+ (char *)_vq_lengthlist__44c3_s_p7_0,
+ 1, -529137664, 1618345984, 2, 0,
+ (long *)_vq_quantlist__44c3_s_p7_0,
+ 0
+};
+
+static const long _vq_quantlist__44c3_s_p7_1[] = {
+ 5,
+ 4,
+ 6,
+ 3,
+ 7,
+ 2,
+ 8,
+ 1,
+ 9,
+ 0,
+ 10,
+};
+
+static const char _vq_lengthlist__44c3_s_p7_1[] = {
+ 2, 4, 4, 6, 6, 7, 7, 7, 7, 8, 8,10, 5, 5, 6, 6,
+ 7, 7, 8, 8, 8, 8,10, 5, 5, 6, 6, 7, 7, 8, 8, 8,
+ 8,10, 6, 6, 7, 7, 8, 8, 8, 8, 8, 8,10,10,10, 7,
+ 7, 8, 7, 8, 8, 8, 8,10,10,10, 8, 8, 8, 8, 8, 8,
+ 8, 8,10,10,10, 7, 8, 8, 8, 8, 8, 8, 8,10,10,10,
+ 8, 8, 8, 8, 8, 8, 8, 8,10,10,10,10,10, 8, 8, 8,
+ 8, 8, 8,10,10,10,10,10, 9, 9, 8, 8, 9, 8,10,10,
+ 10,10,10, 8, 8, 8, 8, 8, 8,
+};
+
+static const static_codebook _44c3_s_p7_1 = {
+ 2, 121,
+ (char *)_vq_lengthlist__44c3_s_p7_1,
+ 1, -531365888, 1611661312, 4, 0,
+ (long *)_vq_quantlist__44c3_s_p7_1,
+ 0
+};
+
+static const long _vq_quantlist__44c3_s_p8_0[] = {
+ 6,
+ 5,
+ 7,
+ 4,
+ 8,
+ 3,
+ 9,
+ 2,
+ 10,
+ 1,
+ 11,
+ 0,
+ 12,
+};
+
+static const char _vq_lengthlist__44c3_s_p8_0[] = {
+ 1, 4, 4, 6, 6, 7, 7, 8, 8, 9, 9,10,10, 6, 5, 5,
+ 7, 7, 8, 8, 8, 8, 9, 9,10,10, 7, 5, 5, 7, 7, 8,
+ 8, 8, 8, 9, 9,11,10, 0, 8, 8, 8, 8, 9, 9, 9, 9,
+ 10,10,11,11, 0, 8, 8, 8, 8, 9, 9, 9, 9,10,10,11,
+ 11, 0,12,12, 9, 9,10,10,10,10,11,11,11,12, 0,13,
+ 13, 9, 9,10,10,10,10,11,11,12,12, 0, 0, 0,10,10,
+ 10,10,11,11,12,12,12,12, 0, 0, 0,10,10,10,10,11,
+ 11,12,12,12,12, 0, 0, 0,14,14,11,11,11,11,12,12,
+ 13,13, 0, 0, 0,14,14,11,11,11,11,12,12,13,13, 0,
+ 0, 0, 0, 0,12,12,12,12,13,13,14,13, 0, 0, 0, 0,
+ 0,13,13,12,12,13,12,14,13,
+};
+
+static const static_codebook _44c3_s_p8_0 = {
+ 2, 169,
+ (char *)_vq_lengthlist__44c3_s_p8_0,
+ 1, -526516224, 1616117760, 4, 0,
+ (long *)_vq_quantlist__44c3_s_p8_0,
+ 0
+};
+
+static const long _vq_quantlist__44c3_s_p8_1[] = {
+ 2,
+ 1,
+ 3,
+ 0,
+ 4,
+};
+
+static const char _vq_lengthlist__44c3_s_p8_1[] = {
+ 2, 4, 4, 5, 5, 6, 5, 5, 5, 5, 6, 4, 5, 5, 5, 6,
+ 5, 5, 5, 5, 6, 6, 6, 5, 5,
+};
+
+static const static_codebook _44c3_s_p8_1 = {
+ 2, 25,
+ (char *)_vq_lengthlist__44c3_s_p8_1,
+ 1, -533725184, 1611661312, 3, 0,
+ (long *)_vq_quantlist__44c3_s_p8_1,
+ 0
+};
+
+static const long _vq_quantlist__44c3_s_p9_0[] = {
+ 6,
+ 5,
+ 7,
+ 4,
+ 8,
+ 3,
+ 9,
+ 2,
+ 10,
+ 1,
+ 11,
+ 0,
+ 12,
+};
+
+static const char _vq_lengthlist__44c3_s_p9_0[] = {
+ 1, 4, 4,12,12,12,12,12,12,12,12,12,12, 4, 9, 8,
+ 12,12,12,12,12,12,12,12,12,12, 2, 9, 7,12,12,12,
+ 12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,
+ 12,12,12,12,12,12,11,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,12,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,
+};
+
+static const static_codebook _44c3_s_p9_0 = {
+ 2, 169,
+ (char *)_vq_lengthlist__44c3_s_p9_0,
+ 1, -514332672, 1627381760, 4, 0,
+ (long *)_vq_quantlist__44c3_s_p9_0,
+ 0
+};
+
+static const long _vq_quantlist__44c3_s_p9_1[] = {
+ 7,
+ 6,
+ 8,
+ 5,
+ 9,
+ 4,
+ 10,
+ 3,
+ 11,
+ 2,
+ 12,
+ 1,
+ 13,
+ 0,
+ 14,
+};
+
+static const char _vq_lengthlist__44c3_s_p9_1[] = {
+ 1, 4, 4, 6, 6, 7, 7, 8, 7, 9, 9,10,10,10,10, 6,
+ 5, 5, 7, 7, 8, 8,10, 8,11,10,12,12,13,13, 6, 5,
+ 5, 7, 7, 8, 8,10, 9,11,11,12,12,13,12,18, 8, 8,
+ 8, 8, 9, 9,10, 9,11,10,12,12,13,13,18, 8, 8, 8,
+ 8, 9, 9,10,10,11,11,13,12,14,13,18,11,11, 9, 9,
+ 10,10,11,11,11,12,13,12,13,14,18,11,11, 9, 8,11,
+ 10,11,11,11,11,12,12,14,13,18,18,18,10,11,10,11,
+ 12,12,12,12,13,12,14,13,18,18,18,10,11,11, 9,12,
+ 11,12,12,12,13,13,13,18,18,17,14,14,11,11,12,12,
+ 13,12,14,12,14,13,18,18,18,14,14,11,10,12, 9,12,
+ 13,13,13,13,13,18,18,17,16,18,13,13,12,12,13,11,
+ 14,12,14,14,17,18,18,17,18,13,12,13,10,12,11,14,
+ 14,14,14,17,18,18,18,18,15,16,12,12,13,10,14,12,
+ 14,15,18,18,18,16,17,16,14,12,11,13,10,13,13,14,
+ 15,
+};
+
+static const static_codebook _44c3_s_p9_1 = {
+ 2, 225,
+ (char *)_vq_lengthlist__44c3_s_p9_1,
+ 1, -522338304, 1620115456, 4, 0,
+ (long *)_vq_quantlist__44c3_s_p9_1,
+ 0
+};
+
+static const long _vq_quantlist__44c3_s_p9_2[] = {
+ 8,
+ 7,
+ 9,
+ 6,
+ 10,
+ 5,
+ 11,
+ 4,
+ 12,
+ 3,
+ 13,
+ 2,
+ 14,
+ 1,
+ 15,
+ 0,
+ 16,
+};
+
+static const char _vq_lengthlist__44c3_s_p9_2[] = {
+ 2, 5, 5, 6, 6, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8,
+ 8,10, 6, 6, 7, 7, 8, 7, 8, 8, 8, 8, 8, 9, 9, 9,
+ 9, 9,10, 6, 6, 7, 7, 7, 7, 8, 8, 8, 8, 9, 9, 9,
+ 9, 9, 9,10, 7, 7, 7, 7, 8, 8, 8, 8, 9, 9, 9, 9,
+ 9, 9, 9, 9,10,10,10, 7, 7, 8, 8, 8, 9, 9, 9, 9,
+ 9, 9, 9, 9, 9,11,11,11, 8, 8, 8, 8, 9, 9, 9, 9,
+ 9, 9, 9, 9, 9, 9,10,10,10, 8, 8, 8, 8, 9, 9, 9,
+ 9, 9, 9, 9, 9, 9, 9,10,10,10, 8, 9, 9, 9, 9, 9,
+ 9, 9, 9, 9, 9, 9,10, 9,10,10,10,11,11, 9, 9, 9,
+ 9, 9, 9, 9, 9, 9, 9, 9, 9,11,10,11,11,11, 9, 9,
+ 9, 9, 9, 9,10,10, 9, 9,10, 9,11,10,11,11,11, 9,
+ 9, 9, 9, 9, 9, 9, 9,10,10,10, 9,11,11,11,11,11,
+ 9, 9, 9, 9,10,10, 9, 9, 9, 9,10, 9,11,11,11,11,
+ 11,11,11, 9, 9, 9, 9, 9, 9,10,10,10,10,11,11,11,
+ 11,11,11,11,10, 9,10,10, 9,10, 9, 9,10, 9,11,10,
+ 10,11,11,11,11, 9,10, 9, 9, 9, 9,10,10,10,10,11,
+ 11,11,11,11,11,10,10,10, 9, 9,10, 9,10, 9,10,10,
+ 10,10,11,11,11,11,11,11,11, 9, 9, 9, 9, 9,10,10,
+ 10,
+};
+
+static const static_codebook _44c3_s_p9_2 = {
+ 2, 289,
+ (char *)_vq_lengthlist__44c3_s_p9_2,
+ 1, -529530880, 1611661312, 5, 0,
+ (long *)_vq_quantlist__44c3_s_p9_2,
+ 0
+};
+
+static const char _huff_lengthlist__44c3_s_short[] = {
+ 10, 9,13,11,14,10,12,13,13,14, 7, 2,12, 5,10, 5,
+ 7,10,12,14,12, 6, 9, 8, 7, 7, 9,11,13,16,10, 4,
+ 12, 5,10, 6, 8,12,14,16,12, 6, 8, 7, 6, 5, 7,11,
+ 12,16,10, 4, 8, 5, 6, 4, 6, 9,13,16,10, 6,10, 7,
+ 7, 6, 7, 9,13,15,12, 9,11, 9, 8, 6, 7,10,12,14,
+ 14,11,10, 9, 6, 5, 6, 9,11,13,15,13,11,10, 6, 5,
+ 6, 8, 9,11,
+};
+
+static const static_codebook _huff_book__44c3_s_short = {
+ 2, 100,
+ (char *)_huff_lengthlist__44c3_s_short,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
+static const char _huff_lengthlist__44c4_s_long[] = {
+ 4, 7,11,11,11,11,10,11,12,11, 5, 2,11, 5, 6, 6,
+ 7, 9,11,12,11, 9, 6,10, 6, 7, 8, 9,10,11,11, 5,
+ 11, 7, 8, 8, 9,11,13,14,11, 6, 5, 8, 4, 5, 7, 8,
+ 10,11,10, 6, 7, 7, 5, 5, 6, 8, 9,11,10, 7, 8, 9,
+ 6, 6, 6, 7, 8, 9,11, 9, 9,11, 7, 7, 6, 6, 7, 9,
+ 12,12,10,13, 9, 8, 7, 7, 7, 8,11,13,11,14,11,10,
+ 9, 8, 7, 7,
+};
+
+static const static_codebook _huff_book__44c4_s_long = {
+ 2, 100,
+ (char *)_huff_lengthlist__44c4_s_long,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
+static const long _vq_quantlist__44c4_s_p1_0[] = {
+ 1,
+ 0,
+ 2,
+};
+
+static const char _vq_lengthlist__44c4_s_p1_0[] = {
+ 2, 4, 4, 0, 0, 0, 0, 0, 0, 5, 6, 6, 0, 0, 0, 0,
+ 0, 0, 5, 6, 7, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 5, 7, 7, 0, 0, 0, 0, 0, 0, 7, 8, 8, 0, 0, 0,
+ 0, 0, 0, 6, 8, 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, 5, 7, 7, 0, 0, 0, 0, 0, 0, 6, 8, 7, 0, 0,
+ 0, 0, 0, 0, 7, 8, 8, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 5, 7, 7, 0, 0, 0, 0,
+ 0, 0, 7, 8, 8, 0, 0, 0, 0, 0, 0, 7, 8, 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, 7, 8, 8, 0, 0, 0,
+ 0, 0, 0, 8, 9, 9, 0, 0, 0, 0, 0, 0, 8, 9, 9, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6, 8, 8, 0, 0,
+ 0, 0, 0, 0, 8, 9, 8, 0, 0, 0, 0, 0, 0, 8, 9, 9,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 4, 7, 7, 0, 0, 0, 0, 0, 0, 7, 8, 8, 0, 0,
+ 0, 0, 0, 0, 7, 8, 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, 6, 8, 8, 0, 0, 0, 0, 0, 0, 8, 9, 9, 0,
+ 0, 0, 0, 0, 0, 8, 8, 9, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 7, 8, 8, 0, 0, 0, 0, 0, 0, 8, 9, 9,
+ 0, 0, 0, 0, 0, 0, 8, 9, 9, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0,
+};
+
+static const static_codebook _44c4_s_p1_0 = {
+ 8, 6561,
+ (char *)_vq_lengthlist__44c4_s_p1_0,
+ 1, -535822336, 1611661312, 2, 0,
+ (long *)_vq_quantlist__44c4_s_p1_0,
+ 0
+};
+
+static const long _vq_quantlist__44c4_s_p2_0[] = {
+ 2,
+ 1,
+ 3,
+ 0,
+ 4,
+};
+
+static const char _vq_lengthlist__44c4_s_p2_0[] = {
+ 2, 5, 5, 0, 0, 0, 5, 5, 0, 0, 0, 5, 5, 0, 0, 0,
+ 7, 7, 0, 0, 0, 0, 0, 0, 0, 5, 6, 6, 0, 0, 0, 7,
+ 7, 0, 0, 0, 7, 7, 0, 0, 0,10,10, 0, 0, 0, 0, 0,
+ 0, 0, 5, 6, 6, 0, 0, 0, 7, 7, 0, 0, 0, 7, 7, 0,
+ 0, 0,10,10, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 5, 8, 7, 0, 0, 0, 7, 7, 0, 0,
+ 0, 7, 7, 0, 0, 0, 9, 9, 0, 0, 0, 0, 0, 0, 0, 5,
+ 7, 8, 0, 0, 0, 7, 7, 0, 0, 0, 7, 7, 0, 0, 0, 9,
+ 9, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 5, 7, 7, 0, 0, 0, 7, 7, 0, 0, 0, 7, 7,
+ 0, 0, 0, 9, 9, 0, 0, 0, 0, 0, 0, 0, 5, 7, 7, 0,
+ 0, 0, 7, 7, 0, 0, 0, 7, 7, 0, 0, 0, 9, 9, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 7,10,10, 0, 0, 0, 9, 9, 0, 0, 0, 9, 9, 0, 0, 0,
+ 10,10, 0, 0, 0, 0, 0, 0, 0, 8,10,10, 0, 0, 0, 9,
+ 9, 0, 0, 0, 9, 9, 0, 0, 0,10,10, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0,
+};
+
+static const static_codebook _44c4_s_p2_0 = {
+ 4, 625,
+ (char *)_vq_lengthlist__44c4_s_p2_0,
+ 1, -533725184, 1611661312, 3, 0,
+ (long *)_vq_quantlist__44c4_s_p2_0,
+ 0
+};
+
+static const long _vq_quantlist__44c4_s_p3_0[] = {
+ 2,
+ 1,
+ 3,
+ 0,
+ 4,
+};
+
+static const char _vq_lengthlist__44c4_s_p3_0[] = {
+ 2, 3, 3, 6, 6, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 4, 5, 4, 6, 6, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 4, 4, 5, 6, 6, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6, 6, 6, 9, 9,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 6, 6, 7, 9, 9, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0,
+};
+
+static const static_codebook _44c4_s_p3_0 = {
+ 4, 625,
+ (char *)_vq_lengthlist__44c4_s_p3_0,
+ 1, -533725184, 1611661312, 3, 0,
+ (long *)_vq_quantlist__44c4_s_p3_0,
+ 0
+};
+
+static const long _vq_quantlist__44c4_s_p4_0[] = {
+ 4,
+ 3,
+ 5,
+ 2,
+ 6,
+ 1,
+ 7,
+ 0,
+ 8,
+};
+
+static const char _vq_lengthlist__44c4_s_p4_0[] = {
+ 2, 3, 3, 6, 6, 0, 0, 0, 0, 0, 4, 4, 6, 6, 0, 0,
+ 0, 0, 0, 4, 4, 6, 6, 0, 0, 0, 0, 0, 5, 5, 6, 6,
+ 0, 0, 0, 0, 0, 0, 0, 6, 6, 0, 0, 0, 0, 0, 0, 0,
+ 7, 8, 0, 0, 0, 0, 0, 0, 0, 7, 7, 0, 0, 0, 0, 0,
+ 0, 0, 9, 9, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0,
+};
+
+static const static_codebook _44c4_s_p4_0 = {
+ 2, 81,
+ (char *)_vq_lengthlist__44c4_s_p4_0,
+ 1, -531628032, 1611661312, 4, 0,
+ (long *)_vq_quantlist__44c4_s_p4_0,
+ 0
+};
+
+static const long _vq_quantlist__44c4_s_p5_0[] = {
+ 4,
+ 3,
+ 5,
+ 2,
+ 6,
+ 1,
+ 7,
+ 0,
+ 8,
+};
+
+static const char _vq_lengthlist__44c4_s_p5_0[] = {
+ 2, 3, 3, 6, 6, 7, 7, 9, 9, 0, 4, 4, 6, 6, 7, 7,
+ 9, 9, 0, 4, 5, 6, 6, 7, 7, 9, 9, 0, 6, 6, 7, 7,
+ 8, 8,10,10, 0, 0, 0, 7, 7, 8, 8,10, 9, 0, 0, 0,
+ 9, 8, 8, 8,10,10, 0, 0, 0, 8, 8, 8, 8,10,10, 0,
+ 0, 0,10,10, 9, 9,11,11, 0, 0, 0, 0, 0, 9, 9,10,
+ 10,
+};
+
+static const static_codebook _44c4_s_p5_0 = {
+ 2, 81,
+ (char *)_vq_lengthlist__44c4_s_p5_0,
+ 1, -531628032, 1611661312, 4, 0,
+ (long *)_vq_quantlist__44c4_s_p5_0,
+ 0
+};
+
+static const long _vq_quantlist__44c4_s_p6_0[] = {
+ 8,
+ 7,
+ 9,
+ 6,
+ 10,
+ 5,
+ 11,
+ 4,
+ 12,
+ 3,
+ 13,
+ 2,
+ 14,
+ 1,
+ 15,
+ 0,
+ 16,
+};
+
+static const char _vq_lengthlist__44c4_s_p6_0[] = {
+ 2, 4, 4, 6, 6, 8, 8, 9, 9, 8, 8, 9, 9,10,10,11,
+ 11, 0, 4, 4, 6, 6, 8, 8, 9, 9, 9, 9,10,10,11,11,
+ 11,11, 0, 4, 4, 7, 6, 8, 8, 9, 9, 9, 9,10,10,11,
+ 11,11,11, 0, 6, 6, 7, 7, 8, 8, 9, 9, 9, 9,10,10,
+ 11,11,11,12, 0, 0, 0, 7, 7, 8, 8, 9, 9, 9, 9,10,
+ 10,11,11,12,12, 0, 0, 0, 8, 8, 8, 8, 9, 9, 9, 9,
+ 10,10,11,11,12,12, 0, 0, 0, 8, 8, 8, 8, 9, 9, 9,
+ 9,10,10,11,11,12,12, 0, 0, 0, 9, 9, 9, 9,10,10,
+ 10,10,11,11,11,11,12,12, 0, 0, 0, 0, 0, 9, 9,10,
+ 10,10,10,11,11,11,11,12,12, 0, 0, 0, 0, 0, 9, 9,
+ 9,10,10,10,11,11,11,11,12,12, 0, 0, 0, 0, 0, 9,
+ 9, 9, 9,10,10,11,11,11,12,12,12, 0, 0, 0, 0, 0,
+ 10,10,10,10,11,11,11,11,12,12,13,12, 0, 0, 0, 0,
+ 0, 0, 0,10,10,11,11,11,11,12,12,12,12, 0, 0, 0,
+ 0, 0, 0, 0,11,11,11,11,12,12,12,12,13,13, 0, 0,
+ 0, 0, 0, 0, 0,11,11,11,11,12,12,12,12,13,13, 0,
+ 0, 0, 0, 0, 0, 0,12,12,12,12,12,12,13,13,13,13,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0,12,12,12,12,12,13,13,
+ 13,
+};
+
+static const static_codebook _44c4_s_p6_0 = {
+ 2, 289,
+ (char *)_vq_lengthlist__44c4_s_p6_0,
+ 1, -529530880, 1611661312, 5, 0,
+ (long *)_vq_quantlist__44c4_s_p6_0,
+ 0
+};
+
+static const long _vq_quantlist__44c4_s_p7_0[] = {
+ 1,
+ 0,
+ 2,
+};
+
+static const char _vq_lengthlist__44c4_s_p7_0[] = {
+ 1, 4, 4, 7, 6, 6, 7, 6, 6, 4, 7, 7,10, 9, 9,11,
+ 9, 9, 4, 7, 7,10, 9, 9,11, 9, 9, 7,10,10,11,11,
+ 10,11,11,11, 6, 9, 9,11,10,10,11,10,10, 6, 9, 9,
+ 11,10,10,11,10,10, 7,11,11,12,11,11,12,11,11, 6,
+ 9, 9,11,10,10,11,10,10, 6, 9, 9,11,10,10,11,10,
+ 10,
+};
+
+static const static_codebook _44c4_s_p7_0 = {
+ 4, 81,
+ (char *)_vq_lengthlist__44c4_s_p7_0,
+ 1, -529137664, 1618345984, 2, 0,
+ (long *)_vq_quantlist__44c4_s_p7_0,
+ 0
+};
+
+static const long _vq_quantlist__44c4_s_p7_1[] = {
+ 5,
+ 4,
+ 6,
+ 3,
+ 7,
+ 2,
+ 8,
+ 1,
+ 9,
+ 0,
+ 10,
+};
+
+static const char _vq_lengthlist__44c4_s_p7_1[] = {
+ 2, 4, 4, 6, 6, 7, 7, 7, 7, 8, 8,10, 5, 5, 6, 6,
+ 7, 7, 8, 8, 8, 8,10, 5, 5, 6, 6, 7, 7, 8, 8, 8,
+ 8,10, 6, 6, 7, 7, 8, 8, 8, 8, 8, 8,10,10,10, 7,
+ 7, 8, 8, 8, 8, 8, 8,10,10,10, 8, 7, 8, 8, 8, 8,
+ 8, 8,10,10,10, 7, 7, 8, 8, 8, 8, 8, 8,10,10,10,
+ 8, 8, 8, 8, 8, 8, 8, 8,10,10,10,10,10, 8, 8, 8,
+ 8, 8, 8,10,10,10,10,10, 9, 9, 8, 8, 9, 8,10,10,
+ 10,10,10, 8, 8, 8, 8, 9, 9,
+};
+
+static const static_codebook _44c4_s_p7_1 = {
+ 2, 121,
+ (char *)_vq_lengthlist__44c4_s_p7_1,
+ 1, -531365888, 1611661312, 4, 0,
+ (long *)_vq_quantlist__44c4_s_p7_1,
+ 0
+};
+
+static const long _vq_quantlist__44c4_s_p8_0[] = {
+ 6,
+ 5,
+ 7,
+ 4,
+ 8,
+ 3,
+ 9,
+ 2,
+ 10,
+ 1,
+ 11,
+ 0,
+ 12,
+};
+
+static const char _vq_lengthlist__44c4_s_p8_0[] = {
+ 1, 4, 4, 6, 6, 7, 7, 8, 8, 9, 9,10,10, 6, 5, 5,
+ 7, 7, 8, 8, 8, 8, 9,10,11,11, 7, 5, 5, 7, 7, 8,
+ 8, 9, 9,10,10,11,11, 0, 8, 8, 8, 8, 9, 9, 9, 9,
+ 10,10,11,11, 0, 8, 8, 8, 8, 9, 9, 9, 9,10,10,11,
+ 11, 0,12,12, 9, 9, 9, 9,10,10,10,10,11,11, 0,13,
+ 13, 9, 9,10, 9,10,10,11,11,11,12, 0, 0, 0,10,10,
+ 10,10,10,10,11,11,12,12, 0, 0, 0,10,10,10,10,10,
+ 10,11,11,12,12, 0, 0, 0,14,14,11,11,11,11,12,12,
+ 12,12, 0, 0, 0,14,14,11,11,11,11,12,12,12,13, 0,
+ 0, 0, 0, 0,12,12,12,12,12,12,13,13, 0, 0, 0, 0,
+ 0,13,12,12,12,12,12,13,13,
+};
+
+static const static_codebook _44c4_s_p8_0 = {
+ 2, 169,
+ (char *)_vq_lengthlist__44c4_s_p8_0,
+ 1, -526516224, 1616117760, 4, 0,
+ (long *)_vq_quantlist__44c4_s_p8_0,
+ 0
+};
+
+static const long _vq_quantlist__44c4_s_p8_1[] = {
+ 2,
+ 1,
+ 3,
+ 0,
+ 4,
+};
+
+static const char _vq_lengthlist__44c4_s_p8_1[] = {
+ 2, 4, 4, 5, 5, 6, 5, 5, 5, 5, 6, 5, 4, 5, 5, 6,
+ 5, 5, 5, 5, 6, 6, 6, 5, 5,
+};
+
+static const static_codebook _44c4_s_p8_1 = {
+ 2, 25,
+ (char *)_vq_lengthlist__44c4_s_p8_1,
+ 1, -533725184, 1611661312, 3, 0,
+ (long *)_vq_quantlist__44c4_s_p8_1,
+ 0
+};
+
+static const long _vq_quantlist__44c4_s_p9_0[] = {
+ 6,
+ 5,
+ 7,
+ 4,
+ 8,
+ 3,
+ 9,
+ 2,
+ 10,
+ 1,
+ 11,
+ 0,
+ 12,
+};
+
+static const char _vq_lengthlist__44c4_s_p9_0[] = {
+ 1, 3, 3,12,12,12,12,12,12,12,12,12,12, 4, 7, 7,
+ 12,12,12,12,12,12,12,12,12,12, 3, 8, 8,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,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,
+};
+
+static const static_codebook _44c4_s_p9_0 = {
+ 2, 169,
+ (char *)_vq_lengthlist__44c4_s_p9_0,
+ 1, -513964032, 1628680192, 4, 0,
+ (long *)_vq_quantlist__44c4_s_p9_0,
+ 0
+};
+
+static const long _vq_quantlist__44c4_s_p9_1[] = {
+ 7,
+ 6,
+ 8,
+ 5,
+ 9,
+ 4,
+ 10,
+ 3,
+ 11,
+ 2,
+ 12,
+ 1,
+ 13,
+ 0,
+ 14,
+};
+
+static const char _vq_lengthlist__44c4_s_p9_1[] = {
+ 1, 4, 4, 5, 5, 7, 7, 9, 8,10, 9,10,10,10,10, 6,
+ 5, 5, 7, 7, 9, 8,10, 9,11,10,12,12,13,13, 6, 5,
+ 5, 7, 7, 9, 9,10,10,11,11,12,12,12,13,19, 8, 8,
+ 8, 8, 9, 9,10,10,12,11,12,12,13,13,19, 8, 8, 8,
+ 8, 9, 9,11,11,12,12,13,13,13,13,19,12,12, 9, 9,
+ 11,11,11,11,12,11,13,12,13,13,18,12,12, 9, 9,11,
+ 10,11,11,12,12,12,13,13,14,19,18,18,11,11,11,11,
+ 12,12,13,12,13,13,14,14,16,18,18,11,11,11,10,12,
+ 11,13,13,13,13,13,14,17,18,18,14,15,11,12,12,13,
+ 13,13,13,14,14,14,18,18,18,15,15,12,10,13,10,13,
+ 13,13,13,13,14,18,17,18,17,18,12,13,12,13,13,13,
+ 14,14,16,14,18,17,18,18,17,13,12,13,10,12,12,14,
+ 14,14,14,17,18,18,18,18,14,15,12,12,13,12,14,14,
+ 15,15,18,18,18,17,18,15,14,12,11,12,12,14,14,14,
+ 15,
+};
+
+static const static_codebook _44c4_s_p9_1 = {
+ 2, 225,
+ (char *)_vq_lengthlist__44c4_s_p9_1,
+ 1, -520986624, 1620377600, 4, 0,
+ (long *)_vq_quantlist__44c4_s_p9_1,
+ 0
+};
+
+static const long _vq_quantlist__44c4_s_p9_2[] = {
+ 10,
+ 9,
+ 11,
+ 8,
+ 12,
+ 7,
+ 13,
+ 6,
+ 14,
+ 5,
+ 15,
+ 4,
+ 16,
+ 3,
+ 17,
+ 2,
+ 18,
+ 1,
+ 19,
+ 0,
+ 20,
+};
+
+static const char _vq_lengthlist__44c4_s_p9_2[] = {
+ 2, 5, 5, 6, 6, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8,
+ 8, 9, 9, 9, 9,11, 6, 6, 7, 7, 8, 8, 8, 8, 9, 9,
+ 9, 9, 9, 9, 9, 9,10,10,10,10,11, 6, 6, 7, 7, 8,
+ 8, 8, 8, 9, 9, 9, 9, 9, 9,10, 9,10,10,10,10,11,
+ 7, 7, 7, 7, 8, 8, 9, 9, 9, 9, 9, 9, 9,10,10,10,
+ 10,10,10,10,12,11,11, 7, 7, 8, 8, 9, 9, 9, 9, 9,
+ 9,10,10,10,10,10,10,10,10,12,11,12, 8, 8, 8, 8,
+ 9, 9, 9, 9, 9,10,10,10,10,10,10,10,10,10,11,11,
+ 11, 8, 8, 8, 8, 9, 9, 9, 9,10,10,10,10,10,10,10,
+ 10,10,10,11,11,12, 9, 9, 9, 9, 9, 9,10, 9,10,10,
+ 10,10,10,10,10,10,10,10,11,11,11,11,11, 9, 9, 9,
+ 9,10,10,10,10,10,10,10,10,10,10,10,10,11,12,11,
+ 11,11, 9, 9, 9,10,10,10,10,10,10,10,10,10,10,10,
+ 10,10,11,11,11,11,11, 9, 9, 9, 9,10,10,10,10,10,
+ 10,10,10,10,10,10,10,11,11,11,12,12,10,10,10,10,
+ 10,10,10,10,10,10,10,10,10,10,10,10,11,12,11,12,
+ 11,11,11, 9,10,10,10,10,10,10,10,10,10,10,10,10,
+ 10,11,12,11,11,11,11,11,10,10,10,10,10,10,10,10,
+ 10,10,10,10,10,10,11,11,11,12,11,11,11,10,10,10,
+ 10,10,10,10,10,10,10,10,10,10,10,12,11,11,12,11,
+ 11,11,10,10,10,10,10,10,10,10,10,10,10,10,10,10,
+ 11,11,11,11,11,11,11,11,11,10,10,10,10,10,10,10,
+ 10,10,10,10,10,11,11,11,11,12,12,11,11,11,11,11,
+ 11,11,10,10,10,10,10,10,10,10,12,12,12,11,11,11,
+ 12,11,11,11,10,10,10,10,10,10,10,10,10,10,10,12,
+ 11,12,12,12,12,12,11,12,11,11,10,10,10,10,10,10,
+ 10,10,10,10,12,12,12,12,11,11,11,11,11,11,11,10,
+ 10,10,10,10,10,10,10,10,10,
+};
+
+static const static_codebook _44c4_s_p9_2 = {
+ 2, 441,
+ (char *)_vq_lengthlist__44c4_s_p9_2,
+ 1, -529268736, 1611661312, 5, 0,
+ (long *)_vq_quantlist__44c4_s_p9_2,
+ 0
+};
+
+static const char _huff_lengthlist__44c4_s_short[] = {
+ 4, 7,14,10,15,10,12,15,16,15, 4, 2,11, 5,10, 6,
+ 8,11,14,14,14,10, 7,11, 6, 8,10,11,13,15, 9, 4,
+ 11, 5, 9, 6, 9,12,14,15,14, 9, 6, 9, 4, 5, 7,10,
+ 12,13, 9, 5, 7, 6, 5, 5, 7,10,13,13,10, 8, 9, 8,
+ 7, 6, 8,10,14,14,13,11,10,10, 7, 7, 8,11,14,15,
+ 13,12, 9, 9, 6, 5, 7,10,14,17,15,13,11,10, 6, 6,
+ 7, 9,12,17,
+};
+
+static const static_codebook _huff_book__44c4_s_short = {
+ 2, 100,
+ (char *)_huff_lengthlist__44c4_s_short,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
+static const char _huff_lengthlist__44c5_s_long[] = {
+ 3, 8, 9,13,10,12,12,12,12,12, 6, 4, 6, 8, 6, 8,
+ 10,10,11,12, 8, 5, 4,10, 4, 7, 8, 9,10,11,13, 8,
+ 10, 8, 9, 9,11,12,13,14,10, 6, 4, 9, 3, 5, 6, 8,
+ 10,11,11, 8, 6, 9, 5, 5, 6, 7, 9,11,12, 9, 7,11,
+ 6, 6, 6, 7, 8,10,12,11, 9,12, 7, 7, 6, 6, 7, 9,
+ 13,12,10,13, 9, 8, 7, 7, 7, 8,11,15,11,15,11,10,
+ 9, 8, 7, 7,
+};
+
+static const static_codebook _huff_book__44c5_s_long = {
+ 2, 100,
+ (char *)_huff_lengthlist__44c5_s_long,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
+static const long _vq_quantlist__44c5_s_p1_0[] = {
+ 1,
+ 0,
+ 2,
+};
+
+static const char _vq_lengthlist__44c5_s_p1_0[] = {
+ 2, 4, 4, 0, 0, 0, 0, 0, 0, 4, 7, 7, 0, 0, 0, 0,
+ 0, 0, 4, 6, 7, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 5, 7, 7, 0, 0, 0, 0, 0, 0, 7, 9, 9, 0, 0, 0,
+ 0, 0, 0, 7, 8, 9, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 4, 7, 7, 0, 0, 0, 0, 0, 0, 7, 9, 8, 0, 0,
+ 0, 0, 0, 0, 7, 9, 9, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 4, 7, 7, 0, 0, 0, 0,
+ 0, 0, 7, 9, 9, 0, 0, 0, 0, 0, 0, 7, 9, 9, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 7, 9, 9, 0, 0, 0,
+ 0, 0, 0, 9,10,11, 0, 0, 0, 0, 0, 0, 9,10,10, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 7, 9, 9, 0, 0,
+ 0, 0, 0, 0, 8,10, 9, 0, 0, 0, 0, 0, 0, 9,10,11,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 4, 7, 7, 0, 0, 0, 0, 0, 0, 7, 9, 9, 0, 0,
+ 0, 0, 0, 0, 7, 9, 9, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 7, 9, 9, 0, 0, 0, 0, 0, 0, 9,11,10, 0,
+ 0, 0, 0, 0, 0, 8, 9,10, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 7, 9, 9, 0, 0, 0, 0, 0, 0, 9,10,10,
+ 0, 0, 0, 0, 0, 0, 9,11,10, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0,
+};
+
+static const static_codebook _44c5_s_p1_0 = {
+ 8, 6561,
+ (char *)_vq_lengthlist__44c5_s_p1_0,
+ 1, -535822336, 1611661312, 2, 0,
+ (long *)_vq_quantlist__44c5_s_p1_0,
+ 0
+};
+
+static const long _vq_quantlist__44c5_s_p2_0[] = {
+ 2,
+ 1,
+ 3,
+ 0,
+ 4,
+};
+
+static const char _vq_lengthlist__44c5_s_p2_0[] = {
+ 2, 4, 4, 0, 0, 0, 5, 5, 0, 0, 0, 5, 5, 0, 0, 0,
+ 8, 7, 0, 0, 0, 0, 0, 0, 0, 4, 6, 6, 0, 0, 0, 8,
+ 8, 0, 0, 0, 8, 7, 0, 0, 0,10,10, 0, 0, 0, 0, 0,
+ 0, 0, 4, 6, 6, 0, 0, 0, 8, 8, 0, 0, 0, 7, 8, 0,
+ 0, 0,10,10, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 5, 8, 7, 0, 0, 0, 8, 8, 0, 0,
+ 0, 8, 8, 0, 0, 0,10,10, 0, 0, 0, 0, 0, 0, 0, 5,
+ 7, 8, 0, 0, 0, 8, 8, 0, 0, 0, 8, 8, 0, 0, 0,10,
+ 10, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 5, 8, 8, 0, 0, 0, 8, 8, 0, 0, 0, 8, 8,
+ 0, 0, 0,10,10, 0, 0, 0, 0, 0, 0, 0, 5, 8, 8, 0,
+ 0, 0, 8, 8, 0, 0, 0, 8, 8, 0, 0, 0,10,10, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 8,10,10, 0, 0, 0,10,10, 0, 0, 0, 9,10, 0, 0, 0,
+ 11,10, 0, 0, 0, 0, 0, 0, 0, 8,10,10, 0, 0, 0,10,
+ 10, 0, 0, 0,10,10, 0, 0, 0,10,11, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0,
+};
+
+static const static_codebook _44c5_s_p2_0 = {
+ 4, 625,
+ (char *)_vq_lengthlist__44c5_s_p2_0,
+ 1, -533725184, 1611661312, 3, 0,
+ (long *)_vq_quantlist__44c5_s_p2_0,
+ 0
+};
+
+static const long _vq_quantlist__44c5_s_p3_0[] = {
+ 2,
+ 1,
+ 3,
+ 0,
+ 4,
+};
+
+static const char _vq_lengthlist__44c5_s_p3_0[] = {
+ 2, 4, 3, 5, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 4, 5, 5, 6, 6, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 3, 5, 5, 6, 6, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6, 6, 6, 8, 8,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 5, 6, 6, 8, 8, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0,
+};
+
+static const static_codebook _44c5_s_p3_0 = {
+ 4, 625,
+ (char *)_vq_lengthlist__44c5_s_p3_0,
+ 1, -533725184, 1611661312, 3, 0,
+ (long *)_vq_quantlist__44c5_s_p3_0,
+ 0
+};
+
+static const long _vq_quantlist__44c5_s_p4_0[] = {
+ 4,
+ 3,
+ 5,
+ 2,
+ 6,
+ 1,
+ 7,
+ 0,
+ 8,
+};
+
+static const char _vq_lengthlist__44c5_s_p4_0[] = {
+ 2, 3, 3, 6, 6, 0, 0, 0, 0, 0, 4, 4, 6, 6, 0, 0,
+ 0, 0, 0, 4, 4, 6, 6, 0, 0, 0, 0, 0, 5, 5, 6, 6,
+ 0, 0, 0, 0, 0, 0, 0, 6, 6, 0, 0, 0, 0, 0, 0, 0,
+ 7, 7, 0, 0, 0, 0, 0, 0, 0, 8, 7, 0, 0, 0, 0, 0,
+ 0, 0, 9, 9, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0,
+};
+
+static const static_codebook _44c5_s_p4_0 = {
+ 2, 81,
+ (char *)_vq_lengthlist__44c5_s_p4_0,
+ 1, -531628032, 1611661312, 4, 0,
+ (long *)_vq_quantlist__44c5_s_p4_0,
+ 0
+};
+
+static const long _vq_quantlist__44c5_s_p5_0[] = {
+ 4,
+ 3,
+ 5,
+ 2,
+ 6,
+ 1,
+ 7,
+ 0,
+ 8,
+};
+
+static const char _vq_lengthlist__44c5_s_p5_0[] = {
+ 2, 4, 3, 6, 6, 7, 7, 9, 9, 0, 4, 4, 6, 6, 7, 7,
+ 9, 9, 0, 4, 4, 6, 6, 7, 7, 9, 9, 0, 6, 6, 7, 7,
+ 7, 7, 9, 9, 0, 0, 0, 7, 6, 7, 7, 9, 9, 0, 0, 0,
+ 8, 8, 8, 8,10,10, 0, 0, 0, 8, 8, 8, 8,10,10, 0,
+ 0, 0, 9, 9, 9, 9,10,10, 0, 0, 0, 0, 0, 9, 9,10,
+ 10,
+};
+
+static const static_codebook _44c5_s_p5_0 = {
+ 2, 81,
+ (char *)_vq_lengthlist__44c5_s_p5_0,
+ 1, -531628032, 1611661312, 4, 0,
+ (long *)_vq_quantlist__44c5_s_p5_0,
+ 0
+};
+
+static const long _vq_quantlist__44c5_s_p6_0[] = {
+ 8,
+ 7,
+ 9,
+ 6,
+ 10,
+ 5,
+ 11,
+ 4,
+ 12,
+ 3,
+ 13,
+ 2,
+ 14,
+ 1,
+ 15,
+ 0,
+ 16,
+};
+
+static const char _vq_lengthlist__44c5_s_p6_0[] = {
+ 2, 4, 4, 6, 6, 8, 8, 9, 9, 9, 9,10,10,10,10,11,
+ 11, 0, 4, 4, 6, 6, 8, 8, 9, 9, 9, 9,10,10,11,11,
+ 12,12, 0, 4, 4, 6, 6, 8, 8, 9, 9, 9, 9,10,10,11,
+ 11,12,12, 0, 6, 6, 7, 7, 8, 8, 9, 9, 9, 9,10,10,
+ 11,11,12,12, 0, 0, 0, 7, 7, 8, 8, 9, 9, 9, 9,10,
+ 10,11,11,12,12, 0, 0, 0, 7, 7, 9, 9,10,10,10,10,
+ 11,11,11,11,12,12, 0, 0, 0, 7, 7, 8, 9,10,10,10,
+ 10,11,11,11,11,12,12, 0, 0, 0, 8, 8, 9, 9,10,10,
+ 10,10,11,11,12,12,12,12, 0, 0, 0, 0, 0, 9, 9,10,
+ 10,10,10,11,11,12,12,12,12, 0, 0, 0, 0, 0, 9, 9,
+ 10,10,10,10,11,11,12,12,12,12, 0, 0, 0, 0, 0, 9,
+ 9, 9,10,10,10,11,11,12,12,12,12, 0, 0, 0, 0, 0,
+ 10,10,10,10,11,11,11,12,12,12,13,13, 0, 0, 0, 0,
+ 0, 0, 0,10,10,11,11,11,11,12,12,13,13, 0, 0, 0,
+ 0, 0, 0, 0,11,11,11,11,12,12,12,13,13,13, 0, 0,
+ 0, 0, 0, 0, 0,11,11,11,11,12,12,12,12,13,13, 0,
+ 0, 0, 0, 0, 0, 0,12,12,12,12,13,12,13,13,13,13,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0,12,12,12,12,13,13,13,
+ 13,
+};
+
+static const static_codebook _44c5_s_p6_0 = {
+ 2, 289,
+ (char *)_vq_lengthlist__44c5_s_p6_0,
+ 1, -529530880, 1611661312, 5, 0,
+ (long *)_vq_quantlist__44c5_s_p6_0,
+ 0
+};
+
+static const long _vq_quantlist__44c5_s_p7_0[] = {
+ 1,
+ 0,
+ 2,
+};
+
+static const char _vq_lengthlist__44c5_s_p7_0[] = {
+ 1, 4, 4, 7, 6, 6, 7, 6, 6, 4, 7, 7,10, 9, 9,11,
+ 9, 9, 4, 7, 7,10, 9, 9,11, 9, 9, 7,10,10,11,11,
+ 10,11,11,11, 6, 9, 9,11,10,10,11,10,10, 6, 9, 9,
+ 11,10,10,11,10,10, 7,11,11,12,11,11,12,11,11, 6,
+ 9, 9,11,10,10,11,10,10, 6, 9, 9,11,10,10,11,10,
+ 10,
+};
+
+static const static_codebook _44c5_s_p7_0 = {
+ 4, 81,
+ (char *)_vq_lengthlist__44c5_s_p7_0,
+ 1, -529137664, 1618345984, 2, 0,
+ (long *)_vq_quantlist__44c5_s_p7_0,
+ 0
+};
+
+static const long _vq_quantlist__44c5_s_p7_1[] = {
+ 5,
+ 4,
+ 6,
+ 3,
+ 7,
+ 2,
+ 8,
+ 1,
+ 9,
+ 0,
+ 10,
+};
+
+static const char _vq_lengthlist__44c5_s_p7_1[] = {
+ 2, 4, 4, 6, 6, 7, 7, 8, 8, 8, 8,10, 5, 5, 6, 6,
+ 7, 7, 8, 8, 8, 8,10, 5, 5, 6, 6, 7, 7, 8, 8, 8,
+ 8,10, 6, 6, 7, 7, 8, 8, 8, 8, 8, 8,10,10,10, 7,
+ 7, 8, 8, 8, 8, 8, 8,10,10,10, 7, 7, 8, 8, 8, 8,
+ 8, 8,10,10,10, 7, 7, 8, 8, 8, 8, 8, 8,10,10,10,
+ 8, 8, 8, 8, 8, 8, 8, 9,10,10,10,10,10, 8, 8, 8,
+ 8, 8, 8,10,10,10,10,10, 9, 9, 8, 8, 8, 8,10,10,
+ 10,10,10, 8, 8, 8, 8, 8, 8,
+};
+
+static const static_codebook _44c5_s_p7_1 = {
+ 2, 121,
+ (char *)_vq_lengthlist__44c5_s_p7_1,
+ 1, -531365888, 1611661312, 4, 0,
+ (long *)_vq_quantlist__44c5_s_p7_1,
+ 0
+};
+
+static const long _vq_quantlist__44c5_s_p8_0[] = {
+ 6,
+ 5,
+ 7,
+ 4,
+ 8,
+ 3,
+ 9,
+ 2,
+ 10,
+ 1,
+ 11,
+ 0,
+ 12,
+};
+
+static const char _vq_lengthlist__44c5_s_p8_0[] = {
+ 1, 4, 4, 6, 6, 7, 7, 8, 8, 9, 9,10,10, 6, 5, 5,
+ 7, 7, 8, 8, 8, 9,10,10,10,10, 7, 5, 5, 7, 7, 8,
+ 8, 9, 9,10,10,10,10, 0, 8, 8, 8, 8, 9, 9, 9, 9,
+ 10,10,11,11, 0, 8, 8, 8, 8, 9, 9, 9, 9,10,10,11,
+ 11, 0,12,12, 9, 9, 9,10,10,10,10,10,11,11, 0,13,
+ 13, 9, 9, 9, 9,10,10,11,11,11,11, 0, 0, 0,10,10,
+ 10,10,10,10,11,11,11,11, 0, 0, 0,10,10,10,10,10,
+ 10,11,11,12,12, 0, 0, 0,14,14,11,11,11,11,12,12,
+ 12,12, 0, 0, 0,14,14,11,11,11,11,12,12,12,12, 0,
+ 0, 0, 0, 0,12,12,12,12,12,12,13,13, 0, 0, 0, 0,
+ 0,12,12,12,12,12,12,13,13,
+};
+
+static const static_codebook _44c5_s_p8_0 = {
+ 2, 169,
+ (char *)_vq_lengthlist__44c5_s_p8_0,
+ 1, -526516224, 1616117760, 4, 0,
+ (long *)_vq_quantlist__44c5_s_p8_0,
+ 0
+};
+
+static const long _vq_quantlist__44c5_s_p8_1[] = {
+ 2,
+ 1,
+ 3,
+ 0,
+ 4,
+};
+
+static const char _vq_lengthlist__44c5_s_p8_1[] = {
+ 2, 4, 4, 5, 5, 6, 5, 5, 5, 5, 6, 4, 5, 5, 5, 6,
+ 5, 5, 5, 5, 6, 6, 6, 5, 5,
+};
+
+static const static_codebook _44c5_s_p8_1 = {
+ 2, 25,
+ (char *)_vq_lengthlist__44c5_s_p8_1,
+ 1, -533725184, 1611661312, 3, 0,
+ (long *)_vq_quantlist__44c5_s_p8_1,
+ 0
+};
+
+static const long _vq_quantlist__44c5_s_p9_0[] = {
+ 7,
+ 6,
+ 8,
+ 5,
+ 9,
+ 4,
+ 10,
+ 3,
+ 11,
+ 2,
+ 12,
+ 1,
+ 13,
+ 0,
+ 14,
+};
+
+static const char _vq_lengthlist__44c5_s_p9_0[] = {
+ 1, 3, 3,13,13,13,13,13,13,13,13,13,13,13,13, 4,
+ 7, 7,13,13,13,13,13,13,13,13,13,13,13,13, 3, 8,
+ 6,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,12,12,12,12,12,12,12,
+ 12,
+};
+
+static const static_codebook _44c5_s_p9_0 = {
+ 2, 225,
+ (char *)_vq_lengthlist__44c5_s_p9_0,
+ 1, -512522752, 1628852224, 4, 0,
+ (long *)_vq_quantlist__44c5_s_p9_0,
+ 0
+};
+
+static const long _vq_quantlist__44c5_s_p9_1[] = {
+ 8,
+ 7,
+ 9,
+ 6,
+ 10,
+ 5,
+ 11,
+ 4,
+ 12,
+ 3,
+ 13,
+ 2,
+ 14,
+ 1,
+ 15,
+ 0,
+ 16,
+};
+
+static const char _vq_lengthlist__44c5_s_p9_1[] = {
+ 1, 4, 4, 5, 5, 7, 7, 9, 8,10, 9,10,10,11,10,11,
+ 11, 6, 5, 5, 7, 7, 8, 9,10,10,11,10,12,11,12,11,
+ 13,12, 6, 5, 5, 7, 7, 9, 9,10,10,11,11,12,12,13,
+ 12,13,13,18, 8, 8, 8, 8, 9, 9,10,11,11,11,12,11,
+ 13,11,13,12,18, 8, 8, 8, 8,10,10,11,11,12,12,13,
+ 13,13,13,13,14,18,12,12, 9, 9,11,11,11,11,12,12,
+ 13,12,13,12,13,13,20,13,12, 9, 9,11,11,11,11,12,
+ 12,13,13,13,14,14,13,20,18,19,11,12,11,11,12,12,
+ 13,13,13,13,13,13,14,13,18,19,19,12,11,11,11,12,
+ 12,13,12,13,13,13,14,14,13,18,17,19,14,15,12,12,
+ 12,13,13,13,14,14,14,14,14,14,19,19,19,16,15,12,
+ 11,13,12,14,14,14,13,13,14,14,14,19,18,19,18,19,
+ 13,13,13,13,14,14,14,13,14,14,14,14,18,17,19,19,
+ 19,13,13,13,11,13,11,13,14,14,14,14,14,19,17,17,
+ 18,18,16,16,13,13,13,13,14,13,15,15,14,14,19,19,
+ 17,17,18,16,16,13,11,14,10,13,12,14,14,14,14,19,
+ 19,19,19,19,18,17,13,14,13,11,14,13,14,14,15,15,
+ 19,19,19,17,19,18,18,14,13,12,11,14,11,15,15,15,
+ 15,
+};
+
+static const static_codebook _44c5_s_p9_1 = {
+ 2, 289,
+ (char *)_vq_lengthlist__44c5_s_p9_1,
+ 1, -520814592, 1620377600, 5, 0,
+ (long *)_vq_quantlist__44c5_s_p9_1,
+ 0
+};
+
+static const long _vq_quantlist__44c5_s_p9_2[] = {
+ 10,
+ 9,
+ 11,
+ 8,
+ 12,
+ 7,
+ 13,
+ 6,
+ 14,
+ 5,
+ 15,
+ 4,
+ 16,
+ 3,
+ 17,
+ 2,
+ 18,
+ 1,
+ 19,
+ 0,
+ 20,
+};
+
+static const char _vq_lengthlist__44c5_s_p9_2[] = {
+ 3, 5, 5, 6, 6, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8,
+ 8, 8, 8, 8, 9,11, 5, 6, 7, 7, 8, 7, 8, 8, 8, 8,
+ 9, 9, 9, 9, 9, 9, 9, 9, 9, 9,11, 5, 5, 7, 7, 7,
+ 7, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9,11,
+ 7, 7, 7, 7, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9,
+ 9,10, 9,10,11,11,11, 7, 7, 8, 8, 8, 8, 9, 9, 9,
+ 9, 9, 9,10,10,10,10,10,10,11,11,11, 8, 8, 8, 8,
+ 9, 9, 9, 9, 9, 9, 9,10,10,10,10,10,10,10,11,11,
+ 11, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9,10,10,10,10,10,
+ 10,10,10,11,11,11, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9,
+ 10,10,10,10,10,10,10,10,11,11,11,11,11, 9, 9, 9,
+ 9, 9, 9,10, 9,10,10,10,10,10,10,10,10,11,11,11,
+ 11,11, 9, 9, 9, 9, 9, 9,10,10,10,10,10,10,10,10,
+ 10,10,11,11,11,11,11, 9, 9, 9, 9, 9, 9,10,10,10,
+ 10,10,10,10,10,10,10,11,11,11,11,11, 9, 9,10, 9,
+ 10,10,10,10,10,10,10,10,10,10,10,10,11,11,11,11,
+ 11,11,11, 9, 9,10,10,10,10,10,10,10,10,10,10,10,
+ 10,11,11,11,11,11,11,11,10,10,10,10,10,10,10,10,
+ 10,10,10,10,10,10,11,11,11,11,11,11,11,10,10,10,
+ 10,10,10,10,10,10,10,10,10,10,10,11,11,11,11,11,
+ 11,11,10,10,10,10,10,10,10,10,10,10,10,10,10,10,
+ 11,11,11,11,11,11,11,11,11,10,10,10,10,10,10,10,
+ 10,10,10,10,10,11,11,11,11,11,11,11,11,11,10,10,
+ 10,10,10,10,10,10,10,10,10,10,11,11,11,11,11,11,
+ 11,11,11,10,10,10,10,10,10,10,10,10,10,10,10,11,
+ 11,11,11,11,11,11,11,11,10,10,10,10,10,10,10,10,
+ 10,10,10,10,11,11,11,11,11,11,11,11,11,11,11,10,
+ 10,10,10,10,10,10,10,10,10,
+};
+
+static const static_codebook _44c5_s_p9_2 = {
+ 2, 441,
+ (char *)_vq_lengthlist__44c5_s_p9_2,
+ 1, -529268736, 1611661312, 5, 0,
+ (long *)_vq_quantlist__44c5_s_p9_2,
+ 0
+};
+
+static const char _huff_lengthlist__44c5_s_short[] = {
+ 5, 8,10,14,11,11,12,16,15,17, 5, 5, 7, 9, 7, 8,
+ 10,13,17,17, 7, 5, 5,10, 5, 7, 8,11,13,15,10, 8,
+ 10, 8, 8, 8,11,15,18,18, 8, 5, 5, 8, 3, 4, 6,10,
+ 14,16, 9, 7, 6, 7, 4, 3, 5, 9,14,18,10, 9, 8,10,
+ 6, 5, 6, 9,14,18,12,12,11,12, 8, 7, 8,11,14,18,
+ 14,13,12,10, 7, 5, 6, 9,14,18,14,14,13,10, 6, 5,
+ 6, 8,11,16,
+};
+
+static const static_codebook _huff_book__44c5_s_short = {
+ 2, 100,
+ (char *)_huff_lengthlist__44c5_s_short,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
+static const char _huff_lengthlist__44c6_s_long[] = {
+ 3, 8,11,13,14,14,13,13,16,14, 6, 3, 4, 7, 9, 9,
+ 10,11,14,13,10, 4, 3, 5, 7, 7, 9,10,13,15,12, 7,
+ 4, 4, 6, 6, 8,10,13,15,12, 8, 6, 6, 6, 6, 8,10,
+ 13,14,11, 9, 7, 6, 6, 6, 7, 8,12,11,13,10, 9, 8,
+ 7, 6, 6, 7,11,11,13,11,10, 9, 9, 7, 7, 6,10,11,
+ 13,13,13,13,13,11, 9, 8,10,12,12,15,15,16,15,12,
+ 11,10,10,12,
+};
+
+static const static_codebook _huff_book__44c6_s_long = {
+ 2, 100,
+ (char *)_huff_lengthlist__44c6_s_long,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
+static const long _vq_quantlist__44c6_s_p1_0[] = {
+ 1,
+ 0,
+ 2,
+};
+
+static const char _vq_lengthlist__44c6_s_p1_0[] = {
+ 1, 5, 5, 0, 5, 5, 0, 5, 5, 5, 8, 7, 0, 9, 9, 0,
+ 9, 8, 5, 7, 8, 0, 9, 9, 0, 8, 9, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 5, 9, 8, 0, 8, 8, 0, 8, 8, 5, 8, 9,
+ 0, 8, 8, 0, 8, 8, 0, 0, 0, 0, 0, 0, 0, 0, 0, 5,
+ 9, 9, 0, 8, 8, 0, 8, 8, 5, 9, 9, 0, 8, 8, 0, 8,
+ 8,
+};
+static const static_codebook _44c6_s_p1_0 = {
+ 4, 81,
+ (char *)_vq_lengthlist__44c6_s_p1_0,
+ 1, -535822336, 1611661312, 2, 0,
+ (long *)_vq_quantlist__44c6_s_p1_0,
+ 0
+};
+
+static const long _vq_quantlist__44c6_s_p2_0[] = {
+ 2,
+ 1,
+ 3,
+ 0,
+ 4,
+};
+
+static const char _vq_lengthlist__44c6_s_p2_0[] = {
+ 3, 5, 5, 8, 8, 0, 5, 5, 8, 8, 0, 5, 5, 8, 8, 0,
+ 7, 7, 9, 9, 0, 0, 0, 9, 9, 5, 7, 7, 9, 9, 0, 8,
+ 8,10,10, 0, 8, 7,10, 9, 0,10,10,11,11, 0, 0, 0,
+ 11,11, 5, 7, 7, 9, 9, 0, 8, 8,10,10, 0, 7, 8, 9,
+ 10, 0,10,10,11,11, 0, 0, 0,11,11, 8, 9, 9,11,11,
+ 0,11,11,12,12, 0,11,10,12,12, 0,13,14,14,14, 0,
+ 0, 0,14,13, 8, 9, 9,11,11, 0,11,11,12,12, 0,10,
+ 11,12,12, 0,14,13,14,14, 0, 0, 0,13,14, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 5, 8, 7,11,10, 0, 7, 7,10,10,
+ 0, 7, 7,10,10, 0, 9, 9,11,10, 0, 0, 0,11,11, 5,
+ 7, 8,10,11, 0, 7, 7,10,10, 0, 7, 7,10,10, 0, 9,
+ 9,10,11, 0, 0, 0,11,11, 8,10, 9,12,12, 0,10,10,
+ 12,12, 0,10,10,12,12, 0,12,12,13,13, 0, 0, 0,13,
+ 13, 8, 9,10,12,12, 0,10,10,11,12, 0,10,10,12,12,
+ 0,12,12,13,13, 0, 0, 0,13,13, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 5, 8, 8,11,11, 0, 7, 7,10,10, 0, 7, 7,
+ 10,10, 0, 9, 9,10,11, 0, 0, 0,11,10, 5, 8, 8,11,
+ 11, 0, 7, 7,10,10, 0, 7, 7,10,10, 0, 9, 9,11,11,
+ 0, 0, 0,10,11, 8,10,10,12,12, 0,10,10,12,12, 0,
+ 10,10,12,12, 0,12,13,13,13, 0, 0, 0,14,13, 8,10,
+ 10,12,12, 0,10,10,12,12, 0,10,10,12,12, 0,13,12,
+ 13,13, 0, 0, 0,13,13, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 7,10,10,14,13, 0, 9, 9,13,12, 0, 9, 9,12,12, 0,
+ 10,10,12,12, 0, 0, 0,12,12, 7,10,10,13,14, 0, 9,
+ 9,12,13, 0, 9, 9,12,12, 0,10,10,12,12, 0, 0, 0,
+ 12,12, 9,11,11,14,13, 0,11,10,14,13, 0,11,11,13,
+ 13, 0,12,12,13,13, 0, 0, 0,13,13, 9,11,11,13,14,
+ 0,10,11,13,14, 0,11,11,13,13, 0,12,12,13,13, 0,
+ 0, 0,13,13, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 9,
+ 11,11,14,14, 0,11,11,13,13, 0,11,10,13,13, 0,12,
+ 12,13,13, 0, 0, 0,13,13, 9,11,11,14,14, 0,11,11,
+ 13,13, 0,10,11,13,13, 0,12,12,14,13, 0, 0, 0,13,
+ 13,
+};
+
+static const static_codebook _44c6_s_p2_0 = {
+ 4, 625,
+ (char *)_vq_lengthlist__44c6_s_p2_0,
+ 1, -533725184, 1611661312, 3, 0,
+ (long *)_vq_quantlist__44c6_s_p2_0,
+ 0
+};
+
+static const long _vq_quantlist__44c6_s_p3_0[] = {
+ 4,
+ 3,
+ 5,
+ 2,
+ 6,
+ 1,
+ 7,
+ 0,
+ 8,
+};
+
+static const char _vq_lengthlist__44c6_s_p3_0[] = {
+ 2, 3, 4, 6, 6, 7, 7, 9, 9, 0, 4, 4, 6, 6, 7, 7,
+ 9,10, 0, 4, 4, 6, 6, 7, 7,10, 9, 0, 5, 5, 7, 7,
+ 8, 8,10,10, 0, 0, 0, 7, 6, 8, 8,10,10, 0, 0, 0,
+ 7, 7, 9, 9,11,11, 0, 0, 0, 7, 7, 9, 9,11,11, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0,
+};
+
+static const static_codebook _44c6_s_p3_0 = {
+ 2, 81,
+ (char *)_vq_lengthlist__44c6_s_p3_0,
+ 1, -531628032, 1611661312, 4, 0,
+ (long *)_vq_quantlist__44c6_s_p3_0,
+ 0
+};
+
+static const long _vq_quantlist__44c6_s_p4_0[] = {
+ 8,
+ 7,
+ 9,
+ 6,
+ 10,
+ 5,
+ 11,
+ 4,
+ 12,
+ 3,
+ 13,
+ 2,
+ 14,
+ 1,
+ 15,
+ 0,
+ 16,
+};
+
+static const char _vq_lengthlist__44c6_s_p4_0[] = {
+ 2, 4, 4, 6, 6, 7, 7, 8, 8, 8, 8, 9, 9, 9,10,10,
+ 10, 0, 4, 4, 6, 6, 8, 8, 9, 9, 9, 9,10,10,10,10,
+ 11,11, 0, 4, 4, 6, 6, 8, 8, 9, 9, 9, 9,10,10,10,
+ 10,11,11, 0, 6, 6, 7, 7, 8, 8, 9, 9, 9, 9,10,10,
+ 11,11,11,11, 0, 0, 0, 7, 7, 8, 8, 9, 9, 9, 9,10,
+ 10,11,11,11,11, 0, 0, 0, 7, 7, 9, 9,10,10,10,10,
+ 11,11,11,11,12,12, 0, 0, 0, 7, 7, 9, 9,10,10,10,
+ 10,11,11,11,11,12,12, 0, 0, 0, 7, 7, 8, 8, 9, 9,
+ 10,10,11,11,12,12,12,12, 0, 0, 0, 0, 0, 8, 8, 9,
+ 9,10,10,11,11,12,12,12,12, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0,
+};
+
+static const static_codebook _44c6_s_p4_0 = {
+ 2, 289,
+ (char *)_vq_lengthlist__44c6_s_p4_0,
+ 1, -529530880, 1611661312, 5, 0,
+ (long *)_vq_quantlist__44c6_s_p4_0,
+ 0
+};
+
+static const long _vq_quantlist__44c6_s_p5_0[] = {
+ 1,
+ 0,
+ 2,
+};
+
+static const char _vq_lengthlist__44c6_s_p5_0[] = {
+ 1, 4, 4, 5, 7, 7, 6, 7, 7, 4, 6, 6, 9, 9,10,10,
+ 10, 9, 4, 6, 6, 9,10, 9,10, 9,10, 6, 9, 9,10,12,
+ 11,10,11,11, 7,10, 9,11,12,12,12,12,12, 7,10,10,
+ 11,12,12,12,12,12, 6,10,10,10,12,12,11,12,12, 7,
+ 9,10,11,12,12,12,12,12, 7,10, 9,12,12,12,12,12,
+ 12,
+};
+
+static const static_codebook _44c6_s_p5_0 = {
+ 4, 81,
+ (char *)_vq_lengthlist__44c6_s_p5_0,
+ 1, -529137664, 1618345984, 2, 0,
+ (long *)_vq_quantlist__44c6_s_p5_0,
+ 0
+};
+
+static const long _vq_quantlist__44c6_s_p5_1[] = {
+ 5,
+ 4,
+ 6,
+ 3,
+ 7,
+ 2,
+ 8,
+ 1,
+ 9,
+ 0,
+ 10,
+};
+
+static const char _vq_lengthlist__44c6_s_p5_1[] = {
+ 3, 5, 4, 6, 6, 7, 7, 8, 8, 8, 8,11, 4, 4, 6, 6,
+ 7, 7, 8, 8, 8, 8,11, 4, 4, 6, 6, 7, 7, 8, 8, 8,
+ 8,11, 6, 6, 6, 6, 8, 8, 8, 8, 9, 9,11,11,11, 6,
+ 6, 7, 8, 8, 8, 8, 9,11,11,11, 7, 7, 8, 8, 8, 8,
+ 8, 8,11,11,11, 7, 7, 8, 8, 8, 8, 8, 8,11,11,11,
+ 8, 8, 8, 8, 8, 8, 8, 8,11,11,11,10,10, 8, 8, 8,
+ 8, 8, 8,11,11,11,10,10, 8, 8, 8, 8, 8, 8,11,11,
+ 11,10,10, 7, 7, 8, 8, 8, 8,
+};
+
+static const static_codebook _44c6_s_p5_1 = {
+ 2, 121,
+ (char *)_vq_lengthlist__44c6_s_p5_1,
+ 1, -531365888, 1611661312, 4, 0,
+ (long *)_vq_quantlist__44c6_s_p5_1,
+ 0
+};
+
+static const long _vq_quantlist__44c6_s_p6_0[] = {
+ 6,
+ 5,
+ 7,
+ 4,
+ 8,
+ 3,
+ 9,
+ 2,
+ 10,
+ 1,
+ 11,
+ 0,
+ 12,
+};
+
+static const char _vq_lengthlist__44c6_s_p6_0[] = {
+ 1, 4, 4, 6, 6, 8, 8, 8, 8,10, 9,10,10, 6, 5, 5,
+ 7, 7, 9, 9, 9, 9,10,10,11,11, 6, 5, 5, 7, 7, 9,
+ 9,10, 9,11,10,11,11, 0, 6, 6, 7, 7, 9, 9,10,10,
+ 11,11,12,12, 0, 7, 7, 7, 7, 9, 9,10,10,11,11,12,
+ 12, 0,11,11, 8, 8,10,10,11,11,12,12,12,12, 0,11,
+ 12, 9, 8,10,10,11,11,12,12,13,13, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0,
+};
+
+static const static_codebook _44c6_s_p6_0 = {
+ 2, 169,
+ (char *)_vq_lengthlist__44c6_s_p6_0,
+ 1, -526516224, 1616117760, 4, 0,
+ (long *)_vq_quantlist__44c6_s_p6_0,
+ 0
+};
+
+static const long _vq_quantlist__44c6_s_p6_1[] = {
+ 2,
+ 1,
+ 3,
+ 0,
+ 4,
+};
+
+static const char _vq_lengthlist__44c6_s_p6_1[] = {
+ 3, 4, 4, 5, 5, 5, 4, 4, 5, 5, 5, 4, 4, 5, 5, 6,
+ 5, 5, 5, 5, 6, 6, 6, 5, 5,
+};
+
+static const static_codebook _44c6_s_p6_1 = {
+ 2, 25,
+ (char *)_vq_lengthlist__44c6_s_p6_1,
+ 1, -533725184, 1611661312, 3, 0,
+ (long *)_vq_quantlist__44c6_s_p6_1,
+ 0
+};
+
+static const long _vq_quantlist__44c6_s_p7_0[] = {
+ 6,
+ 5,
+ 7,
+ 4,
+ 8,
+ 3,
+ 9,
+ 2,
+ 10,
+ 1,
+ 11,
+ 0,
+ 12,
+};
+
+static const char _vq_lengthlist__44c6_s_p7_0[] = {
+ 1, 4, 4, 6, 6, 8, 8, 8, 8,10,10,11,10, 6, 5, 5,
+ 7, 7, 8, 8, 9, 9,10,10,12,11, 6, 5, 5, 7, 7, 8,
+ 8, 9, 9,10,10,12,11,21, 7, 7, 7, 7, 9, 9,10,10,
+ 11,11,12,12,21, 7, 7, 7, 7, 9, 9,10,10,11,11,12,
+ 12,21,12,12, 9, 9,10,10,11,11,11,11,12,12,21,12,
+ 12, 9, 9,10,10,11,11,12,12,12,12,21,21,21,11,11,
+ 10,10,11,12,12,12,13,13,21,21,21,11,11,10,10,12,
+ 12,12,12,13,13,21,21,21,15,15,11,11,12,12,13,13,
+ 13,13,21,21,21,15,16,11,11,12,12,13,13,14,14,21,
+ 21,21,21,20,13,13,13,13,13,13,14,14,20,20,20,20,
+ 20,13,13,13,13,13,13,14,14,
+};
+
+static const static_codebook _44c6_s_p7_0 = {
+ 2, 169,
+ (char *)_vq_lengthlist__44c6_s_p7_0,
+ 1, -523206656, 1618345984, 4, 0,
+ (long *)_vq_quantlist__44c6_s_p7_0,
+ 0
+};
+
+static const long _vq_quantlist__44c6_s_p7_1[] = {
+ 5,
+ 4,
+ 6,
+ 3,
+ 7,
+ 2,
+ 8,
+ 1,
+ 9,
+ 0,
+ 10,
+};
+
+static const char _vq_lengthlist__44c6_s_p7_1[] = {
+ 3, 5, 5, 6, 6, 7, 7, 7, 7, 7, 7, 9, 5, 5, 6, 6,
+ 7, 7, 7, 7, 8, 7, 8, 5, 5, 6, 6, 7, 7, 7, 7, 7,
+ 7, 9, 6, 6, 7, 7, 7, 7, 8, 7, 7, 8, 9, 9, 9, 7,
+ 7, 7, 7, 7, 7, 7, 8, 9, 9, 9, 7, 7, 7, 7, 8, 8,
+ 8, 8, 9, 9, 9, 7, 7, 7, 7, 7, 7, 8, 8, 9, 9, 9,
+ 8, 8, 8, 8, 7, 7, 8, 8, 9, 9, 9, 9, 8, 8, 8, 7,
+ 7, 8, 8, 9, 9, 9, 8, 8, 8, 8, 7, 7, 8, 8, 9, 9,
+ 9, 8, 8, 7, 7, 7, 7, 8, 8,
+};
+
+static const static_codebook _44c6_s_p7_1 = {
+ 2, 121,
+ (char *)_vq_lengthlist__44c6_s_p7_1,
+ 1, -531365888, 1611661312, 4, 0,
+ (long *)_vq_quantlist__44c6_s_p7_1,
+ 0
+};
+
+static const long _vq_quantlist__44c6_s_p8_0[] = {
+ 7,
+ 6,
+ 8,
+ 5,
+ 9,
+ 4,
+ 10,
+ 3,
+ 11,
+ 2,
+ 12,
+ 1,
+ 13,
+ 0,
+ 14,
+};
+
+static const char _vq_lengthlist__44c6_s_p8_0[] = {
+ 1, 4, 4, 7, 7, 8, 8, 7, 7, 8, 7, 9, 8,10, 9, 6,
+ 5, 5, 8, 8, 9, 9, 8, 8, 9, 9,11,10,11,10, 6, 5,
+ 5, 8, 8, 9, 9, 8, 8, 9, 9,10,10,11,11,18, 8, 8,
+ 9, 8,10,10, 9, 9,10,10,10,10,11,10,18, 8, 8, 9,
+ 9,10,10, 9, 9,10,10,11,11,12,12,18,12,13, 9,10,
+ 10,10, 9,10,10,10,11,11,12,11,18,13,13, 9, 9,10,
+ 10,10,10,10,10,11,11,12,12,18,18,18,10,10, 9, 9,
+ 11,11,11,11,11,12,12,12,18,18,18,10, 9,10, 9,11,
+ 10,11,11,11,11,13,12,18,18,18,14,13,10,10,11,11,
+ 12,12,12,12,12,12,18,18,18,14,13,10,10,11,10,12,
+ 12,12,12,12,12,18,18,18,18,18,12,12,11,11,12,12,
+ 13,13,13,14,18,18,18,18,18,12,12,11,11,12,11,13,
+ 13,14,13,18,18,18,18,18,16,16,11,12,12,13,13,13,
+ 14,13,18,18,18,18,18,16,15,12,11,12,11,13,11,15,
+ 14,
+};
+
+static const static_codebook _44c6_s_p8_0 = {
+ 2, 225,
+ (char *)_vq_lengthlist__44c6_s_p8_0,
+ 1, -520986624, 1620377600, 4, 0,
+ (long *)_vq_quantlist__44c6_s_p8_0,
+ 0
+};
+
+static const long _vq_quantlist__44c6_s_p8_1[] = {
+ 10,
+ 9,
+ 11,
+ 8,
+ 12,
+ 7,
+ 13,
+ 6,
+ 14,
+ 5,
+ 15,
+ 4,
+ 16,
+ 3,
+ 17,
+ 2,
+ 18,
+ 1,
+ 19,
+ 0,
+ 20,
+};
+
+static const char _vq_lengthlist__44c6_s_p8_1[] = {
+ 3, 5, 5, 6, 6, 7, 7, 7, 7, 8, 7, 8, 8, 8, 8, 8,
+ 8, 8, 8, 8, 8,10, 6, 6, 7, 7, 8, 8, 8, 8, 8, 8,
+ 9, 9, 9, 9, 9, 9, 9, 9, 9, 9,10, 6, 6, 7, 7, 8,
+ 8, 8, 8, 8, 8, 9, 8, 9, 9, 9, 9, 9, 9, 9, 9,10,
+ 7, 7, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9, 9,
+ 9, 9, 9, 9,10,11,11, 8, 7, 8, 8, 8, 9, 9, 9, 9,
+ 9, 9, 9, 9, 9, 9, 9, 9, 9,11,11,11, 8, 8, 8, 8,
+ 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9,11,11,
+ 11, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9,
+ 9, 9, 9,11,11,11, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9,
+ 9, 9, 9, 9, 9, 9, 9, 9,11,11,11,11,11, 9, 9, 9,
+ 9, 9, 9, 9, 9, 9, 9, 9, 9, 9,10,10, 9,11,11,11,
+ 11,11, 9, 9, 9, 9, 9, 9,10, 9, 9,10, 9,10, 9, 9,
+ 10, 9,11,11,11,11,11, 9, 9, 9, 9, 9, 9, 9,10,10,
+ 10,10, 9,10,10, 9,10,11,11,11,11,11, 9, 9, 9, 9,
+ 10,10,10, 9,10,10,10,10, 9,10,10, 9,11,11,11,11,
+ 11,11,11, 9, 9, 9, 9,10,10,10,10, 9,10,10,10,10,
+ 10,11,11,11,11,11,11,11,10, 9,10,10,10,10,10,10,
+ 10, 9,10, 9,10,10,11,11,11,11,11,11,11,10, 9,10,
+ 9,10,10, 9,10,10,10,10,10,10,10,11,11,11,11,11,
+ 11,11,10,10,10,10,10,10,10, 9,10,10,10,10,10, 9,
+ 11,11,11,11,11,11,11,11,11,10,10,10,10,10,10,10,
+ 10,10,10,10,10,11,11,11,11,11,11,11,11,11,10,10,
+ 10,10,10,10,10,10,10,10,10,10,11,11,11,11,11,11,
+ 11,11,11,10,10,10,10,10,10,10,10,10, 9,10,10,11,
+ 11,11,11,11,11,11,11,11,10,10,10, 9,10,10,10,10,
+ 10,10,10,10,10,11,11,11,11,11,11,11,11,10,11, 9,
+ 10,10,10,10,10,10,10,10,10,
+};
+
+static const static_codebook _44c6_s_p8_1 = {
+ 2, 441,
+ (char *)_vq_lengthlist__44c6_s_p8_1,
+ 1, -529268736, 1611661312, 5, 0,
+ (long *)_vq_quantlist__44c6_s_p8_1,
+ 0
+};
+
+static const long _vq_quantlist__44c6_s_p9_0[] = {
+ 6,
+ 5,
+ 7,
+ 4,
+ 8,
+ 3,
+ 9,
+ 2,
+ 10,
+ 1,
+ 11,
+ 0,
+ 12,
+};
+
+static const char _vq_lengthlist__44c6_s_p9_0[] = {
+ 1, 3, 3,11,11,11,11,11,11,11,11,11,11, 4, 7, 7,
+ 11,11,11,11,11,11,11,11,11,11, 5, 8, 9,11,11,11,
+ 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
+ 11,11,11,11,11,10,10,10,10,10,10,10,10,10,10,10,
+ 10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,
+ 10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,
+ 10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,
+ 10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,
+ 10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,
+ 10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,
+ 10,10,10,10,10,10,10,10,10,
+};
+
+static const static_codebook _44c6_s_p9_0 = {
+ 2, 169,
+ (char *)_vq_lengthlist__44c6_s_p9_0,
+ 1, -511845376, 1630791680, 4, 0,
+ (long *)_vq_quantlist__44c6_s_p9_0,
+ 0
+};
+
+static const long _vq_quantlist__44c6_s_p9_1[] = {
+ 6,
+ 5,
+ 7,
+ 4,
+ 8,
+ 3,
+ 9,
+ 2,
+ 10,
+ 1,
+ 11,
+ 0,
+ 12,
+};
+
+static const char _vq_lengthlist__44c6_s_p9_1[] = {
+ 1, 4, 4, 7, 7, 7, 7, 7, 6, 8, 8, 8, 8, 6, 6, 6,
+ 8, 8, 8, 8, 8, 7, 9, 8,10,10, 5, 6, 6, 8, 8, 9,
+ 9, 8, 8,10,10,10,10,16, 9, 9, 9, 9, 9, 9, 9, 8,
+ 10, 9,11,11,16, 8, 9, 9, 9, 9, 9, 9, 9,10,10,11,
+ 11,16,13,13, 9, 9,10, 9, 9,10,11,11,11,12,16,13,
+ 14, 9, 8,10, 8, 9, 9,10,10,12,11,16,14,16, 9, 9,
+ 9, 9,11,11,12,11,12,11,16,16,16, 9, 7, 9, 6,11,
+ 11,11,10,11,11,16,16,16,11,12, 9,10,11,11,12,11,
+ 13,13,16,16,16,12,11,10, 7,12,10,12,12,12,12,16,
+ 16,15,16,16,10,11,10,11,13,13,14,12,16,16,16,15,
+ 15,12,10,11,11,13,11,12,13,
+};
+
+static const static_codebook _44c6_s_p9_1 = {
+ 2, 169,
+ (char *)_vq_lengthlist__44c6_s_p9_1,
+ 1, -518889472, 1622704128, 4, 0,
+ (long *)_vq_quantlist__44c6_s_p9_1,
+ 0
+};
+
+static const long _vq_quantlist__44c6_s_p9_2[] = {
+ 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 const char _vq_lengthlist__44c6_s_p9_2[] = {
+ 2, 4, 3, 4, 5, 5, 5, 6, 6, 6, 6, 6, 6, 6, 6, 6,
+ 6, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7,
+ 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7,
+ 7,
+};
+
+static const static_codebook _44c6_s_p9_2 = {
+ 1, 49,
+ (char *)_vq_lengthlist__44c6_s_p9_2,
+ 1, -526909440, 1611661312, 6, 0,
+ (long *)_vq_quantlist__44c6_s_p9_2,
+ 0
+};
+
+static const char _huff_lengthlist__44c6_s_short[] = {
+ 3, 9,11,11,13,14,19,17,17,19, 5, 4, 5, 8,10,10,
+ 13,16,18,19, 7, 4, 4, 5, 8, 9,12,14,17,19, 8, 6,
+ 5, 5, 7, 7,10,13,16,18,10, 8, 7, 6, 5, 5, 8,11,
+ 17,19,11, 9, 7, 7, 5, 4, 5, 8,17,19,13,11, 8, 7,
+ 7, 5, 5, 7,16,18,14,13, 8, 6, 6, 5, 5, 7,16,18,
+ 18,16,10, 8, 8, 7, 7, 9,16,18,18,18,12,10,10, 9,
+ 9,10,17,18,
+};
+
+static const static_codebook _huff_book__44c6_s_short = {
+ 2, 100,
+ (char *)_huff_lengthlist__44c6_s_short,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
+static const char _huff_lengthlist__44c7_s_long[] = {
+ 3, 8,11,13,15,14,14,13,15,14, 6, 4, 5, 7, 9,10,
+ 11,11,14,13,10, 4, 3, 5, 7, 8, 9,10,13,13,12, 7,
+ 4, 4, 5, 6, 8, 9,12,14,13, 9, 6, 5, 5, 6, 8, 9,
+ 12,14,12, 9, 7, 6, 5, 5, 6, 8,11,11,12,11, 9, 8,
+ 7, 6, 6, 7,10,11,13,11,10, 9, 8, 7, 6, 6, 9,11,
+ 13,13,12,12,12,10, 9, 8, 9,11,12,14,15,15,14,12,
+ 11,10,10,12,
+};
+
+static const static_codebook _huff_book__44c7_s_long = {
+ 2, 100,
+ (char *)_huff_lengthlist__44c7_s_long,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
+static const long _vq_quantlist__44c7_s_p1_0[] = {
+ 1,
+ 0,
+ 2,
+};
+
+static const char _vq_lengthlist__44c7_s_p1_0[] = {
+ 1, 5, 5, 0, 5, 5, 0, 5, 5, 5, 8, 7, 0, 9, 9, 0,
+ 9, 8, 5, 7, 8, 0, 9, 9, 0, 8, 9, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 5, 9, 9, 0, 8, 8, 0, 8, 8, 5, 8, 9,
+ 0, 8, 8, 0, 8, 8, 0, 0, 0, 0, 0, 0, 0, 0, 0, 5,
+ 9, 9, 0, 8, 8, 0, 8, 8, 5, 8, 9, 0, 8, 8, 0, 8,
+ 8,
+};
+
+static const static_codebook _44c7_s_p1_0 = {
+ 4, 81,
+ (char *)_vq_lengthlist__44c7_s_p1_0,
+ 1, -535822336, 1611661312, 2, 0,
+ (long *)_vq_quantlist__44c7_s_p1_0,
+ 0
+};
+
+static const long _vq_quantlist__44c7_s_p2_0[] = {
+ 2,
+ 1,
+ 3,
+ 0,
+ 4,
+};
+
+static const char _vq_lengthlist__44c7_s_p2_0[] = {
+ 3, 5, 5, 8, 8, 0, 5, 5, 8, 8, 0, 5, 5, 8, 8, 0,
+ 7, 7, 9, 9, 0, 0, 0, 9, 9, 5, 7, 7, 9, 9, 0, 8,
+ 8,10,10, 0, 8, 7,10, 9, 0,10,10,11,11, 0, 0, 0,
+ 11,11, 5, 7, 7, 9, 9, 0, 8, 8,10,10, 0, 7, 8, 9,
+ 10, 0,10,10,11,11, 0, 0, 0,11,11, 8, 9, 9,11,10,
+ 0,11,11,12,12, 0,11,10,12,12, 0,13,14,14,14, 0,
+ 0, 0,14,13, 8, 9, 9,10,11, 0,11,11,12,12, 0,10,
+ 11,12,12, 0,13,13,14,14, 0, 0, 0,13,14, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 5, 8, 7,11,10, 0, 7, 7,10,10,
+ 0, 7, 7,10,10, 0, 9, 9,11,10, 0, 0, 0,11,11, 5,
+ 7, 8,10,11, 0, 7, 7,10,10, 0, 7, 7,10,10, 0, 9,
+ 9,10,11, 0, 0, 0,11,11, 8,10, 9,12,12, 0,10,10,
+ 12,12, 0,10,10,12,12, 0,12,12,13,13, 0, 0, 0,13,
+ 13, 8, 9,10,12,12, 0,10,10,12,12, 0,10,10,11,12,
+ 0,12,12,13,13, 0, 0, 0,13,13, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 5, 8, 8,11,11, 0, 7, 7,10,10, 0, 7, 7,
+ 10,10, 0, 9, 9,10,11, 0, 0, 0,11,10, 5, 8, 8,10,
+ 11, 0, 7, 7,10,10, 0, 7, 7,10,10, 0, 9, 9,11,10,
+ 0, 0, 0,10,11, 9,10,10,12,12, 0,10,10,12,12, 0,
+ 10,10,12,12, 0,12,13,13,13, 0, 0, 0,13,12, 9,10,
+ 10,12,12, 0,10,10,12,12, 0,10,10,12,12, 0,13,12,
+ 13,13, 0, 0, 0,12,13, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 7,10,10,14,13, 0, 9, 9,12,12, 0, 9, 9,12,12, 0,
+ 10,10,12,12, 0, 0, 0,12,12, 7,10,10,13,14, 0, 9,
+ 9,12,13, 0, 9, 9,12,12, 0,10,10,12,12, 0, 0, 0,
+ 12,12, 9,11,11,14,13, 0,11,10,13,12, 0,11,11,13,
+ 13, 0,12,12,13,13, 0, 0, 0,13,13, 9,11,11,13,14,
+ 0,10,11,12,13, 0,11,11,13,13, 0,12,12,13,13, 0,
+ 0, 0,13,13, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 9,
+ 11,11,14,14, 0,10,11,13,13, 0,11,10,13,13, 0,12,
+ 12,13,13, 0, 0, 0,13,12, 9,11,11,14,14, 0,11,10,
+ 13,13, 0,10,11,13,13, 0,12,12,14,13, 0, 0, 0,13,
+ 13,
+};
+
+static const static_codebook _44c7_s_p2_0 = {
+ 4, 625,
+ (char *)_vq_lengthlist__44c7_s_p2_0,
+ 1, -533725184, 1611661312, 3, 0,
+ (long *)_vq_quantlist__44c7_s_p2_0,
+ 0
+};
+
+static const long _vq_quantlist__44c7_s_p3_0[] = {
+ 4,
+ 3,
+ 5,
+ 2,
+ 6,
+ 1,
+ 7,
+ 0,
+ 8,
+};
+
+static const char _vq_lengthlist__44c7_s_p3_0[] = {
+ 2, 4, 4, 5, 5, 7, 7, 9, 9, 0, 4, 4, 6, 6, 7, 7,
+ 9, 9, 0, 4, 4, 6, 6, 7, 7, 9, 9, 0, 5, 5, 6, 6,
+ 8, 8,10,10, 0, 0, 0, 6, 6, 8, 8,10,10, 0, 0, 0,
+ 7, 7, 9, 9,10,10, 0, 0, 0, 7, 7, 8, 8,10,10, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0,
+};
+
+static const static_codebook _44c7_s_p3_0 = {
+ 2, 81,
+ (char *)_vq_lengthlist__44c7_s_p3_0,
+ 1, -531628032, 1611661312, 4, 0,
+ (long *)_vq_quantlist__44c7_s_p3_0,
+ 0
+};
+
+static const long _vq_quantlist__44c7_s_p4_0[] = {
+ 8,
+ 7,
+ 9,
+ 6,
+ 10,
+ 5,
+ 11,
+ 4,
+ 12,
+ 3,
+ 13,
+ 2,
+ 14,
+ 1,
+ 15,
+ 0,
+ 16,
+};
+
+static const char _vq_lengthlist__44c7_s_p4_0[] = {
+ 3, 4, 4, 5, 5, 7, 7, 8, 8, 8, 8, 9, 9,10,10,11,
+ 11, 0, 4, 4, 6, 6, 7, 7, 8, 8, 9, 9,10,10,11,11,
+ 12,12, 0, 4, 4, 6, 6, 7, 7, 8, 8, 9, 9,10,10,11,
+ 11,12,12, 0, 5, 5, 6, 6, 8, 8, 9, 9, 9, 9,10,10,
+ 11,12,12,12, 0, 0, 0, 6, 6, 8, 7, 9, 9, 9, 9,10,
+ 10,11,11,12,12, 0, 0, 0, 7, 7, 8, 8, 9, 9,10,10,
+ 11,11,12,12,13,12, 0, 0, 0, 7, 7, 8, 8, 9, 9,10,
+ 10,11,11,12,12,12,13, 0, 0, 0, 7, 7, 8, 8, 9, 9,
+ 10,10,11,11,12,12,13,13, 0, 0, 0, 0, 0, 8, 8, 9,
+ 9,10,10,11,11,12,12,13,13, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0,
+};
+
+static const static_codebook _44c7_s_p4_0 = {
+ 2, 289,
+ (char *)_vq_lengthlist__44c7_s_p4_0,
+ 1, -529530880, 1611661312, 5, 0,
+ (long *)_vq_quantlist__44c7_s_p4_0,
+ 0
+};
+
+static const long _vq_quantlist__44c7_s_p5_0[] = {
+ 1,
+ 0,
+ 2,
+};
+
+static const char _vq_lengthlist__44c7_s_p5_0[] = {
+ 1, 4, 4, 5, 7, 7, 6, 7, 7, 4, 6, 7,10,10,10,10,
+ 10, 9, 4, 6, 6,10,10,10,10, 9,10, 5,10,10, 9,11,
+ 12,10,11,12, 7,10,10,11,12,12,12,12,12, 7,10,10,
+ 11,12,12,12,12,12, 6,10,10,10,12,12,11,12,12, 7,
+ 10,10,12,12,12,12,11,12, 7,10,10,11,12,12,12,12,
+ 12,
+};
+
+static const static_codebook _44c7_s_p5_0 = {
+ 4, 81,
+ (char *)_vq_lengthlist__44c7_s_p5_0,
+ 1, -529137664, 1618345984, 2, 0,
+ (long *)_vq_quantlist__44c7_s_p5_0,
+ 0
+};
+
+static const long _vq_quantlist__44c7_s_p5_1[] = {
+ 5,
+ 4,
+ 6,
+ 3,
+ 7,
+ 2,
+ 8,
+ 1,
+ 9,
+ 0,
+ 10,
+};
+
+static const char _vq_lengthlist__44c7_s_p5_1[] = {
+ 3, 5, 5, 6, 6, 7, 7, 8, 8, 8, 8,11, 4, 4, 6, 6,
+ 7, 7, 8, 8, 9, 9,11, 4, 4, 6, 6, 7, 7, 8, 8, 9,
+ 9,12, 5, 5, 6, 6, 7, 7, 9, 9, 9, 9,12,12,12, 6,
+ 6, 7, 7, 9, 9, 9, 9,11,11,11, 7, 7, 7, 7, 8, 8,
+ 9, 9,11,11,11, 7, 7, 7, 7, 8, 8, 9, 9,11,11,11,
+ 7, 7, 8, 8, 8, 8, 9, 9,11,11,11,11,11, 8, 8, 8,
+ 8, 8, 9,11,11,11,11,11, 8, 8, 8, 8, 8, 8,11,11,
+ 11,11,11, 7, 7, 8, 8, 8, 8,
+};
+
+static const static_codebook _44c7_s_p5_1 = {
+ 2, 121,
+ (char *)_vq_lengthlist__44c7_s_p5_1,
+ 1, -531365888, 1611661312, 4, 0,
+ (long *)_vq_quantlist__44c7_s_p5_1,
+ 0
+};
+
+static const long _vq_quantlist__44c7_s_p6_0[] = {
+ 6,
+ 5,
+ 7,
+ 4,
+ 8,
+ 3,
+ 9,
+ 2,
+ 10,
+ 1,
+ 11,
+ 0,
+ 12,
+};
+
+static const char _vq_lengthlist__44c7_s_p6_0[] = {
+ 1, 4, 4, 6, 6, 7, 7, 8, 7, 9, 8,10,10, 6, 5, 5,
+ 7, 7, 8, 8, 9, 9, 9,10,11,11, 7, 5, 5, 7, 7, 8,
+ 8, 9, 9,10,10,11,11, 0, 7, 7, 7, 7, 9, 8, 9, 9,
+ 10,10,11,11, 0, 8, 8, 7, 7, 8, 9, 9, 9,10,10,11,
+ 11, 0,11,11, 9, 9,10,10,11,10,11,11,12,12, 0,12,
+ 12, 9, 9,10,10,11,11,11,11,12,12, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0,
+};
+
+static const static_codebook _44c7_s_p6_0 = {
+ 2, 169,
+ (char *)_vq_lengthlist__44c7_s_p6_0,
+ 1, -526516224, 1616117760, 4, 0,
+ (long *)_vq_quantlist__44c7_s_p6_0,
+ 0
+};
+
+static const long _vq_quantlist__44c7_s_p6_1[] = {
+ 2,
+ 1,
+ 3,
+ 0,
+ 4,
+};
+
+static const char _vq_lengthlist__44c7_s_p6_1[] = {
+ 3, 4, 4, 5, 5, 5, 4, 4, 5, 5, 5, 4, 4, 5, 5, 6,
+ 5, 5, 5, 5, 6, 6, 6, 5, 5,
+};
+
+static const static_codebook _44c7_s_p6_1 = {
+ 2, 25,
+ (char *)_vq_lengthlist__44c7_s_p6_1,
+ 1, -533725184, 1611661312, 3, 0,
+ (long *)_vq_quantlist__44c7_s_p6_1,
+ 0
+};
+
+static const long _vq_quantlist__44c7_s_p7_0[] = {
+ 6,
+ 5,
+ 7,
+ 4,
+ 8,
+ 3,
+ 9,
+ 2,
+ 10,
+ 1,
+ 11,
+ 0,
+ 12,
+};
+
+static const char _vq_lengthlist__44c7_s_p7_0[] = {
+ 1, 4, 4, 6, 6, 7, 8, 9, 9,10,10,12,11, 6, 5, 5,
+ 7, 7, 8, 8, 9,10,11,11,12,12, 7, 5, 5, 7, 7, 8,
+ 8,10,10,11,11,12,12,20, 7, 7, 7, 7, 8, 9,10,10,
+ 11,11,12,13,20, 7, 7, 7, 7, 9, 9,10,10,11,12,13,
+ 13,20,11,11, 8, 8, 9, 9,11,11,12,12,13,13,20,11,
+ 11, 8, 8, 9, 9,11,11,12,12,13,13,20,20,20,10,10,
+ 10,10,12,12,13,13,13,13,20,20,20,10,10,10,10,12,
+ 12,13,13,13,14,20,20,20,14,14,11,11,12,12,13,13,
+ 14,14,20,20,20,14,14,11,11,12,12,13,13,14,14,20,
+ 20,20,20,19,13,13,13,13,14,14,15,14,19,19,19,19,
+ 19,13,13,13,13,14,14,15,15,
+};
+
+static const static_codebook _44c7_s_p7_0 = {
+ 2, 169,
+ (char *)_vq_lengthlist__44c7_s_p7_0,
+ 1, -523206656, 1618345984, 4, 0,
+ (long *)_vq_quantlist__44c7_s_p7_0,
+ 0
+};
+
+static const long _vq_quantlist__44c7_s_p7_1[] = {
+ 5,
+ 4,
+ 6,
+ 3,
+ 7,
+ 2,
+ 8,
+ 1,
+ 9,
+ 0,
+ 10,
+};
+
+static const char _vq_lengthlist__44c7_s_p7_1[] = {
+ 4, 5, 5, 6, 6, 7, 7, 7, 7, 7, 7, 8, 6, 6, 7, 7,
+ 7, 7, 7, 7, 7, 7, 8, 6, 6, 6, 7, 7, 7, 7, 7, 7,
+ 7, 8, 6, 6, 7, 7, 7, 7, 7, 7, 7, 7, 8, 8, 8, 7,
+ 7, 7, 7, 7, 7, 7, 7, 8, 8, 8, 7, 7, 7, 7, 7, 7,
+ 7, 7, 8, 8, 8, 7, 7, 7, 7, 7, 7, 7, 7, 8, 8, 8,
+ 7, 7, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 7, 7, 7,
+ 7, 7, 7, 8, 8, 8, 8, 8, 7, 7, 7, 7, 7, 7, 8, 8,
+ 8, 8, 8, 7, 7, 7, 7, 7, 7,
+};
+
+static const static_codebook _44c7_s_p7_1 = {
+ 2, 121,
+ (char *)_vq_lengthlist__44c7_s_p7_1,
+ 1, -531365888, 1611661312, 4, 0,
+ (long *)_vq_quantlist__44c7_s_p7_1,
+ 0
+};
+
+static const long _vq_quantlist__44c7_s_p8_0[] = {
+ 7,
+ 6,
+ 8,
+ 5,
+ 9,
+ 4,
+ 10,
+ 3,
+ 11,
+ 2,
+ 12,
+ 1,
+ 13,
+ 0,
+ 14,
+};
+
+static const char _vq_lengthlist__44c7_s_p8_0[] = {
+ 1, 4, 4, 7, 7, 8, 8, 8, 7, 9, 8, 9, 9,10,10, 6,
+ 5, 5, 7, 7, 9, 9, 8, 8,10, 9,11,10,12,11, 6, 5,
+ 5, 8, 7, 9, 9, 8, 8,10,10,11,11,12,11,19, 8, 8,
+ 8, 8,10,10, 9, 9,10,10,11,11,12,11,19, 8, 8, 8,
+ 8,10,10, 9, 9,10,10,11,11,12,12,19,12,12, 9, 9,
+ 10,10, 9,10,10,10,11,11,12,12,19,12,12, 9, 9,10,
+ 10,10,10,10,10,12,12,12,12,19,19,19, 9, 9, 9, 9,
+ 11,10,11,11,12,11,13,13,19,19,19, 9, 9, 9, 9,11,
+ 10,11,11,11,12,13,13,19,19,19,13,13,10,10,11,11,
+ 12,12,12,12,13,12,19,19,19,14,13,10,10,11,11,12,
+ 12,12,13,13,13,19,19,19,19,19,12,12,12,11,12,13,
+ 14,13,13,13,19,19,19,19,19,12,12,12,11,12,12,13,
+ 14,13,14,19,19,19,19,19,16,16,12,13,12,13,13,14,
+ 15,14,19,18,18,18,18,16,15,12,11,12,11,14,12,14,
+ 14,
+};
+
+static const static_codebook _44c7_s_p8_0 = {
+ 2, 225,
+ (char *)_vq_lengthlist__44c7_s_p8_0,
+ 1, -520986624, 1620377600, 4, 0,
+ (long *)_vq_quantlist__44c7_s_p8_0,
+ 0
+};
+
+static const long _vq_quantlist__44c7_s_p8_1[] = {
+ 10,
+ 9,
+ 11,
+ 8,
+ 12,
+ 7,
+ 13,
+ 6,
+ 14,
+ 5,
+ 15,
+ 4,
+ 16,
+ 3,
+ 17,
+ 2,
+ 18,
+ 1,
+ 19,
+ 0,
+ 20,
+};
+
+static const char _vq_lengthlist__44c7_s_p8_1[] = {
+ 3, 5, 5, 7, 6, 7, 7, 8, 8, 8, 8, 8, 8, 8, 8, 8,
+ 8, 8, 8, 8, 8,10, 6, 6, 7, 7, 8, 8, 8, 8, 9, 9,
+ 9, 9, 9, 9, 9, 9, 9, 9, 9, 9,10, 6, 6, 7, 7, 8,
+ 8, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9,10,
+ 7, 7, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9,
+ 9, 9, 9, 9,10,10,10, 8, 8, 8, 8, 9, 9, 9, 9, 9,
+ 9, 9, 9, 9, 9, 9, 9, 9, 9,10,10,10, 8, 8, 8, 9,
+ 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9,10,10,
+ 10, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9,
+ 9, 9, 9,10,10,10, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9,
+ 9, 9, 9, 9, 9, 9, 9, 9,10,11,10,10,10, 9, 9, 9,
+ 9, 9, 9, 9, 9, 9, 9,10, 9, 9,10, 9, 9,10,11,10,
+ 11,10, 9, 9, 9, 9, 9, 9, 9,10,10,10, 9,10, 9, 9,
+ 9, 9,11,10,11,10,10, 9, 9, 9, 9, 9, 9,10, 9, 9,
+ 10, 9, 9,10, 9, 9,10,11,10,10,11,10, 9, 9, 9, 9,
+ 9,10,10, 9,10,10,10,10, 9,10,10,10,10,10,10,11,
+ 11,11,10, 9, 9, 9,10,10,10,10,10,10,10,10,10,10,
+ 10,10,10,11,11,10,10,10,10,10,10,10,10,10,10,10,
+ 10, 9,10,10, 9,10,11,11,10,11,10,11,10, 9,10,10,
+ 9,10,10,10,10,10,10,10,10,10,10,11,11,11,11,10,
+ 11,11,10,10,10,10,10,10, 9,10, 9,10,10, 9,10, 9,
+ 10,10,10,11,10,11,10,11,11,10,10,10,10,10,10, 9,
+ 10,10,10,10,10,10,10,11,10,10,10,10,10,10,10,10,
+ 10,10,10,10,10,10,10,10,10,10,10,10,10,11,10,11,
+ 11,10,10,10,10, 9, 9,10,10, 9, 9,10, 9,10,10,10,
+ 10,11,11,10,10,10,10,10,10,10, 9, 9,10,10,10, 9,
+ 9,10,10,10,10,10,11,10,11,10,10,10,10,10,10, 9,
+ 10,10,10,10,10,10,10,10,10,
+};
+
+static const static_codebook _44c7_s_p8_1 = {
+ 2, 441,
+ (char *)_vq_lengthlist__44c7_s_p8_1,
+ 1, -529268736, 1611661312, 5, 0,
+ (long *)_vq_quantlist__44c7_s_p8_1,
+ 0
+};
+
+static const long _vq_quantlist__44c7_s_p9_0[] = {
+ 6,
+ 5,
+ 7,
+ 4,
+ 8,
+ 3,
+ 9,
+ 2,
+ 10,
+ 1,
+ 11,
+ 0,
+ 12,
+};
+
+static const char _vq_lengthlist__44c7_s_p9_0[] = {
+ 1, 3, 3,11,11,11,11,11,11,11,11,11,11, 4, 6, 6,
+ 11,11,11,11,11,11,11,11,11,11, 4, 7, 7,11,11,11,
+ 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
+ 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
+ 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
+ 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
+ 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
+ 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
+ 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
+ 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
+ 11,11,11,11,11,11,11,11,11,
+};
+
+static const static_codebook _44c7_s_p9_0 = {
+ 2, 169,
+ (char *)_vq_lengthlist__44c7_s_p9_0,
+ 1, -511845376, 1630791680, 4, 0,
+ (long *)_vq_quantlist__44c7_s_p9_0,
+ 0
+};
+
+static const long _vq_quantlist__44c7_s_p9_1[] = {
+ 6,
+ 5,
+ 7,
+ 4,
+ 8,
+ 3,
+ 9,
+ 2,
+ 10,
+ 1,
+ 11,
+ 0,
+ 12,
+};
+
+static const char _vq_lengthlist__44c7_s_p9_1[] = {
+ 1, 4, 4, 7, 7, 7, 7, 7, 6, 8, 8, 8, 8, 6, 6, 6,
+ 8, 8, 9, 8, 8, 7, 9, 8,11,10, 5, 6, 6, 8, 8, 9,
+ 8, 8, 8,10, 9,11,11,16, 8, 8, 9, 8, 9, 9, 9, 8,
+ 10, 9,11,10,16, 8, 8, 9, 9,10,10, 9, 9,10,10,11,
+ 11,16,13,13, 9, 9,10,10, 9,10,11,11,12,11,16,13,
+ 13, 9, 8,10, 9,10,10,10,10,11,11,16,14,16, 8, 9,
+ 9, 9,11,10,11,11,12,11,16,16,16, 9, 7,10, 7,11,
+ 10,11,11,12,11,16,16,16,12,12, 9,10,11,11,12,11,
+ 12,12,16,16,16,12,10,10, 7,11, 8,12,11,12,12,16,
+ 16,15,16,16,11,12,10,10,12,11,12,12,16,16,16,15,
+ 15,11,11,10,10,12,12,12,12,
+};
+
+static const static_codebook _44c7_s_p9_1 = {
+ 2, 169,
+ (char *)_vq_lengthlist__44c7_s_p9_1,
+ 1, -518889472, 1622704128, 4, 0,
+ (long *)_vq_quantlist__44c7_s_p9_1,
+ 0
+};
+
+static const long _vq_quantlist__44c7_s_p9_2[] = {
+ 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 const char _vq_lengthlist__44c7_s_p9_2[] = {
+ 2, 4, 3, 4, 5, 5, 5, 6, 6, 6, 6, 6, 6, 6, 6, 6,
+ 6, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7,
+ 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7,
+ 7,
+};
+
+static const static_codebook _44c7_s_p9_2 = {
+ 1, 49,
+ (char *)_vq_lengthlist__44c7_s_p9_2,
+ 1, -526909440, 1611661312, 6, 0,
+ (long *)_vq_quantlist__44c7_s_p9_2,
+ 0
+};
+
+static const char _huff_lengthlist__44c7_s_short[] = {
+ 4,11,12,14,15,15,17,17,18,18, 5, 6, 6, 8, 9,10,
+ 13,17,18,19, 7, 5, 4, 6, 8, 9,11,15,19,19, 8, 6,
+ 5, 5, 6, 7,11,14,16,17, 9, 7, 7, 6, 7, 7,10,13,
+ 15,19,10, 8, 7, 6, 7, 6, 7, 9,14,16,12,10, 9, 7,
+ 7, 6, 4, 5,10,15,14,13,11, 7, 6, 6, 4, 2, 7,13,
+ 16,16,15, 9, 8, 8, 8, 6, 9,13,19,19,17,12,11,10,
+ 10, 9,11,14,
+};
+
+static const static_codebook _huff_book__44c7_s_short = {
+ 2, 100,
+ (char *)_huff_lengthlist__44c7_s_short,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
+static const char _huff_lengthlist__44c8_s_long[] = {
+ 3, 8,12,13,14,14,14,13,14,14, 6, 4, 5, 8,10,10,
+ 11,11,14,13, 9, 5, 4, 5, 7, 8, 9,10,13,13,12, 7,
+ 5, 4, 5, 6, 8, 9,12,13,13, 9, 6, 5, 5, 5, 7, 9,
+ 11,14,12,10, 7, 6, 5, 4, 6, 7,10,11,12,11, 9, 8,
+ 7, 5, 5, 6,10,10,13,12,10, 9, 8, 6, 6, 5, 8,10,
+ 14,13,12,12,11,10, 9, 7, 8,10,12,13,14,14,13,12,
+ 11, 9, 9,10,
+};
+
+static const static_codebook _huff_book__44c8_s_long = {
+ 2, 100,
+ (char *)_huff_lengthlist__44c8_s_long,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
+static const long _vq_quantlist__44c8_s_p1_0[] = {
+ 1,
+ 0,
+ 2,
+};
+
+static const char _vq_lengthlist__44c8_s_p1_0[] = {
+ 1, 5, 5, 0, 5, 5, 0, 5, 5, 5, 7, 7, 0, 9, 8, 0,
+ 9, 8, 6, 7, 7, 0, 8, 9, 0, 8, 9, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 5, 9, 8, 0, 8, 8, 0, 8, 8, 5, 8, 9,
+ 0, 8, 8, 0, 8, 8, 0, 0, 0, 0, 0, 0, 0, 0, 0, 5,
+ 9, 8, 0, 8, 8, 0, 8, 8, 5, 8, 9, 0, 8, 8, 0, 8,
+ 8,
+};
+
+static const static_codebook _44c8_s_p1_0 = {
+ 4, 81,
+ (char *)_vq_lengthlist__44c8_s_p1_0,
+ 1, -535822336, 1611661312, 2, 0,
+ (long *)_vq_quantlist__44c8_s_p1_0,
+ 0
+};
+
+static const long _vq_quantlist__44c8_s_p2_0[] = {
+ 2,
+ 1,
+ 3,
+ 0,
+ 4,
+};
+
+static const char _vq_lengthlist__44c8_s_p2_0[] = {
+ 3, 5, 5, 8, 8, 0, 5, 5, 8, 8, 0, 5, 5, 8, 8, 0,
+ 7, 7, 9, 9, 0, 0, 0, 9, 9, 5, 7, 7, 9, 9, 0, 8,
+ 7,10, 9, 0, 8, 7,10, 9, 0,10,10,11,11, 0, 0, 0,
+ 11,11, 5, 7, 7, 9, 9, 0, 7, 8, 9,10, 0, 7, 8, 9,
+ 10, 0,10,10,11,11, 0, 0, 0,11,11, 8, 9, 9,11,10,
+ 0,11,10,12,11, 0,11,10,12,12, 0,13,13,14,14, 0,
+ 0, 0,14,13, 8, 9, 9,10,11, 0,10,11,12,12, 0,10,
+ 11,12,12, 0,13,13,14,14, 0, 0, 0,13,14, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 5, 8, 7,11,10, 0, 7, 7,10,10,
+ 0, 7, 7,10,10, 0, 9, 9,10,10, 0, 0, 0,11,10, 5,
+ 7, 8,10,11, 0, 7, 7,10,10, 0, 7, 7,10,10, 0, 9,
+ 9,10,10, 0, 0, 0,10,10, 8,10, 9,12,12, 0,10,10,
+ 12,11, 0,10,10,12,12, 0,12,12,13,12, 0, 0, 0,13,
+ 12, 8, 9,10,12,12, 0,10,10,11,12, 0,10,10,11,12,
+ 0,12,12,13,13, 0, 0, 0,12,13, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 6, 8, 7,11,10, 0, 7, 7,10,10, 0, 7, 7,
+ 10,10, 0, 9, 9,10,11, 0, 0, 0,10,10, 6, 7, 8,10,
+ 11, 0, 7, 7,10,10, 0, 7, 7,10,10, 0, 9, 9,10,10,
+ 0, 0, 0,10,10, 9,10, 9,12,12, 0,10,10,12,12, 0,
+ 10,10,12,11, 0,12,12,13,13, 0, 0, 0,13,12, 8, 9,
+ 10,12,12, 0,10,10,12,12, 0,10,10,11,12, 0,12,12,
+ 13,13, 0, 0, 0,12,13, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 7,10,10,13,13, 0, 9, 9,12,12, 0, 9, 9,12,12, 0,
+ 10,10,12,12, 0, 0, 0,12,12, 7,10,10,13,13, 0, 9,
+ 9,12,12, 0, 9, 9,12,12, 0,10,10,12,12, 0, 0, 0,
+ 12,12, 9,11,11,14,13, 0,10,10,13,12, 0,11,10,13,
+ 12, 0,12,12,13,12, 0, 0, 0,13,13, 9,11,11,13,14,
+ 0,10,11,12,13, 0,10,11,13,13, 0,12,12,12,13, 0,
+ 0, 0,13,13, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 9,
+ 11,11,14,14, 0,10,11,13,13, 0,11,10,13,13, 0,11,
+ 12,13,13, 0, 0, 0,13,12, 9,11,11,14,14, 0,11,10,
+ 13,13, 0,10,11,13,13, 0,12,12,13,13, 0, 0, 0,12,
+ 13,
+};
+
+static const static_codebook _44c8_s_p2_0 = {
+ 4, 625,
+ (char *)_vq_lengthlist__44c8_s_p2_0,
+ 1, -533725184, 1611661312, 3, 0,
+ (long *)_vq_quantlist__44c8_s_p2_0,
+ 0
+};
+
+static const long _vq_quantlist__44c8_s_p3_0[] = {
+ 4,
+ 3,
+ 5,
+ 2,
+ 6,
+ 1,
+ 7,
+ 0,
+ 8,
+};
+
+static const char _vq_lengthlist__44c8_s_p3_0[] = {
+ 2, 4, 4, 5, 5, 7, 7, 9, 9, 0, 4, 4, 6, 6, 7, 7,
+ 9, 9, 0, 4, 4, 6, 6, 7, 7, 9, 9, 0, 5, 5, 6, 6,
+ 8, 8,10,10, 0, 0, 0, 6, 6, 8, 8,10,10, 0, 0, 0,
+ 7, 7, 9, 9,10,10, 0, 0, 0, 7, 7, 8, 8,10,10, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0,
+};
+
+static const static_codebook _44c8_s_p3_0 = {
+ 2, 81,
+ (char *)_vq_lengthlist__44c8_s_p3_0,
+ 1, -531628032, 1611661312, 4, 0,
+ (long *)_vq_quantlist__44c8_s_p3_0,
+ 0
+};
+
+static const long _vq_quantlist__44c8_s_p4_0[] = {
+ 8,
+ 7,
+ 9,
+ 6,
+ 10,
+ 5,
+ 11,
+ 4,
+ 12,
+ 3,
+ 13,
+ 2,
+ 14,
+ 1,
+ 15,
+ 0,
+ 16,
+};
+
+static const char _vq_lengthlist__44c8_s_p4_0[] = {
+ 3, 4, 4, 5, 5, 7, 7, 8, 8, 8, 8, 9, 9,10,10,11,
+ 11, 0, 4, 4, 6, 6, 7, 7, 8, 8, 9, 8,10,10,11,11,
+ 11,11, 0, 4, 4, 6, 6, 7, 7, 8, 8, 9, 9,10,10,11,
+ 11,11,11, 0, 6, 5, 6, 6, 7, 7, 9, 9, 9, 9,10,10,
+ 11,11,12,12, 0, 0, 0, 6, 6, 7, 7, 9, 9, 9, 9,10,
+ 10,11,11,12,12, 0, 0, 0, 7, 7, 8, 8, 9, 9,10,10,
+ 11,11,11,12,12,12, 0, 0, 0, 7, 7, 8, 8, 9, 9,10,
+ 10,11,11,11,12,12,12, 0, 0, 0, 7, 7, 8, 8, 9, 9,
+ 10,10,11,11,12,12,13,13, 0, 0, 0, 0, 0, 8, 8, 9,
+ 9,10,10,11,11,12,12,13,13, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0,
+};
+
+static const static_codebook _44c8_s_p4_0 = {
+ 2, 289,
+ (char *)_vq_lengthlist__44c8_s_p4_0,
+ 1, -529530880, 1611661312, 5, 0,
+ (long *)_vq_quantlist__44c8_s_p4_0,
+ 0
+};
+
+static const long _vq_quantlist__44c8_s_p5_0[] = {
+ 1,
+ 0,
+ 2,
+};
+
+static const char _vq_lengthlist__44c8_s_p5_0[] = {
+ 1, 4, 4, 5, 7, 7, 6, 7, 7, 4, 7, 6,10,10,10,10,
+ 10,10, 4, 6, 6,10,10,10,10, 9,10, 5,10,10, 9,11,
+ 11,10,11,11, 7,10,10,11,12,12,12,12,12, 7,10,10,
+ 11,12,12,12,12,12, 6,10,10,10,12,12,10,12,12, 7,
+ 10,10,11,12,12,12,12,12, 7,10,10,11,12,12,12,12,
+ 12,
+};
+
+static const static_codebook _44c8_s_p5_0 = {
+ 4, 81,
+ (char *)_vq_lengthlist__44c8_s_p5_0,
+ 1, -529137664, 1618345984, 2, 0,
+ (long *)_vq_quantlist__44c8_s_p5_0,
+ 0
+};
+
+static const long _vq_quantlist__44c8_s_p5_1[] = {
+ 5,
+ 4,
+ 6,
+ 3,
+ 7,
+ 2,
+ 8,
+ 1,
+ 9,
+ 0,
+ 10,
+};
+
+static const char _vq_lengthlist__44c8_s_p5_1[] = {
+ 3, 5, 5, 6, 6, 7, 7, 8, 8, 8, 8,11, 4, 5, 6, 6,
+ 7, 7, 8, 8, 8, 8,11, 5, 5, 6, 6, 7, 7, 8, 8, 8,
+ 9,12, 5, 5, 6, 6, 7, 7, 8, 8, 9, 9,12,12,12, 6,
+ 6, 7, 7, 8, 8, 9, 9,11,11,11, 6, 6, 7, 7, 8, 8,
+ 8, 8,11,11,11, 6, 6, 7, 7, 8, 8, 8, 8,11,11,11,
+ 7, 7, 7, 8, 8, 8, 8, 8,11,11,11,11,11, 7, 7, 8,
+ 8, 8, 8,11,11,11,11,11, 7, 7, 7, 7, 8, 8,11,11,
+ 11,11,11, 7, 7, 7, 7, 8, 8,
+};
+
+static const static_codebook _44c8_s_p5_1 = {
+ 2, 121,
+ (char *)_vq_lengthlist__44c8_s_p5_1,
+ 1, -531365888, 1611661312, 4, 0,
+ (long *)_vq_quantlist__44c8_s_p5_1,
+ 0
+};
+
+static const long _vq_quantlist__44c8_s_p6_0[] = {
+ 6,
+ 5,
+ 7,
+ 4,
+ 8,
+ 3,
+ 9,
+ 2,
+ 10,
+ 1,
+ 11,
+ 0,
+ 12,
+};
+
+static const char _vq_lengthlist__44c8_s_p6_0[] = {
+ 1, 4, 4, 6, 6, 7, 7, 8, 8, 9, 9,10,10, 6, 5, 5,
+ 7, 7, 8, 8, 9, 9,10,10,11,11, 6, 5, 5, 7, 7, 8,
+ 8, 9, 9,10,10,11,11, 0, 7, 7, 7, 7, 9, 9,10,10,
+ 10,10,11,11, 0, 7, 7, 7, 7, 9, 9,10,10,10,10,11,
+ 11, 0,11,11, 9, 9,10,10,11,11,11,11,12,12, 0,12,
+ 12, 9, 9,10,10,11,11,12,12,12,12, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0,
+};
+
+static const static_codebook _44c8_s_p6_0 = {
+ 2, 169,
+ (char *)_vq_lengthlist__44c8_s_p6_0,
+ 1, -526516224, 1616117760, 4, 0,
+ (long *)_vq_quantlist__44c8_s_p6_0,
+ 0
+};
+
+static const long _vq_quantlist__44c8_s_p6_1[] = {
+ 2,
+ 1,
+ 3,
+ 0,
+ 4,
+};
+
+static const char _vq_lengthlist__44c8_s_p6_1[] = {
+ 3, 4, 4, 5, 5, 5, 4, 4, 5, 5, 5, 4, 4, 5, 5, 6,
+ 5, 5, 5, 5, 6, 6, 6, 5, 5,
+};
+
+static const static_codebook _44c8_s_p6_1 = {
+ 2, 25,
+ (char *)_vq_lengthlist__44c8_s_p6_1,
+ 1, -533725184, 1611661312, 3, 0,
+ (long *)_vq_quantlist__44c8_s_p6_1,
+ 0
+};
+
+static const long _vq_quantlist__44c8_s_p7_0[] = {
+ 6,
+ 5,
+ 7,
+ 4,
+ 8,
+ 3,
+ 9,
+ 2,
+ 10,
+ 1,
+ 11,
+ 0,
+ 12,
+};
+
+static const char _vq_lengthlist__44c8_s_p7_0[] = {
+ 1, 4, 4, 6, 6, 8, 7, 9, 9,10,10,12,12, 6, 5, 5,
+ 7, 7, 8, 8,10,10,11,11,12,12, 7, 5, 5, 7, 7, 8,
+ 8,10,10,11,11,12,12,21, 7, 7, 7, 7, 8, 9,10,10,
+ 11,11,12,12,21, 7, 7, 7, 7, 9, 9,10,10,12,12,13,
+ 13,21,11,11, 8, 8, 9, 9,11,11,12,12,13,13,21,11,
+ 11, 8, 8, 9, 9,11,11,12,12,13,13,21,21,21,10,10,
+ 10,10,11,11,12,13,13,13,21,21,21,10,10,10,10,11,
+ 11,13,13,14,13,21,21,21,13,13,11,11,12,12,13,13,
+ 14,14,21,21,21,14,14,11,11,12,12,13,13,14,14,21,
+ 21,21,21,20,13,13,13,12,14,14,16,15,20,20,20,20,
+ 20,13,13,13,13,14,13,15,15,
+};
+
+static const static_codebook _44c8_s_p7_0 = {
+ 2, 169,
+ (char *)_vq_lengthlist__44c8_s_p7_0,
+ 1, -523206656, 1618345984, 4, 0,
+ (long *)_vq_quantlist__44c8_s_p7_0,
+ 0
+};
+
+static const long _vq_quantlist__44c8_s_p7_1[] = {
+ 5,
+ 4,
+ 6,
+ 3,
+ 7,
+ 2,
+ 8,
+ 1,
+ 9,
+ 0,
+ 10,
+};
+
+static const char _vq_lengthlist__44c8_s_p7_1[] = {
+ 4, 5, 6, 6, 6, 7, 7, 7, 7, 7, 7, 8, 6, 6, 6, 7,
+ 7, 7, 7, 7, 7, 7, 8, 6, 6, 6, 6, 7, 7, 7, 7, 7,
+ 7, 8, 6, 6, 7, 7, 7, 7, 7, 7, 7, 7, 8, 8, 8, 7,
+ 7, 7, 7, 7, 7, 7, 7, 8, 8, 8, 7, 7, 7, 7, 7, 7,
+ 7, 7, 8, 8, 8, 7, 7, 7, 7, 7, 7, 7, 7, 8, 8, 8,
+ 7, 7, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 7, 7, 7,
+ 7, 7, 7, 8, 8, 8, 8, 8, 7, 7, 7, 7, 7, 7, 8, 8,
+ 8, 8, 8, 7, 7, 7, 7, 7, 7,
+};
+
+static const static_codebook _44c8_s_p7_1 = {
+ 2, 121,
+ (char *)_vq_lengthlist__44c8_s_p7_1,
+ 1, -531365888, 1611661312, 4, 0,
+ (long *)_vq_quantlist__44c8_s_p7_1,
+ 0
+};
+
+static const long _vq_quantlist__44c8_s_p8_0[] = {
+ 7,
+ 6,
+ 8,
+ 5,
+ 9,
+ 4,
+ 10,
+ 3,
+ 11,
+ 2,
+ 12,
+ 1,
+ 13,
+ 0,
+ 14,
+};
+
+static const char _vq_lengthlist__44c8_s_p8_0[] = {
+ 1, 4, 4, 7, 6, 8, 8, 8, 7, 9, 8,10,10,11,10, 6,
+ 5, 5, 7, 7, 9, 9, 8, 8,10,10,11,11,12,11, 6, 5,
+ 5, 7, 7, 9, 9, 9, 9,10,10,11,11,12,12,20, 8, 8,
+ 8, 8, 9, 9, 9, 9,10,10,11,11,12,12,20, 8, 8, 8,
+ 8,10, 9, 9, 9,10,10,11,11,12,12,20,12,12, 9, 9,
+ 10,10,10,10,10,11,12,12,12,12,20,12,12, 9, 9,10,
+ 10,10,10,11,11,12,12,13,13,20,20,20, 9, 9, 9, 9,
+ 11,10,11,11,12,12,12,13,20,19,19, 9, 9, 9, 9,11,
+ 11,11,12,12,12,13,13,19,19,19,13,13,10,10,11,11,
+ 12,12,13,13,13,13,19,19,19,14,13,11,10,11,11,12,
+ 12,12,13,13,13,19,19,19,19,19,12,12,12,12,13,13,
+ 13,13,14,13,19,19,19,19,19,12,12,12,11,12,12,13,
+ 14,14,14,19,19,19,19,19,16,15,13,12,13,13,13,14,
+ 14,14,19,19,19,19,19,17,17,13,12,13,11,14,13,15,
+ 15,
+};
+
+static const static_codebook _44c8_s_p8_0 = {
+ 2, 225,
+ (char *)_vq_lengthlist__44c8_s_p8_0,
+ 1, -520986624, 1620377600, 4, 0,
+ (long *)_vq_quantlist__44c8_s_p8_0,
+ 0
+};
+
+static const long _vq_quantlist__44c8_s_p8_1[] = {
+ 10,
+ 9,
+ 11,
+ 8,
+ 12,
+ 7,
+ 13,
+ 6,
+ 14,
+ 5,
+ 15,
+ 4,
+ 16,
+ 3,
+ 17,
+ 2,
+ 18,
+ 1,
+ 19,
+ 0,
+ 20,
+};
+
+static const char _vq_lengthlist__44c8_s_p8_1[] = {
+ 4, 5, 5, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8, 8, 8,
+ 8, 8, 8, 8, 8,10, 6, 6, 7, 7, 8, 8, 8, 8, 9, 9,
+ 9, 9, 9, 9, 9, 9, 9, 9, 9, 9,10, 6, 6, 7, 7, 8,
+ 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9,10,
+ 7, 7, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9,
+ 9, 9, 9, 9,10,10,10, 8, 8, 8, 8, 9, 9, 9, 9, 9,
+ 9, 9, 9, 9, 9, 9, 9, 9, 9,10,10,10, 8, 8, 8, 9,
+ 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9,10,10,
+ 10, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9,
+ 9, 9, 9,10,10,10, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9,
+ 9, 9, 9, 9, 9, 9, 9, 9,10,10,10,10,10, 9, 9, 9,
+ 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9,10,10,10,
+ 10,10, 9, 9, 9, 9, 9, 9, 9, 9,10, 9, 9, 9, 9, 9,
+ 9, 9,10,10,10,10,10, 9, 9, 9, 9, 9, 9, 9, 9, 9,
+ 9, 9, 9, 9, 9, 9, 9,10,10,10,10,10, 9, 9, 9, 9,
+ 9, 9, 9, 9,10,10,10, 9, 9, 9, 9, 9,10,10,10,10,
+ 10,10,10, 9, 9, 9, 9, 9,10,10,10, 9, 9, 9, 9, 9,
+ 9,10,10,10,10,10,10,10, 9,10,10, 9,10,10,10,10,
+ 9,10, 9,10,10, 9,10,10,10,10,10,10,10, 9,10,10,
+ 10,10,10,10, 9, 9,10,10, 9,10,10,10,10,10,10,10,
+ 10,10,10,10,10,10,10,10, 9, 9, 9,10, 9, 9, 9, 9,
+ 10,10,10,10,10,10,10,10,10,10,10,10,10,10, 9, 9,
+ 10, 9,10, 9,10,10,10,10,10,10,10,10,10,10,10,10,
+ 10,10,10,10, 9, 9,10, 9, 9, 9,10,10,10,10,10,10,
+ 10,10,10,10,10, 9, 9, 9, 9, 9, 9,10, 9, 9,10,10,
+ 10,10,10,10,10,10,10,10,10,10,10,10,10, 9,10, 9,
+ 9,10, 9, 9,10,10,10,10,10,10,10,10,10,10,10,10,
+ 10, 9, 9,10,10, 9,10, 9, 9,
+};
+
+static const static_codebook _44c8_s_p8_1 = {
+ 2, 441,
+ (char *)_vq_lengthlist__44c8_s_p8_1,
+ 1, -529268736, 1611661312, 5, 0,
+ (long *)_vq_quantlist__44c8_s_p8_1,
+ 0
+};
+
+static const long _vq_quantlist__44c8_s_p9_0[] = {
+ 8,
+ 7,
+ 9,
+ 6,
+ 10,
+ 5,
+ 11,
+ 4,
+ 12,
+ 3,
+ 13,
+ 2,
+ 14,
+ 1,
+ 15,
+ 0,
+ 16,
+};
+
+static const char _vq_lengthlist__44c8_s_p9_0[] = {
+ 1, 4, 3,11,11,11,11,11,11,11,11,11,11,11,11,11,
+ 11, 4, 7, 7,11,11,11,11,11,11,11,11,11,11,11,11,
+ 11,11, 4, 8,11,11,11,11,11,11,11,11,11,11,11,11,
+ 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
+ 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
+ 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
+ 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
+ 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
+ 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
+ 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
+ 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
+ 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
+ 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
+ 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
+ 11,11,10,10,10,10,10,10,10,10,10,10,10,10,10,10,
+ 10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,
+ 10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,
+ 10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,
+ 10,
+};
+
+static const static_codebook _44c8_s_p9_0 = {
+ 2, 289,
+ (char *)_vq_lengthlist__44c8_s_p9_0,
+ 1, -509798400, 1631393792, 5, 0,
+ (long *)_vq_quantlist__44c8_s_p9_0,
+ 0
+};
+
+static const long _vq_quantlist__44c8_s_p9_1[] = {
+ 9,
+ 8,
+ 10,
+ 7,
+ 11,
+ 6,
+ 12,
+ 5,
+ 13,
+ 4,
+ 14,
+ 3,
+ 15,
+ 2,
+ 16,
+ 1,
+ 17,
+ 0,
+ 18,
+};
+
+static const char _vq_lengthlist__44c8_s_p9_1[] = {
+ 1, 4, 4, 7, 6, 7, 7, 7, 7, 8, 8, 9, 9,10,10,10,
+ 10,11,11, 6, 6, 6, 8, 8, 9, 8, 8, 7,10, 8,11,10,
+ 12,11,12,12,13,13, 5, 5, 6, 8, 8, 9, 9, 8, 8,10,
+ 9,11,11,12,12,13,13,13,13,17, 8, 8, 9, 9, 9, 9,
+ 9, 9,10, 9,12,10,12,12,13,12,13,13,17, 9, 8, 9,
+ 9, 9, 9, 9, 9,10,10,12,12,12,12,13,13,13,13,17,
+ 13,13, 9, 9,10,10,10,10,11,11,12,11,13,12,13,13,
+ 14,15,17,13,13, 9, 8,10, 9,10,10,11,11,12,12,14,
+ 13,15,13,14,15,17,17,17, 9,10, 9,10,11,11,12,12,
+ 12,12,13,13,14,14,15,15,17,17,17, 9, 8, 9, 8,11,
+ 11,12,12,12,12,14,13,14,14,14,15,17,17,17,12,14,
+ 9,10,11,11,12,12,14,13,13,14,15,13,15,15,17,17,
+ 17,13,11,10, 8,11, 9,13,12,13,13,13,13,13,14,14,
+ 14,17,17,17,17,17,11,12,11,11,13,13,14,13,15,14,
+ 13,15,16,15,17,17,17,17,17,11,11,12, 8,13,12,14,
+ 13,17,14,15,14,15,14,17,17,17,17,17,15,15,12,12,
+ 12,12,13,14,14,14,15,14,17,14,17,17,17,17,17,16,
+ 17,12,12,13,12,13,13,14,14,14,14,14,14,17,17,17,
+ 17,17,17,17,14,14,13,12,13,13,15,15,14,13,15,17,
+ 17,17,17,17,17,17,17,13,14,13,13,13,13,14,15,15,
+ 15,14,15,17,17,17,17,17,17,17,16,15,13,14,13,13,
+ 14,14,15,14,14,16,17,17,17,17,17,17,17,16,16,13,
+ 14,13,13,14,14,15,14,15,14,
+};
+
+static const static_codebook _44c8_s_p9_1 = {
+ 2, 361,
+ (char *)_vq_lengthlist__44c8_s_p9_1,
+ 1, -518287360, 1622704128, 5, 0,
+ (long *)_vq_quantlist__44c8_s_p9_1,
+ 0
+};
+
+static const long _vq_quantlist__44c8_s_p9_2[] = {
+ 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 const char _vq_lengthlist__44c8_s_p9_2[] = {
+ 2, 4, 4, 4, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 6, 6,
+ 6, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 7, 7, 7,
+ 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7,
+ 7,
+};
+
+static const static_codebook _44c8_s_p9_2 = {
+ 1, 49,
+ (char *)_vq_lengthlist__44c8_s_p9_2,
+ 1, -526909440, 1611661312, 6, 0,
+ (long *)_vq_quantlist__44c8_s_p9_2,
+ 0
+};
+
+static const char _huff_lengthlist__44c8_s_short[] = {
+ 4,11,13,14,15,15,18,17,19,17, 5, 6, 8, 9,10,10,
+ 12,15,19,19, 6, 6, 6, 6, 8, 8,11,14,18,19, 8, 6,
+ 5, 4, 6, 7,10,13,16,17, 9, 7, 6, 5, 6, 7, 9,12,
+ 15,19,10, 8, 7, 6, 6, 6, 7, 9,13,15,12,10, 9, 8,
+ 7, 6, 4, 5,10,15,13,13,11, 8, 6, 6, 4, 2, 7,12,
+ 17,15,16,10, 8, 8, 7, 6, 9,12,19,18,17,13,11,10,
+ 10, 9,11,14,
+};
+
+static const static_codebook _huff_book__44c8_s_short = {
+ 2, 100,
+ (char *)_huff_lengthlist__44c8_s_short,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
+static const char _huff_lengthlist__44c9_s_long[] = {
+ 3, 8,12,14,15,15,15,13,15,15, 6, 5, 8,10,12,12,
+ 13,12,14,13,10, 6, 5, 6, 8, 9,11,11,13,13,13, 8,
+ 5, 4, 5, 6, 8,10,11,13,14,10, 7, 5, 4, 5, 7, 9,
+ 11,12,13,11, 8, 6, 5, 4, 5, 7, 9,11,12,11,10, 8,
+ 7, 5, 4, 5, 9,10,13,13,11,10, 8, 6, 5, 4, 7, 9,
+ 15,14,13,12,10, 9, 8, 7, 8, 9,12,12,14,13,12,11,
+ 10, 9, 8, 9,
+};
+
+static const static_codebook _huff_book__44c9_s_long = {
+ 2, 100,
+ (char *)_huff_lengthlist__44c9_s_long,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
+static const long _vq_quantlist__44c9_s_p1_0[] = {
+ 1,
+ 0,
+ 2,
+};
+
+static const char _vq_lengthlist__44c9_s_p1_0[] = {
+ 1, 5, 5, 0, 5, 5, 0, 5, 5, 6, 8, 8, 0, 9, 8, 0,
+ 9, 8, 6, 8, 8, 0, 8, 9, 0, 8, 9, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 5, 8, 8, 0, 7, 7, 0, 8, 8, 5, 8, 8,
+ 0, 7, 8, 0, 8, 8, 0, 0, 0, 0, 0, 0, 0, 0, 0, 5,
+ 9, 8, 0, 8, 8, 0, 7, 7, 5, 8, 9, 0, 8, 8, 0, 7,
+ 7,
+};
+
+static const static_codebook _44c9_s_p1_0 = {
+ 4, 81,
+ (char *)_vq_lengthlist__44c9_s_p1_0,
+ 1, -535822336, 1611661312, 2, 0,
+ (long *)_vq_quantlist__44c9_s_p1_0,
+ 0
+};
+
+static const long _vq_quantlist__44c9_s_p2_0[] = {
+ 2,
+ 1,
+ 3,
+ 0,
+ 4,
+};
+
+static const char _vq_lengthlist__44c9_s_p2_0[] = {
+ 3, 5, 5, 8, 8, 0, 5, 5, 8, 8, 0, 5, 5, 8, 8, 0,
+ 7, 7, 9, 9, 0, 0, 0, 9, 9, 6, 7, 7, 9, 8, 0, 8,
+ 8, 9, 9, 0, 8, 7, 9, 9, 0, 9,10,10,10, 0, 0, 0,
+ 11,10, 6, 7, 7, 8, 9, 0, 8, 8, 9, 9, 0, 7, 8, 9,
+ 9, 0,10, 9,11,10, 0, 0, 0,10,10, 8, 9, 8,10,10,
+ 0,10,10,12,11, 0,10,10,11,11, 0,12,13,13,13, 0,
+ 0, 0,13,12, 8, 8, 9,10,10, 0,10,10,11,12, 0,10,
+ 10,11,11, 0,13,12,13,13, 0, 0, 0,13,13, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 6, 8, 7,10,10, 0, 7, 7,10, 9,
+ 0, 7, 7,10,10, 0, 9, 9,10,10, 0, 0, 0,10,10, 6,
+ 7, 8,10,10, 0, 7, 7, 9,10, 0, 7, 7,10,10, 0, 9,
+ 9,10,10, 0, 0, 0,10,10, 8, 9, 9,11,11, 0,10,10,
+ 11,11, 0,10,10,11,11, 0,12,12,12,12, 0, 0, 0,12,
+ 12, 8, 9,10,11,11, 0, 9,10,11,11, 0,10,10,11,11,
+ 0,12,12,12,12, 0, 0, 0,12,12, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 5, 8, 7,10,10, 0, 7, 7,10,10, 0, 7, 7,
+ 10, 9, 0, 9, 9,10,10, 0, 0, 0,10,10, 6, 7, 8,10,
+ 10, 0, 7, 7,10,10, 0, 7, 7, 9,10, 0, 9, 9,10,10,
+ 0, 0, 0,10,10, 8,10, 9,12,11, 0,10,10,12,11, 0,
+ 10, 9,11,11, 0,11,12,12,12, 0, 0, 0,12,12, 8, 9,
+ 10,11,12, 0,10,10,11,11, 0, 9,10,11,11, 0,12,11,
+ 12,12, 0, 0, 0,12,12, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 7,10, 9,12,12, 0, 9, 9,12,11, 0, 9, 9,11,11, 0,
+ 10,10,12,11, 0, 0, 0,11,12, 7, 9,10,12,12, 0, 9,
+ 9,11,12, 0, 9, 9,11,11, 0,10,10,11,12, 0, 0, 0,
+ 11,11, 9,11,10,13,12, 0,10,10,12,12, 0,10,10,12,
+ 12, 0,11,11,12,12, 0, 0, 0,13,12, 9,10,11,12,13,
+ 0,10,10,12,12, 0,10,10,12,12, 0,11,12,12,12, 0,
+ 0, 0,12,13, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 9,
+ 11,10,13,13, 0,10,10,12,12, 0,10,10,12,12, 0,11,
+ 12,12,12, 0, 0, 0,12,12, 9,10,11,13,13, 0,10,10,
+ 12,12, 0,10,10,12,12, 0,12,11,13,12, 0, 0, 0,12,
+ 12,
+};
+
+static const static_codebook _44c9_s_p2_0 = {
+ 4, 625,
+ (char *)_vq_lengthlist__44c9_s_p2_0,
+ 1, -533725184, 1611661312, 3, 0,
+ (long *)_vq_quantlist__44c9_s_p2_0,
+ 0
+};
+
+static const long _vq_quantlist__44c9_s_p3_0[] = {
+ 4,
+ 3,
+ 5,
+ 2,
+ 6,
+ 1,
+ 7,
+ 0,
+ 8,
+};
+
+static const char _vq_lengthlist__44c9_s_p3_0[] = {
+ 3, 4, 4, 5, 5, 6, 6, 8, 8, 0, 4, 4, 5, 5, 6, 7,
+ 8, 8, 0, 4, 4, 5, 5, 7, 7, 8, 8, 0, 5, 5, 6, 6,
+ 7, 7, 9, 9, 0, 0, 0, 6, 6, 7, 7, 9, 9, 0, 0, 0,
+ 7, 7, 8, 8, 9, 9, 0, 0, 0, 7, 7, 8, 8, 9, 9, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0,
+};
+
+static const static_codebook _44c9_s_p3_0 = {
+ 2, 81,
+ (char *)_vq_lengthlist__44c9_s_p3_0,
+ 1, -531628032, 1611661312, 4, 0,
+ (long *)_vq_quantlist__44c9_s_p3_0,
+ 0
+};
+
+static const long _vq_quantlist__44c9_s_p4_0[] = {
+ 8,
+ 7,
+ 9,
+ 6,
+ 10,
+ 5,
+ 11,
+ 4,
+ 12,
+ 3,
+ 13,
+ 2,
+ 14,
+ 1,
+ 15,
+ 0,
+ 16,
+};
+
+static const char _vq_lengthlist__44c9_s_p4_0[] = {
+ 3, 4, 4, 5, 5, 6, 6, 7, 7, 8, 8, 9, 9,10,10,10,
+ 10, 0, 5, 4, 5, 5, 7, 7, 8, 8, 8, 8, 9, 9,10,10,
+ 11,11, 0, 5, 5, 6, 6, 7, 7, 8, 8, 8, 8, 9, 9,10,
+ 10,11,11, 0, 6, 5, 6, 6, 7, 7, 8, 8, 9, 9,10,10,
+ 11,11,11,12, 0, 0, 0, 6, 6, 7, 7, 8, 8, 9, 9,10,
+ 10,11,11,12,12, 0, 0, 0, 7, 7, 7, 7, 9, 9, 9, 9,
+ 10,10,11,11,12,12, 0, 0, 0, 7, 7, 7, 8, 9, 9, 9,
+ 9,10,10,11,11,12,12, 0, 0, 0, 7, 7, 8, 8, 9, 9,
+ 10,10,11,11,12,12,13,13, 0, 0, 0, 0, 0, 8, 8, 9,
+ 9,10,10,11,11,12,12,12,12, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0,
+};
+
+static const static_codebook _44c9_s_p4_0 = {
+ 2, 289,
+ (char *)_vq_lengthlist__44c9_s_p4_0,
+ 1, -529530880, 1611661312, 5, 0,
+ (long *)_vq_quantlist__44c9_s_p4_0,
+ 0
+};
+
+static const long _vq_quantlist__44c9_s_p5_0[] = {
+ 1,
+ 0,
+ 2,
+};
+
+static const char _vq_lengthlist__44c9_s_p5_0[] = {
+ 1, 4, 4, 5, 7, 7, 6, 7, 7, 4, 7, 6, 9,10,10,10,
+ 10, 9, 4, 6, 7, 9,10,10,10, 9,10, 5, 9, 9, 9,11,
+ 11,10,11,11, 7,10, 9,11,12,11,12,12,12, 7, 9,10,
+ 11,11,12,12,12,12, 6,10,10,10,12,12,10,12,11, 7,
+ 10,10,11,12,12,11,12,12, 7,10,10,11,12,12,12,12,
+ 12,
+};
+
+static const static_codebook _44c9_s_p5_0 = {
+ 4, 81,
+ (char *)_vq_lengthlist__44c9_s_p5_0,
+ 1, -529137664, 1618345984, 2, 0,
+ (long *)_vq_quantlist__44c9_s_p5_0,
+ 0
+};
+
+static const long _vq_quantlist__44c9_s_p5_1[] = {
+ 5,
+ 4,
+ 6,
+ 3,
+ 7,
+ 2,
+ 8,
+ 1,
+ 9,
+ 0,
+ 10,
+};
+
+static const char _vq_lengthlist__44c9_s_p5_1[] = {
+ 4, 5, 5, 6, 6, 7, 7, 7, 7, 7, 7,11, 5, 5, 6, 6,
+ 7, 7, 7, 7, 8, 8,11, 5, 5, 6, 6, 7, 7, 7, 7, 8,
+ 8,11, 5, 5, 6, 6, 7, 7, 8, 8, 8, 8,11,11,11, 6,
+ 6, 7, 7, 7, 8, 8, 8,11,11,11, 6, 6, 7, 7, 7, 8,
+ 8, 8,11,11,11, 6, 6, 7, 7, 7, 7, 8, 8,11,11,11,
+ 7, 7, 7, 7, 7, 7, 8, 8,11,11,11,10,10, 7, 7, 7,
+ 7, 8, 8,11,11,11,11,11, 7, 7, 7, 7, 7, 7,11,11,
+ 11,11,11, 7, 7, 7, 7, 7, 7,
+};
+
+static const static_codebook _44c9_s_p5_1 = {
+ 2, 121,
+ (char *)_vq_lengthlist__44c9_s_p5_1,
+ 1, -531365888, 1611661312, 4, 0,
+ (long *)_vq_quantlist__44c9_s_p5_1,
+ 0
+};
+
+static const long _vq_quantlist__44c9_s_p6_0[] = {
+ 6,
+ 5,
+ 7,
+ 4,
+ 8,
+ 3,
+ 9,
+ 2,
+ 10,
+ 1,
+ 11,
+ 0,
+ 12,
+};
+
+static const char _vq_lengthlist__44c9_s_p6_0[] = {
+ 2, 4, 4, 6, 6, 7, 7, 7, 7, 8, 8, 9, 9, 5, 4, 4,
+ 6, 6, 8, 8, 9, 9, 9, 9,10,10, 6, 4, 4, 6, 6, 8,
+ 8, 9, 9, 9, 9,10,10, 0, 6, 6, 7, 7, 8, 8, 9, 9,
+ 10,10,11,11, 0, 6, 6, 7, 7, 8, 8, 9, 9,10,10,11,
+ 11, 0,10,10, 8, 8, 9, 9,10,10,11,11,12,12, 0,11,
+ 11, 8, 8, 9, 9,10,10,11,11,12,12, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0,
+};
+
+static const static_codebook _44c9_s_p6_0 = {
+ 2, 169,
+ (char *)_vq_lengthlist__44c9_s_p6_0,
+ 1, -526516224, 1616117760, 4, 0,
+ (long *)_vq_quantlist__44c9_s_p6_0,
+ 0
+};
+
+static const long _vq_quantlist__44c9_s_p6_1[] = {
+ 2,
+ 1,
+ 3,
+ 0,
+ 4,
+};
+
+static const char _vq_lengthlist__44c9_s_p6_1[] = {
+ 4, 4, 4, 5, 5, 5, 4, 4, 5, 5, 5, 4, 4, 5, 5, 5,
+ 5, 5, 5, 5, 5, 5, 5, 5, 5,
+};
+
+static const static_codebook _44c9_s_p6_1 = {
+ 2, 25,
+ (char *)_vq_lengthlist__44c9_s_p6_1,
+ 1, -533725184, 1611661312, 3, 0,
+ (long *)_vq_quantlist__44c9_s_p6_1,
+ 0
+};
+
+static const long _vq_quantlist__44c9_s_p7_0[] = {
+ 6,
+ 5,
+ 7,
+ 4,
+ 8,
+ 3,
+ 9,
+ 2,
+ 10,
+ 1,
+ 11,
+ 0,
+ 12,
+};
+
+static const char _vq_lengthlist__44c9_s_p7_0[] = {
+ 2, 4, 4, 6, 6, 7, 7, 8, 8,10,10,11,11, 6, 4, 4,
+ 6, 6, 8, 8, 9, 9,10,10,12,12, 6, 4, 5, 6, 6, 8,
+ 8, 9, 9,10,10,12,12,20, 6, 6, 6, 6, 8, 8, 9,10,
+ 11,11,12,12,20, 6, 6, 6, 6, 8, 8,10,10,11,11,12,
+ 12,20,10,10, 7, 7, 9, 9,10,10,11,11,12,12,20,11,
+ 11, 7, 7, 9, 9,10,10,11,11,12,12,20,20,20, 9, 9,
+ 9, 9,11,11,12,12,13,13,20,20,20, 9, 9, 9, 9,11,
+ 11,12,12,13,13,20,20,20,13,13,10,10,11,11,12,13,
+ 13,13,20,20,20,13,13,10,10,11,11,12,13,13,13,20,
+ 20,20,20,19,12,12,12,12,13,13,14,15,19,19,19,19,
+ 19,12,12,12,12,13,13,14,14,
+};
+
+static const static_codebook _44c9_s_p7_0 = {
+ 2, 169,
+ (char *)_vq_lengthlist__44c9_s_p7_0,
+ 1, -523206656, 1618345984, 4, 0,
+ (long *)_vq_quantlist__44c9_s_p7_0,
+ 0
+};
+
+static const long _vq_quantlist__44c9_s_p7_1[] = {
+ 5,
+ 4,
+ 6,
+ 3,
+ 7,
+ 2,
+ 8,
+ 1,
+ 9,
+ 0,
+ 10,
+};
+
+static const char _vq_lengthlist__44c9_s_p7_1[] = {
+ 5, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 7, 6, 6, 6, 6,
+ 7, 7, 7, 7, 7, 7, 7, 6, 6, 6, 6, 7, 7, 7, 7, 7,
+ 7, 8, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 8, 8, 8, 6,
+ 6, 7, 7, 7, 7, 7, 7, 8, 8, 8, 7, 7, 7, 7, 7, 7,
+ 7, 7, 8, 8, 8, 7, 7, 7, 7, 7, 7, 7, 7, 8, 8, 8,
+ 7, 7, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 7, 7, 7,
+ 7, 7, 7, 8, 8, 8, 8, 8, 7, 7, 7, 7, 7, 7, 8, 8,
+ 8, 8, 8, 7, 7, 7, 7, 7, 7,
+};
+
+static const static_codebook _44c9_s_p7_1 = {
+ 2, 121,
+ (char *)_vq_lengthlist__44c9_s_p7_1,
+ 1, -531365888, 1611661312, 4, 0,
+ (long *)_vq_quantlist__44c9_s_p7_1,
+ 0
+};
+
+static const long _vq_quantlist__44c9_s_p8_0[] = {
+ 7,
+ 6,
+ 8,
+ 5,
+ 9,
+ 4,
+ 10,
+ 3,
+ 11,
+ 2,
+ 12,
+ 1,
+ 13,
+ 0,
+ 14,
+};
+
+static const char _vq_lengthlist__44c9_s_p8_0[] = {
+ 1, 4, 4, 7, 6, 8, 8, 8, 8, 9, 9,10,10,11,10, 6,
+ 5, 5, 7, 7, 9, 9, 8, 9,10,10,11,11,12,12, 6, 5,
+ 5, 7, 7, 9, 9, 9, 9,10,10,11,11,12,12,21, 7, 8,
+ 8, 8, 9, 9, 9, 9,10,10,11,11,12,12,21, 8, 8, 8,
+ 8, 9, 9, 9, 9,10,10,11,11,12,12,21,11,12, 9, 9,
+ 10,10,10,10,10,11,11,12,12,12,21,12,12, 9, 8,10,
+ 10,10,10,11,11,12,12,13,13,21,21,21, 9, 9, 9, 9,
+ 11,11,11,11,12,12,12,13,21,20,20, 9, 9, 9, 9,10,
+ 11,11,11,12,12,13,13,20,20,20,13,13,10,10,11,11,
+ 12,12,13,13,13,13,20,20,20,13,13,10,10,11,11,12,
+ 12,13,13,13,13,20,20,20,20,20,12,12,12,12,12,12,
+ 13,13,14,14,20,20,20,20,20,12,12,12,11,13,12,13,
+ 13,14,14,20,20,20,20,20,15,16,13,12,13,13,14,13,
+ 14,14,20,20,20,20,20,16,15,12,12,13,12,14,13,14,
+ 14,
+};
+
+static const static_codebook _44c9_s_p8_0 = {
+ 2, 225,
+ (char *)_vq_lengthlist__44c9_s_p8_0,
+ 1, -520986624, 1620377600, 4, 0,
+ (long *)_vq_quantlist__44c9_s_p8_0,
+ 0
+};
+
+static const long _vq_quantlist__44c9_s_p8_1[] = {
+ 10,
+ 9,
+ 11,
+ 8,
+ 12,
+ 7,
+ 13,
+ 6,
+ 14,
+ 5,
+ 15,
+ 4,
+ 16,
+ 3,
+ 17,
+ 2,
+ 18,
+ 1,
+ 19,
+ 0,
+ 20,
+};
+
+static const char _vq_lengthlist__44c9_s_p8_1[] = {
+ 4, 6, 6, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8, 8, 8,
+ 8, 8, 8, 8, 8,10, 6, 6, 7, 7, 8, 8, 8, 8, 9, 9,
+ 9, 9, 9, 9, 9, 9, 9, 9, 9, 9,10, 6, 6, 7, 7, 8,
+ 8, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9,10,
+ 7, 7, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9, 9,
+ 9, 9, 9, 9,10,10,10, 8, 8, 8, 8, 9, 9, 9, 9, 9,
+ 9, 9, 9, 9, 9, 9, 9, 9, 9,10,10,10, 8, 8, 8, 8,
+ 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9,10,10,
+ 10, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9,
+ 9, 9, 9,10,10,10, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9,
+ 9, 9, 9, 9, 9, 9, 9, 9,10,10,10,10,10, 9, 9, 9,
+ 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9,10,10,10,
+ 10,10, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9,
+ 9, 9,10,10,10,10,10, 9, 9, 9, 9, 9, 9, 9, 9, 9,
+ 9, 9, 9, 9, 9, 9, 9,10,10,10,10,10, 9, 9, 9, 9,
+ 9, 9, 9, 9, 9, 9, 9, 9,10, 9, 9, 9,10,10,10,10,
+ 10,10,10, 9, 9, 9, 9, 9, 9,10, 9, 9, 9, 9, 9, 9,
+ 9,10,10,10,10,10,10,10, 9, 9, 9,10,10,10,10,10,
+ 9, 9, 9, 9, 9, 9,10,10,10,10,10,10,10, 9, 9,10,
+ 9,10, 9, 9, 9, 9, 9, 9, 9, 9,10,10,10,10,10,10,
+ 10,10,10,10, 9, 9,10,10, 9, 9, 9, 9, 9, 9, 9, 9,
+ 10,10,10,10,10,10,10,10,10,10,10,10,10, 9, 9, 9,
+ 9, 9, 9, 9, 9,10,10,10,10,10,10,10,10,10,10,10,
+ 10,10, 9, 9,10, 9, 9, 9, 9, 9,10,10,10,10,10,10,
+ 10,10,10,10,10, 9, 9,10,10, 9, 9,10, 9, 9, 9,10,
+ 10,10,10,10,10,10,10,10,10,10, 9, 9,10, 9, 9, 9,
+ 9, 9, 9, 9,10,10,10,10,10,10,10,10,10,10,10, 9,
+ 9, 9, 9,10, 9, 9, 9, 9, 9,
+};
+
+static const static_codebook _44c9_s_p8_1 = {
+ 2, 441,
+ (char *)_vq_lengthlist__44c9_s_p8_1,
+ 1, -529268736, 1611661312, 5, 0,
+ (long *)_vq_quantlist__44c9_s_p8_1,
+ 0
+};
+
+static const long _vq_quantlist__44c9_s_p9_0[] = {
+ 9,
+ 8,
+ 10,
+ 7,
+ 11,
+ 6,
+ 12,
+ 5,
+ 13,
+ 4,
+ 14,
+ 3,
+ 15,
+ 2,
+ 16,
+ 1,
+ 17,
+ 0,
+ 18,
+};
+
+static const char _vq_lengthlist__44c9_s_p9_0[] = {
+ 1, 4, 3,12,12,12,12,12,12,12,12,12,12,12,12,12,
+ 12,12,12, 4, 5, 6,12,12,12,12,12,12,12,12,12,12,
+ 12,12,12,12,12,12, 4, 6, 6,12,12,12,12,12,12,12,
+ 12,12,12,12,12,12,12,12,12,12,12,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,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,
+ 12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,
+ 12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,
+ 12,12,12,12,12,12,12,12,12,12,11,11,11,11,11,11,
+ 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
+ 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
+ 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
+ 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
+ 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
+ 11,11,11,11,11,11,11,11,11,
+};
+
+static const static_codebook _44c9_s_p9_0 = {
+ 2, 361,
+ (char *)_vq_lengthlist__44c9_s_p9_0,
+ 1, -508535424, 1631393792, 5, 0,
+ (long *)_vq_quantlist__44c9_s_p9_0,
+ 0
+};
+
+static const long _vq_quantlist__44c9_s_p9_1[] = {
+ 9,
+ 8,
+ 10,
+ 7,
+ 11,
+ 6,
+ 12,
+ 5,
+ 13,
+ 4,
+ 14,
+ 3,
+ 15,
+ 2,
+ 16,
+ 1,
+ 17,
+ 0,
+ 18,
+};
+
+static const char _vq_lengthlist__44c9_s_p9_1[] = {
+ 1, 4, 4, 7, 7, 7, 7, 8, 7, 9, 8, 9, 9,10,10,11,
+ 11,11,11, 6, 5, 5, 8, 8, 9, 9, 9, 8,10, 9,11,10,
+ 12,12,13,12,13,13, 5, 5, 5, 8, 8, 9, 9, 9, 9,10,
+ 10,11,11,12,12,13,12,13,13,17, 8, 8, 9, 9, 9, 9,
+ 9, 9,10,10,12,11,13,12,13,13,13,13,18, 8, 8, 9,
+ 9, 9, 9, 9, 9,11,11,12,12,13,13,13,13,13,13,17,
+ 13,12, 9, 9,10,10,10,10,11,11,12,12,12,13,13,13,
+ 14,14,18,13,12, 9, 9,10,10,10,10,11,11,12,12,13,
+ 13,13,14,14,14,17,18,18,10,10,10,10,11,11,11,12,
+ 12,12,14,13,14,13,13,14,18,18,18,10, 9,10, 9,11,
+ 11,12,12,12,12,13,13,15,14,14,14,18,18,16,13,14,
+ 10,11,11,11,12,13,13,13,13,14,13,13,14,14,18,18,
+ 18,14,12,11, 9,11,10,13,12,13,13,13,14,14,14,13,
+ 14,18,18,17,18,18,11,12,12,12,13,13,14,13,14,14,
+ 13,14,14,14,18,18,18,18,17,12,10,12, 9,13,11,13,
+ 14,14,14,14,14,15,14,18,18,17,17,18,14,15,12,13,
+ 13,13,14,13,14,14,15,14,15,14,18,17,18,18,18,15,
+ 15,12,10,14,10,14,14,13,13,14,14,14,14,18,16,18,
+ 18,18,18,17,14,14,13,14,14,13,13,14,14,14,15,15,
+ 18,18,18,18,17,17,17,14,14,14,12,14,13,14,14,15,
+ 14,15,14,18,18,18,18,18,18,18,17,16,13,13,13,14,
+ 14,14,14,15,16,15,18,18,18,18,18,18,18,17,17,13,
+ 13,13,13,14,13,14,15,15,15,
+};
+
+static const static_codebook _44c9_s_p9_1 = {
+ 2, 361,
+ (char *)_vq_lengthlist__44c9_s_p9_1,
+ 1, -518287360, 1622704128, 5, 0,
+ (long *)_vq_quantlist__44c9_s_p9_1,
+ 0
+};
+
+static const long _vq_quantlist__44c9_s_p9_2[] = {
+ 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 const char _vq_lengthlist__44c9_s_p9_2[] = {
+ 2, 4, 4, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 6, 6,
+ 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7,
+ 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7,
+ 7,
+};
+
+static const static_codebook _44c9_s_p9_2 = {
+ 1, 49,
+ (char *)_vq_lengthlist__44c9_s_p9_2,
+ 1, -526909440, 1611661312, 6, 0,
+ (long *)_vq_quantlist__44c9_s_p9_2,
+ 0
+};
+
+static const char _huff_lengthlist__44c9_s_short[] = {
+ 5,13,18,16,17,17,19,18,19,19, 5, 7,10,11,12,12,
+ 13,16,17,18, 6, 6, 7, 7, 9, 9,10,14,17,19, 8, 7,
+ 6, 5, 6, 7, 9,12,19,17, 8, 7, 7, 6, 5, 6, 8,11,
+ 15,19, 9, 8, 7, 6, 5, 5, 6, 8,13,15,11,10, 8, 8,
+ 7, 5, 4, 4,10,14,12,13,11, 9, 7, 6, 4, 2, 6,12,
+ 18,16,16,13, 8, 7, 7, 5, 8,13,16,17,18,15,11, 9,
+ 9, 8,10,13,
+};
+
+static const static_codebook _huff_book__44c9_s_short = {
+ 2, 100,
+ (char *)_huff_lengthlist__44c9_s_short,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
+static const char _huff_lengthlist__44c0_s_long[] = {
+ 5, 4, 8, 9, 8, 9,10,12,15, 4, 1, 5, 5, 6, 8,11,
+ 12,12, 8, 5, 8, 9, 9,11,13,12,12, 9, 5, 8, 5, 7,
+ 9,12,13,13, 8, 6, 8, 7, 7, 9,11,11,11, 9, 7, 9,
+ 7, 7, 7, 7,10,12,10,10,11, 9, 8, 7, 7, 9,11,11,
+ 12,13,12,11, 9, 8, 9,11,13,16,16,15,15,12,10,11,
+ 12,
+};
+
+static const static_codebook _huff_book__44c0_s_long = {
+ 2, 81,
+ (char *)_huff_lengthlist__44c0_s_long,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
+static const long _vq_quantlist__44c0_s_p1_0[] = {
+ 1,
+ 0,
+ 2,
+};
+
+static const char _vq_lengthlist__44c0_s_p1_0[] = {
+ 1, 5, 5, 0, 0, 0, 0, 0, 0, 5, 7, 7, 0, 0, 0, 0,
+ 0, 0, 5, 7, 7, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 5, 8, 7, 0, 0, 0, 0, 0, 0, 7, 9, 9, 0, 0, 0,
+ 0, 0, 0, 7, 9, 9, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 5, 7, 7, 0, 0, 0, 0, 0, 0, 7, 9, 9, 0, 0,
+ 0, 0, 0, 0, 7, 9, 9, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 5, 7, 7, 0, 0, 0, 0,
+ 0, 0, 8,10, 9, 0, 0, 0, 0, 0, 0, 7, 9, 9, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 7, 9, 9, 0, 0, 0,
+ 0, 0, 0, 9,10,11, 0, 0, 0, 0, 0, 0, 9,11,10, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 7, 9, 9, 0, 0,
+ 0, 0, 0, 0, 9,11, 9, 0, 0, 0, 0, 0, 0, 9,10,11,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 5, 7, 7, 0, 0, 0, 0, 0, 0, 7, 9, 9, 0, 0,
+ 0, 0, 0, 0, 8, 9, 9, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 7, 9, 9, 0, 0, 0, 0, 0, 0, 9,11,10, 0,
+ 0, 0, 0, 0, 0, 9, 9,11, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 7, 9,10, 0, 0, 0, 0, 0, 0, 9,10,11,
+ 0, 0, 0, 0, 0, 0, 9,11,10, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0,
+};
+
+static const static_codebook _44c0_s_p1_0 = {
+ 8, 6561,
+ (char *)_vq_lengthlist__44c0_s_p1_0,
+ 1, -535822336, 1611661312, 2, 0,
+ (long *)_vq_quantlist__44c0_s_p1_0,
+ 0
+};
+
+static const long _vq_quantlist__44c0_s_p2_0[] = {
+ 2,
+ 1,
+ 3,
+ 0,
+ 4,
+};
+
+static const char _vq_lengthlist__44c0_s_p2_0[] = {
+ 1, 4, 4, 6, 6, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 4, 5, 5, 7, 6, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 4, 5, 6, 7, 7, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6, 7, 7, 9, 9,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 6, 7, 7, 9, 9, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0,
+};
+
+static const static_codebook _44c0_s_p2_0 = {
+ 4, 625,
+ (char *)_vq_lengthlist__44c0_s_p2_0,
+ 1, -533725184, 1611661312, 3, 0,
+ (long *)_vq_quantlist__44c0_s_p2_0,
+ 0
+};
+
+static const long _vq_quantlist__44c0_s_p3_0[] = {
+ 4,
+ 3,
+ 5,
+ 2,
+ 6,
+ 1,
+ 7,
+ 0,
+ 8,
+};
+
+static const char _vq_lengthlist__44c0_s_p3_0[] = {
+ 1, 3, 2, 8, 7, 0, 0, 0, 0, 0, 0, 0, 6, 6, 0, 0,
+ 0, 0, 0, 0, 0, 6, 6, 0, 0, 0, 0, 0, 0, 0, 7, 7,
+ 0, 0, 0, 0, 0, 0, 0, 7, 7, 0, 0, 0, 0, 0, 0, 0,
+ 8, 8, 0, 0, 0, 0, 0, 0, 0, 8, 8, 0, 0, 0, 0, 0,
+ 0, 0, 9, 9, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0,
+};
+
+static const static_codebook _44c0_s_p3_0 = {
+ 2, 81,
+ (char *)_vq_lengthlist__44c0_s_p3_0,
+ 1, -531628032, 1611661312, 4, 0,
+ (long *)_vq_quantlist__44c0_s_p3_0,
+ 0
+};
+
+static const long _vq_quantlist__44c0_s_p4_0[] = {
+ 4,
+ 3,
+ 5,
+ 2,
+ 6,
+ 1,
+ 7,
+ 0,
+ 8,
+};
+
+static const char _vq_lengthlist__44c0_s_p4_0[] = {
+ 1, 3, 3, 6, 6, 6, 6, 8, 8, 0, 0, 0, 7, 7, 7, 7,
+ 9, 9, 0, 0, 0, 7, 7, 7, 7, 9, 9, 0, 0, 0, 7, 7,
+ 7, 8, 9, 9, 0, 0, 0, 7, 7, 7, 7, 9, 9, 0, 0, 0,
+ 9, 9, 8, 8,10,10, 0, 0, 0, 8, 9, 8, 8,10,10, 0,
+ 0, 0,10,10, 9, 9,10,10, 0, 0, 0, 0, 0, 9, 9,10,
+ 10,
+};
+
+static const static_codebook _44c0_s_p4_0 = {
+ 2, 81,
+ (char *)_vq_lengthlist__44c0_s_p4_0,
+ 1, -531628032, 1611661312, 4, 0,
+ (long *)_vq_quantlist__44c0_s_p4_0,
+ 0
+};
+
+static const long _vq_quantlist__44c0_s_p5_0[] = {
+ 8,
+ 7,
+ 9,
+ 6,
+ 10,
+ 5,
+ 11,
+ 4,
+ 12,
+ 3,
+ 13,
+ 2,
+ 14,
+ 1,
+ 15,
+ 0,
+ 16,
+};
+
+static const char _vq_lengthlist__44c0_s_p5_0[] = {
+ 1, 4, 3, 6, 6, 8, 7, 8, 8, 8, 8, 9, 9,10,10,11,
+ 11, 0, 0, 0, 7, 7, 8, 8, 9, 9, 9, 9, 9,10,10,10,
+ 11,11, 0, 0, 0, 7, 7, 8, 8, 9, 9, 9, 9,10,10,10,
+ 10,11,11, 0, 0, 0, 7, 7, 8, 8, 9, 9, 9, 9,10,10,
+ 11,11,11,11, 0, 0, 0, 7, 7, 8, 8, 9, 9, 9, 9,10,
+ 10,11,11,11,11, 0, 0, 0, 8, 8, 9, 9, 9, 9,10,10,
+ 10,10,11,11,12,12, 0, 0, 0, 8, 8, 9, 9, 9, 9,10,
+ 10,10,10,11,11,12,12, 0, 0, 0, 9, 9, 9, 9,10,10,
+ 10,10,11,11,11,12,12,12, 0, 0, 0, 0, 0, 9, 9,10,
+ 10,10,10,11,11,11,11,12,12, 0, 0, 0, 0, 0, 9, 9,
+ 10,10,10,10,11,11,12,12,13,13, 0, 0, 0, 0, 0, 9,
+ 9,10,10,10,10,11,11,12,12,13,13, 0, 0, 0, 0, 0,
+ 10,10,11,11,11,11,11,12,12,12,13,13, 0, 0, 0, 0,
+ 0, 0, 0,11,10,11,11,11,11,12,12,13,13, 0, 0, 0,
+ 0, 0, 0, 0,11,11,12,11,12,12,12,12,13,13, 0, 0,
+ 0, 0, 0, 0, 0,11,11,11,12,12,12,12,13,13,13, 0,
+ 0, 0, 0, 0, 0, 0,12,12,12,12,12,13,13,13,14,14,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0,12,12,12,12,13,13,14,
+ 14,
+};
+
+static const static_codebook _44c0_s_p5_0 = {
+ 2, 289,
+ (char *)_vq_lengthlist__44c0_s_p5_0,
+ 1, -529530880, 1611661312, 5, 0,
+ (long *)_vq_quantlist__44c0_s_p5_0,
+ 0
+};
+
+static const long _vq_quantlist__44c0_s_p6_0[] = {
+ 1,
+ 0,
+ 2,
+};
+
+static const char _vq_lengthlist__44c0_s_p6_0[] = {
+ 1, 4, 4, 7, 6, 6, 7, 6, 6, 4, 7, 7,10, 9, 9,10,
+ 9, 9, 4, 6, 7,10, 9, 9,11, 9, 9, 7,10,10,11,11,
+ 11,12,10,11, 6, 9, 9,11,10,11,11,10,10, 6, 9, 9,
+ 11,10,11,11,10,10, 7,11,10,12,11,11,11,11,11, 7,
+ 9, 9,10,10,10,11,11,10, 6, 9, 9,11,10,10,11,10,
+ 10,
+};
+
+static const static_codebook _44c0_s_p6_0 = {
+ 4, 81,
+ (char *)_vq_lengthlist__44c0_s_p6_0,
+ 1, -529137664, 1618345984, 2, 0,
+ (long *)_vq_quantlist__44c0_s_p6_0,
+ 0
+};
+
+static const long _vq_quantlist__44c0_s_p6_1[] = {
+ 5,
+ 4,
+ 6,
+ 3,
+ 7,
+ 2,
+ 8,
+ 1,
+ 9,
+ 0,
+ 10,
+};
+
+static const char _vq_lengthlist__44c0_s_p6_1[] = {
+ 2, 3, 3, 6, 6, 7, 7, 7, 7, 7, 8,10,10,10, 6, 6,
+ 7, 7, 8, 8, 8, 8,10,10,10, 6, 6, 7, 7, 8, 8, 8,
+ 8,10,10,10, 7, 7, 7, 7, 8, 8, 8, 8,10,10,10, 7,
+ 7, 7, 7, 8, 8, 8, 8,10,10,10, 8, 7, 8, 8, 8, 8,
+ 8, 8,10,10,10, 7, 7, 8, 8, 8, 8, 8, 8,10,10,10,
+ 8, 8, 8, 8, 8, 8, 8, 8,10,10,10,10,10, 8, 8, 8,
+ 8, 8, 8,10,10,10,10,10, 9, 9, 8, 8, 8, 8,10,10,
+ 10,10,10, 8, 8, 8, 8, 8, 8,
+};
+
+static const static_codebook _44c0_s_p6_1 = {
+ 2, 121,
+ (char *)_vq_lengthlist__44c0_s_p6_1,
+ 1, -531365888, 1611661312, 4, 0,
+ (long *)_vq_quantlist__44c0_s_p6_1,
+ 0
+};
+
+static const long _vq_quantlist__44c0_s_p7_0[] = {
+ 6,
+ 5,
+ 7,
+ 4,
+ 8,
+ 3,
+ 9,
+ 2,
+ 10,
+ 1,
+ 11,
+ 0,
+ 12,
+};
+
+static const char _vq_lengthlist__44c0_s_p7_0[] = {
+ 1, 4, 4, 6, 6, 7, 7, 7, 7, 8, 8, 9, 9, 7, 5, 5,
+ 7, 7, 8, 8, 8, 8, 9, 9,10,10, 7, 5, 6, 7, 7, 8,
+ 8, 8, 8, 9, 9,10,10, 0, 8, 8, 8, 8, 9, 9, 9, 9,
+ 10,10,11,11, 0, 8, 8, 8, 8, 9, 9, 9, 9,10,10,11,
+ 11, 0,12,12, 9, 9,10,10,10,10,11,11,11,11, 0,13,
+ 13, 9, 9, 9, 9,10,10,11,11,11,12, 0, 0, 0,10,10,
+ 10,10,11,11,11,11,12,12, 0, 0, 0,10,10, 9, 9,11,
+ 11,11,12,12,12, 0, 0, 0,13,13,10,10,11,11,12,12,
+ 13,13, 0, 0, 0,14,14,10,10,11,11,12,12,13,13, 0,
+ 0, 0, 0, 0,11,11,11,11,13,12,13,13, 0, 0, 0, 0,
+ 0,12,12,11,11,12,12,13,13,
+};
+
+static const static_codebook _44c0_s_p7_0 = {
+ 2, 169,
+ (char *)_vq_lengthlist__44c0_s_p7_0,
+ 1, -526516224, 1616117760, 4, 0,
+ (long *)_vq_quantlist__44c0_s_p7_0,
+ 0
+};
+
+static const long _vq_quantlist__44c0_s_p7_1[] = {
+ 2,
+ 1,
+ 3,
+ 0,
+ 4,
+};
+
+static const char _vq_lengthlist__44c0_s_p7_1[] = {
+ 2, 3, 3, 5, 5, 6, 6, 6, 5, 5, 6, 6, 6, 5, 5, 6,
+ 6, 6, 5, 5, 6, 6, 6, 5, 5,
+};
+
+static const static_codebook _44c0_s_p7_1 = {
+ 2, 25,
+ (char *)_vq_lengthlist__44c0_s_p7_1,
+ 1, -533725184, 1611661312, 3, 0,
+ (long *)_vq_quantlist__44c0_s_p7_1,
+ 0
+};
+
+static const long _vq_quantlist__44c0_s_p8_0[] = {
+ 2,
+ 1,
+ 3,
+ 0,
+ 4,
+};
+
+static const char _vq_lengthlist__44c0_s_p8_0[] = {
+ 1, 5, 5,10,10, 6, 9, 8,10,10, 6,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, 8,10,10,
+ 10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,
+ 10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,
+ 10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,
+ 10,10,10,10,10,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,11,11,
+ 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
+ 11,11,11,11,11,11,11,11,11,11,10,11,11,11,11,11,
+ 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
+ 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
+ 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
+ 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
+ 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
+ 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
+ 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
+ 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
+ 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
+ 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
+ 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
+ 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
+ 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
+ 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
+ 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
+ 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
+ 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
+ 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
+ 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
+ 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
+ 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
+ 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
+ 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
+ 11,
+};
+
+static const static_codebook _44c0_s_p8_0 = {
+ 4, 625,
+ (char *)_vq_lengthlist__44c0_s_p8_0,
+ 1, -518283264, 1627103232, 3, 0,
+ (long *)_vq_quantlist__44c0_s_p8_0,
+ 0
+};
+
+static const long _vq_quantlist__44c0_s_p8_1[] = {
+ 6,
+ 5,
+ 7,
+ 4,
+ 8,
+ 3,
+ 9,
+ 2,
+ 10,
+ 1,
+ 11,
+ 0,
+ 12,
+};
+
+static const char _vq_lengthlist__44c0_s_p8_1[] = {
+ 1, 4, 4, 6, 6, 7, 7, 9, 9,11,12,13,12, 6, 5, 5,
+ 7, 7, 8, 8,10, 9,12,12,12,12, 6, 5, 5, 7, 7, 8,
+ 8,10, 9,12,11,11,13,16, 7, 7, 8, 8, 9, 9,10,10,
+ 12,12,13,12,16, 7, 7, 8, 7, 9, 9,10,10,11,12,12,
+ 13,16,10,10, 8, 8,10,10,11,12,12,12,13,13,16,11,
+ 10, 8, 7,11,10,11,11,12,11,13,13,16,16,16,10,10,
+ 10,10,11,11,13,12,13,13,16,16,16,11, 9,11, 9,15,
+ 13,12,13,13,13,16,16,16,15,13,11,11,12,13,12,12,
+ 14,13,16,16,16,14,13,11,11,13,12,14,13,13,13,16,
+ 16,16,16,16,13,13,13,12,14,13,14,14,16,16,16,16,
+ 16,13,13,12,12,14,14,15,13,
+};
+
+static const static_codebook _44c0_s_p8_1 = {
+ 2, 169,
+ (char *)_vq_lengthlist__44c0_s_p8_1,
+ 1, -522616832, 1620115456, 4, 0,
+ (long *)_vq_quantlist__44c0_s_p8_1,
+ 0
+};
+
+static const long _vq_quantlist__44c0_s_p8_2[] = {
+ 8,
+ 7,
+ 9,
+ 6,
+ 10,
+ 5,
+ 11,
+ 4,
+ 12,
+ 3,
+ 13,
+ 2,
+ 14,
+ 1,
+ 15,
+ 0,
+ 16,
+};
+
+static const char _vq_lengthlist__44c0_s_p8_2[] = {
+ 2, 4, 4, 6, 6, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8,
+ 8,10,10,10, 7, 7, 7, 8, 8, 8, 9, 9, 9, 9, 9, 9,
+ 9, 9,10,10,10, 7, 7, 7, 7, 8, 8, 9, 9, 9, 9, 9,
+ 9, 9, 9,10,10,10, 7, 7, 8, 8, 8, 8, 9, 9, 9, 9,
+ 9,10, 9, 9,10,10,10, 7, 7, 8, 8, 9, 8, 9, 9, 9,
+ 9,10, 9, 9,10,10,10,10, 8, 8, 8, 8, 9, 8, 9, 9,
+ 9, 9, 9,10, 9,10,10,10,10, 7, 7, 8, 8, 9, 9, 9,
+ 9, 9, 9,10, 9,10,10,10,10,10, 8, 8, 8, 9, 9, 9,
+ 9, 9, 9, 9,10,10,10, 9,11,10,10,10,10, 8, 8, 9,
+ 9, 9, 9, 9,10, 9, 9, 9,10,10,10,10,11,11, 9, 9,
+ 9, 9, 9, 9, 9, 9,10, 9, 9,10,11,10,10,11,11, 9,
+ 9, 9, 9, 9, 9, 9, 9, 9, 9,10, 9,11,11,10,11,11,
+ 9, 9, 9, 9, 9, 9, 9, 9, 9, 9,10, 9,11,10,10,11,
+ 11,11,11, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9,10,10,10,
+ 11,11,11,11, 9,10, 9,10, 9, 9, 9, 9,10, 9,10,11,
+ 10,11,10,10,10,10,10, 9, 9, 9,10, 9, 9, 9,10,11,
+ 11,10,11,11,10,11,10,10,10, 9, 9, 9, 9,10, 9, 9,
+ 10,11,10,11,11,11,11,10,11,10,10, 9,10, 9, 9, 9,
+ 10,
+};
+
+static const static_codebook _44c0_s_p8_2 = {
+ 2, 289,
+ (char *)_vq_lengthlist__44c0_s_p8_2,
+ 1, -529530880, 1611661312, 5, 0,
+ (long *)_vq_quantlist__44c0_s_p8_2,
+ 0
+};
+
+static const char _huff_lengthlist__44c0_s_short[] = {
+ 9, 8,12,11,12,13,14,14,16, 6, 1, 5, 6, 6, 9,12,
+ 14,17, 9, 4, 5, 9, 7, 9,13,15,16, 8, 5, 8, 6, 8,
+ 10,13,17,17, 9, 6, 7, 7, 8, 9,13,15,17,11, 8, 9,
+ 9, 9,10,12,16,16,13, 7, 8, 7, 7, 9,12,14,15,13,
+ 6, 7, 5, 5, 7,10,13,13,14, 7, 8, 5, 6, 7, 9,10,
+ 12,
+};
+
+static const static_codebook _huff_book__44c0_s_short = {
+ 2, 81,
+ (char *)_huff_lengthlist__44c0_s_short,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
+static const char _huff_lengthlist__44c0_sm_long[] = {
+ 5, 4, 9,10, 9,10,11,12,13, 4, 1, 5, 7, 7, 9,11,
+ 12,14, 8, 5, 7, 9, 8,10,13,13,13,10, 7, 9, 4, 6,
+ 7,10,12,14, 9, 6, 7, 6, 6, 7,10,12,12, 9, 8, 9,
+ 7, 6, 7, 8,11,12,11,11,11, 9, 8, 7, 8,10,12,12,
+ 13,14,12,11, 9, 9, 9,12,12,17,17,15,16,12,10,11,
+ 13,
+};
+
+static const static_codebook _huff_book__44c0_sm_long = {
+ 2, 81,
+ (char *)_huff_lengthlist__44c0_sm_long,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
+static const long _vq_quantlist__44c0_sm_p1_0[] = {
+ 1,
+ 0,
+ 2,
+};
+
+static const char _vq_lengthlist__44c0_sm_p1_0[] = {
+ 1, 5, 5, 0, 0, 0, 0, 0, 0, 5, 7, 7, 0, 0, 0, 0,
+ 0, 0, 5, 7, 7, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 5, 8, 7, 0, 0, 0, 0, 0, 0, 7, 9, 9, 0, 0, 0,
+ 0, 0, 0, 7, 8, 9, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 5, 7, 7, 0, 0, 0, 0, 0, 0, 7, 9, 8, 0, 0,
+ 0, 0, 0, 0, 7, 9, 9, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 5, 8, 7, 0, 0, 0, 0,
+ 0, 0, 8, 9, 9, 0, 0, 0, 0, 0, 0, 8, 9, 9, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 7, 9, 9, 0, 0, 0,
+ 0, 0, 0, 9,10,10, 0, 0, 0, 0, 0, 0, 9,10,10, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 7, 9, 9, 0, 0,
+ 0, 0, 0, 0, 8,10, 9, 0, 0, 0, 0, 0, 0, 9,10,10,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 5, 7, 8, 0, 0, 0, 0, 0, 0, 7, 9, 9, 0, 0,
+ 0, 0, 0, 0, 8, 9, 9, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 7, 9, 9, 0, 0, 0, 0, 0, 0, 9,10,10, 0,
+ 0, 0, 0, 0, 0, 9, 9,10, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 7, 9, 9, 0, 0, 0, 0, 0, 0, 9,10,10,
+ 0, 0, 0, 0, 0, 0, 9,10,10, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0,
+};
+
+static const static_codebook _44c0_sm_p1_0 = {
+ 8, 6561,
+ (char *)_vq_lengthlist__44c0_sm_p1_0,
+ 1, -535822336, 1611661312, 2, 0,
+ (long *)_vq_quantlist__44c0_sm_p1_0,
+ 0
+};
+
+static const long _vq_quantlist__44c0_sm_p2_0[] = {
+ 2,
+ 1,
+ 3,
+ 0,
+ 4,
+};
+
+static const char _vq_lengthlist__44c0_sm_p2_0[] = {
+ 1, 4, 4, 6, 6, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 4, 5, 5, 7, 7, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 4, 5, 5, 7, 7, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6, 7, 7, 9, 9,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 7, 7, 7, 9, 9, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0,
+};
+
+static const static_codebook _44c0_sm_p2_0 = {
+ 4, 625,
+ (char *)_vq_lengthlist__44c0_sm_p2_0,
+ 1, -533725184, 1611661312, 3, 0,
+ (long *)_vq_quantlist__44c0_sm_p2_0,
+ 0
+};
+
+static const long _vq_quantlist__44c0_sm_p3_0[] = {
+ 4,
+ 3,
+ 5,
+ 2,
+ 6,
+ 1,
+ 7,
+ 0,
+ 8,
+};
+
+static const char _vq_lengthlist__44c0_sm_p3_0[] = {
+ 1, 3, 3, 7, 7, 0, 0, 0, 0, 0, 5, 4, 7, 7, 0, 0,
+ 0, 0, 0, 5, 5, 7, 7, 0, 0, 0, 0, 0, 6, 7, 8, 8,
+ 0, 0, 0, 0, 0, 0, 0, 8, 8, 0, 0, 0, 0, 0, 0, 0,
+ 9,10, 0, 0, 0, 0, 0, 0, 0, 9, 9, 0, 0, 0, 0, 0,
+ 0, 0,11,11, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0,
+};
+
+static const static_codebook _44c0_sm_p3_0 = {
+ 2, 81,
+ (char *)_vq_lengthlist__44c0_sm_p3_0,
+ 1, -531628032, 1611661312, 4, 0,
+ (long *)_vq_quantlist__44c0_sm_p3_0,
+ 0
+};
+
+static const long _vq_quantlist__44c0_sm_p4_0[] = {
+ 4,
+ 3,
+ 5,
+ 2,
+ 6,
+ 1,
+ 7,
+ 0,
+ 8,
+};
+
+static const char _vq_lengthlist__44c0_sm_p4_0[] = {
+ 1, 4, 3, 6, 6, 7, 7, 9, 9, 0, 5, 5, 7, 7, 8, 7,
+ 9, 9, 0, 5, 5, 7, 7, 8, 8, 9, 9, 0, 7, 7, 8, 8,
+ 8, 8,10,10, 0, 0, 0, 8, 8, 8, 8,10,10, 0, 0, 0,
+ 9, 9, 9, 9,11,11, 0, 0, 0, 9, 9, 9, 9,11,11, 0,
+ 0, 0,10,10,10,10,11,11, 0, 0, 0, 0, 0, 9, 9,11,
+ 11,
+};
+
+static const static_codebook _44c0_sm_p4_0 = {
+ 2, 81,
+ (char *)_vq_lengthlist__44c0_sm_p4_0,
+ 1, -531628032, 1611661312, 4, 0,
+ (long *)_vq_quantlist__44c0_sm_p4_0,
+ 0
+};
+
+static const long _vq_quantlist__44c0_sm_p5_0[] = {
+ 8,
+ 7,
+ 9,
+ 6,
+ 10,
+ 5,
+ 11,
+ 4,
+ 12,
+ 3,
+ 13,
+ 2,
+ 14,
+ 1,
+ 15,
+ 0,
+ 16,
+};
+
+static const char _vq_lengthlist__44c0_sm_p5_0[] = {
+ 1, 4, 4, 6, 6, 8, 8, 8, 8, 8, 8, 9, 9,10,10,11,
+ 11, 0, 6, 6, 7, 7, 8, 8, 9, 9, 9, 9,10,10,10,11,
+ 11,11, 0, 5, 6, 7, 7, 8, 8, 9, 9, 9, 9,10,10,10,
+ 11,11,11, 0, 7, 7, 8, 8, 8, 8, 9, 9, 9, 9,10,10,
+ 11,11,12,12, 0, 0, 0, 8, 8, 8, 8, 9, 9, 9, 9,10,
+ 10,11,11,12,12, 0, 0, 0, 8, 8, 9, 9,10,10,10,10,
+ 11,11,11,11,12,12, 0, 0, 0, 8, 8, 9, 9,10,10,10,
+ 10,11,11,11,11,12,12, 0, 0, 0, 9, 9, 9, 9,10,10,
+ 10,10,11,11,12,12,12,13, 0, 0, 0, 0, 0, 9, 9,10,
+ 10,10,10,11,11,12,12,13,13, 0, 0, 0, 0, 0, 9, 9,
+ 10,10,11,11,11,11,12,12,13,13, 0, 0, 0, 0, 0, 9,
+ 9,10,10,11,10,11,11,12,12,13,13, 0, 0, 0, 0, 0,
+ 10,10,10,10,11,11,12,12,12,13,13,13, 0, 0, 0, 0,
+ 0, 0, 0,10,10,11,11,12,12,12,13,13,13, 0, 0, 0,
+ 0, 0, 0, 0,11,11,12,12,12,12,13,13,14,14, 0, 0,
+ 0, 0, 0, 0, 0,11,11,12,11,12,12,13,13,13,13, 0,
+ 0, 0, 0, 0, 0, 0,12,12,12,12,13,13,13,13,14,14,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0,12,12,12,12,13,13,14,
+ 14,
+};
+
+static const static_codebook _44c0_sm_p5_0 = {
+ 2, 289,
+ (char *)_vq_lengthlist__44c0_sm_p5_0,
+ 1, -529530880, 1611661312, 5, 0,
+ (long *)_vq_quantlist__44c0_sm_p5_0,
+ 0
+};
+
+static const long _vq_quantlist__44c0_sm_p6_0[] = {
+ 1,
+ 0,
+ 2,
+};
+
+static const char _vq_lengthlist__44c0_sm_p6_0[] = {
+ 1, 4, 4, 7, 6, 6, 7, 6, 6, 4, 7, 7,10, 9, 9,11,
+ 9, 9, 4, 7, 7,10, 9, 9,11, 9, 9, 7,10,10,10,11,
+ 11,11,10,10, 6, 9, 9,11,11,10,11,10,10, 6, 9, 9,
+ 11,10,11,11,10,10, 7,11,10,11,11,11,11,11,11, 6,
+ 9, 9,11,10,10,11,11,10, 6, 9, 9,11,10,10,11,10,
+ 11,
+};
+
+static const static_codebook _44c0_sm_p6_0 = {
+ 4, 81,
+ (char *)_vq_lengthlist__44c0_sm_p6_0,
+ 1, -529137664, 1618345984, 2, 0,
+ (long *)_vq_quantlist__44c0_sm_p6_0,
+ 0
+};
+
+static const long _vq_quantlist__44c0_sm_p6_1[] = {
+ 5,
+ 4,
+ 6,
+ 3,
+ 7,
+ 2,
+ 8,
+ 1,
+ 9,
+ 0,
+ 10,
+};
+
+static const char _vq_lengthlist__44c0_sm_p6_1[] = {
+ 2, 4, 4, 6, 6, 7, 7, 7, 7, 7, 8, 9, 5, 5, 6, 6,
+ 7, 7, 8, 8, 8, 8, 9, 5, 5, 6, 6, 7, 7, 8, 8, 8,
+ 8,10, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8,10,10,10, 7,
+ 7, 7, 7, 8, 8, 8, 8,10,10,10, 8, 8, 8, 8, 8, 8,
+ 8, 8,10,10,10, 8, 8, 8, 8, 8, 8, 8, 8,10,10,10,
+ 8, 8, 8, 8, 8, 8, 8, 8,10,10,10,10,10, 8, 8, 8,
+ 8, 8, 8,10,10,10,10,10, 9, 9, 8, 8, 8, 8,10,10,
+ 10,10,10, 8, 8, 8, 8, 8, 8,
+};
+
+static const static_codebook _44c0_sm_p6_1 = {
+ 2, 121,
+ (char *)_vq_lengthlist__44c0_sm_p6_1,
+ 1, -531365888, 1611661312, 4, 0,
+ (long *)_vq_quantlist__44c0_sm_p6_1,
+ 0
+};
+
+static const long _vq_quantlist__44c0_sm_p7_0[] = {
+ 6,
+ 5,
+ 7,
+ 4,
+ 8,
+ 3,
+ 9,
+ 2,
+ 10,
+ 1,
+ 11,
+ 0,
+ 12,
+};
+
+static const char _vq_lengthlist__44c0_sm_p7_0[] = {
+ 1, 4, 4, 6, 6, 7, 7, 7, 7, 8, 8, 9, 9, 7, 5, 5,
+ 7, 7, 8, 8, 8, 8, 9, 9,10,10, 7, 6, 5, 7, 7, 8,
+ 8, 8, 8, 9, 9,10,10, 0, 8, 8, 8, 8, 9, 9, 9, 9,
+ 10,10,11,11, 0, 8, 8, 8, 8, 9, 9, 9, 9,10,10,11,
+ 11, 0,12,12, 9, 9,10,10,10,10,11,11,11,11, 0,13,
+ 13, 9, 9, 9, 9,10,10,11,11,11,12, 0, 0, 0, 9,10,
+ 10,10,11,11,12,11,12,12, 0, 0, 0,10,10, 9, 9,11,
+ 11,12,12,12,12, 0, 0, 0,13,13,10,10,11,11,12,12,
+ 13,13, 0, 0, 0,14,14,10,10,11,11,12,12,13,13, 0,
+ 0, 0, 0, 0,11,12,11,11,13,12,13,13, 0, 0, 0, 0,
+ 0,12,12,11,11,13,12,14,14,
+};
+
+static const static_codebook _44c0_sm_p7_0 = {
+ 2, 169,
+ (char *)_vq_lengthlist__44c0_sm_p7_0,
+ 1, -526516224, 1616117760, 4, 0,
+ (long *)_vq_quantlist__44c0_sm_p7_0,
+ 0
+};
+
+static const long _vq_quantlist__44c0_sm_p7_1[] = {
+ 2,
+ 1,
+ 3,
+ 0,
+ 4,
+};
+
+static const char _vq_lengthlist__44c0_sm_p7_1[] = {
+ 2, 4, 4, 4, 4, 6, 5, 5, 5, 5, 6, 5, 5, 5, 5, 6,
+ 6, 6, 5, 5, 6, 6, 6, 5, 5,
+};
+
+static const static_codebook _44c0_sm_p7_1 = {
+ 2, 25,
+ (char *)_vq_lengthlist__44c0_sm_p7_1,
+ 1, -533725184, 1611661312, 3, 0,
+ (long *)_vq_quantlist__44c0_sm_p7_1,
+ 0
+};
+
+static const long _vq_quantlist__44c0_sm_p8_0[] = {
+ 4,
+ 3,
+ 5,
+ 2,
+ 6,
+ 1,
+ 7,
+ 0,
+ 8,
+};
+
+static const char _vq_lengthlist__44c0_sm_p8_0[] = {
+ 1, 3, 3,11,11,11,11,11,11, 3, 7, 6,11,11,11,11,
+ 11,11, 4, 8, 7,11,11,11,11,11,11,11,11,11,11,11,
+ 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
+ 11,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,
+};
+
+static const static_codebook _44c0_sm_p8_0 = {
+ 2, 81,
+ (char *)_vq_lengthlist__44c0_sm_p8_0,
+ 1, -516186112, 1627103232, 4, 0,
+ (long *)_vq_quantlist__44c0_sm_p8_0,
+ 0
+};
+
+static const long _vq_quantlist__44c0_sm_p8_1[] = {
+ 6,
+ 5,
+ 7,
+ 4,
+ 8,
+ 3,
+ 9,
+ 2,
+ 10,
+ 1,
+ 11,
+ 0,
+ 12,
+};
+
+static const char _vq_lengthlist__44c0_sm_p8_1[] = {
+ 1, 4, 4, 6, 6, 7, 7, 9, 9,10,11,12,12, 6, 5, 5,
+ 7, 7, 8, 8,10,10,12,11,12,12, 6, 5, 5, 7, 7, 8,
+ 8,10,10,12,11,12,12,17, 7, 7, 8, 8, 9, 9,10,10,
+ 12,12,13,13,18, 7, 7, 8, 7, 9, 9,10,10,12,12,12,
+ 13,19,10,10, 8, 8,10,10,11,11,12,12,13,14,19,11,
+ 10, 8, 7,10,10,11,11,12,12,13,12,19,19,19,10,10,
+ 10,10,11,11,12,12,13,13,19,19,19,11, 9,11, 9,14,
+ 12,13,12,13,13,19,20,18,13,14,11,11,12,12,13,13,
+ 14,13,20,20,20,15,13,11,10,13,11,13,13,14,13,20,
+ 20,20,20,20,13,14,12,12,13,13,13,13,20,20,20,20,
+ 20,13,13,12,12,16,13,15,13,
+};
+
+static const static_codebook _44c0_sm_p8_1 = {
+ 2, 169,
+ (char *)_vq_lengthlist__44c0_sm_p8_1,
+ 1, -522616832, 1620115456, 4, 0,
+ (long *)_vq_quantlist__44c0_sm_p8_1,
+ 0
+};
+
+static const long _vq_quantlist__44c0_sm_p8_2[] = {
+ 8,
+ 7,
+ 9,
+ 6,
+ 10,
+ 5,
+ 11,
+ 4,
+ 12,
+ 3,
+ 13,
+ 2,
+ 14,
+ 1,
+ 15,
+ 0,
+ 16,
+};
+
+static const char _vq_lengthlist__44c0_sm_p8_2[] = {
+ 2, 5, 5, 6, 6, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8,
+ 8,10, 6, 6, 7, 7, 7, 7, 8, 8, 9, 9, 9, 9, 9, 9,
+ 9, 9,10, 6, 6, 7, 7, 8, 7, 8, 8, 9, 9, 9, 9, 9,
+ 9, 9, 9,10, 7, 7, 7, 7, 8, 8, 8, 9, 9, 9, 9, 9,
+ 9, 9, 9, 9,10,10,10, 7, 7, 8, 8, 9, 8, 9, 9, 9,
+ 9,10, 9, 9,10,10,10,11, 8, 8, 8, 8, 9, 9, 9, 9,
+ 9, 9, 9,10, 9,10,10,10,10, 8, 8, 8, 8, 9, 9, 9,
+ 9, 9, 9, 9, 9,10,10,11,10,10, 8, 8, 9, 9, 9, 9,
+ 9, 9, 9, 9, 9, 9,10,10,10,10,10,11,11, 8, 8, 9,
+ 9, 9, 9, 9, 9, 9, 9, 9,10,11,11,11,11,11, 9, 9,
+ 9, 9, 9, 9, 9, 9,10, 9,10, 9,11,11,10,11,11, 9,
+ 9, 9, 9, 9, 9, 9, 9, 9, 9,10, 9,11,11,10,11,11,
+ 9, 9, 9, 9, 9, 9, 9, 9, 9, 9,10, 9,11,10,11,11,
+ 11,11,11, 9, 9,10, 9, 9, 9, 9, 9, 9, 9,10,11,10,
+ 11,11,11,11,10,10,10,10, 9, 9, 9, 9, 9, 9,10,11,
+ 11,11,11,11,11, 9,10, 9, 9, 9, 9, 9, 9, 9, 9,11,
+ 11,10,11,11,11,10,10,10, 9, 9, 9, 9, 9, 9, 9, 9,
+ 10,11,10,11,11,11,11,11,11, 9, 9, 9, 9, 9, 9, 9,
+ 9,
+};
+
+static const static_codebook _44c0_sm_p8_2 = {
+ 2, 289,
+ (char *)_vq_lengthlist__44c0_sm_p8_2,
+ 1, -529530880, 1611661312, 5, 0,
+ (long *)_vq_quantlist__44c0_sm_p8_2,
+ 0
+};
+
+static const char _huff_lengthlist__44c0_sm_short[] = {
+ 6, 6,12,13,13,14,16,17,17, 4, 2, 5, 8, 7, 9,12,
+ 15,15, 9, 4, 5, 9, 7, 9,12,16,18,11, 6, 7, 4, 6,
+ 8,11,14,18,10, 5, 6, 5, 5, 7,10,14,17,10, 5, 7,
+ 7, 6, 7,10,13,16,11, 5, 7, 7, 7, 8,10,12,15,13,
+ 6, 7, 5, 5, 7, 9,12,13,16, 8, 9, 6, 6, 7, 9,10,
+ 12,
+};
+
+static const static_codebook _huff_book__44c0_sm_short = {
+ 2, 81,
+ (char *)_huff_lengthlist__44c0_sm_short,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
+static const char _huff_lengthlist__44c1_s_long[] = {
+ 5, 5, 9,10, 9, 9,10,11,12, 5, 1, 5, 6, 6, 7,10,
+ 12,14, 9, 5, 6, 8, 8,10,12,14,14,10, 5, 8, 5, 6,
+ 8,11,13,14, 9, 5, 7, 6, 6, 8,10,12,11, 9, 7, 9,
+ 7, 6, 6, 7,10,10,10, 9,12, 9, 8, 7, 7,10,12,11,
+ 11,13,12,10, 9, 8, 9,11,11,14,15,15,13,11, 9, 9,
+ 11,
+};
+
+static const static_codebook _huff_book__44c1_s_long = {
+ 2, 81,
+ (char *)_huff_lengthlist__44c1_s_long,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
+static const long _vq_quantlist__44c1_s_p1_0[] = {
+ 1,
+ 0,
+ 2,
+};
+
+static const char _vq_lengthlist__44c1_s_p1_0[] = {
+ 2, 4, 4, 0, 0, 0, 0, 0, 0, 5, 7, 6, 0, 0, 0, 0,
+ 0, 0, 5, 6, 7, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 5, 7, 7, 0, 0, 0, 0, 0, 0, 7, 8, 8, 0, 0, 0,
+ 0, 0, 0, 7, 8, 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, 5, 7, 7, 0, 0, 0, 0, 0, 0, 7, 8, 8, 0, 0,
+ 0, 0, 0, 0, 7, 8, 8, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 4, 7, 7, 0, 0, 0, 0,
+ 0, 0, 7, 8, 8, 0, 0, 0, 0, 0, 0, 7, 8, 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, 7, 8, 8, 0, 0, 0,
+ 0, 0, 0, 8, 9,10, 0, 0, 0, 0, 0, 0, 8, 9, 9, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6, 8, 8, 0, 0,
+ 0, 0, 0, 0, 8, 9, 8, 0, 0, 0, 0, 0, 0, 8, 9, 9,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 4, 7, 7, 0, 0, 0, 0, 0, 0, 7, 8, 8, 0, 0,
+ 0, 0, 0, 0, 7, 8, 9, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 6, 8, 8, 0, 0, 0, 0, 0, 0, 8,10, 9, 0,
+ 0, 0, 0, 0, 0, 8, 8, 9, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 7, 8, 8, 0, 0, 0, 0, 0, 0, 8, 9, 9,
+ 0, 0, 0, 0, 0, 0, 8, 9, 9, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0,
+};
+
+static const static_codebook _44c1_s_p1_0 = {
+ 8, 6561,
+ (char *)_vq_lengthlist__44c1_s_p1_0,
+ 1, -535822336, 1611661312, 2, 0,
+ (long *)_vq_quantlist__44c1_s_p1_0,
+ 0
+};
+
+static const long _vq_quantlist__44c1_s_p2_0[] = {
+ 2,
+ 1,
+ 3,
+ 0,
+ 4,
+};
+
+static const char _vq_lengthlist__44c1_s_p2_0[] = {
+ 2, 3, 4, 6, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 4, 4, 4, 6, 6, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 4, 4, 5, 6, 6, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6, 6, 6, 8, 8,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 6, 6, 6, 8, 8, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0,
+};
+
+static const static_codebook _44c1_s_p2_0 = {
+ 4, 625,
+ (char *)_vq_lengthlist__44c1_s_p2_0,
+ 1, -533725184, 1611661312, 3, 0,
+ (long *)_vq_quantlist__44c1_s_p2_0,
+ 0
+};
+
+static const long _vq_quantlist__44c1_s_p3_0[] = {
+ 4,
+ 3,
+ 5,
+ 2,
+ 6,
+ 1,
+ 7,
+ 0,
+ 8,
+};
+
+static const char _vq_lengthlist__44c1_s_p3_0[] = {
+ 1, 3, 2, 7, 7, 0, 0, 0, 0, 0,13,13, 6, 6, 0, 0,
+ 0, 0, 0,12, 0, 6, 6, 0, 0, 0, 0, 0, 0, 0, 7, 7,
+ 0, 0, 0, 0, 0, 0, 0, 7, 7, 0, 0, 0, 0, 0, 0, 0,
+ 8, 9, 0, 0, 0, 0, 0, 0, 0, 8, 8, 0, 0, 0, 0, 0,
+ 0, 0,11,10, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0,
+};
+
+static const static_codebook _44c1_s_p3_0 = {
+ 2, 81,
+ (char *)_vq_lengthlist__44c1_s_p3_0,
+ 1, -531628032, 1611661312, 4, 0,
+ (long *)_vq_quantlist__44c1_s_p3_0,
+ 0
+};
+
+static const long _vq_quantlist__44c1_s_p4_0[] = {
+ 4,
+ 3,
+ 5,
+ 2,
+ 6,
+ 1,
+ 7,
+ 0,
+ 8,
+};
+
+static const char _vq_lengthlist__44c1_s_p4_0[] = {
+ 1, 3, 3, 6, 5, 6, 6, 8, 8, 0, 0, 0, 7, 7, 7, 7,
+ 9, 9, 0, 0, 0, 7, 7, 7, 7, 9, 9, 0, 0, 0, 7, 7,
+ 8, 8,10,10, 0, 0, 0, 7, 7, 8, 8,10,10, 0, 0, 0,
+ 9, 9, 8, 8,10,10, 0, 0, 0, 8, 8, 8, 8,10,10, 0,
+ 0, 0,10,10, 9, 9,11,11, 0, 0, 0, 0, 0, 9, 9,11,
+ 11,
+};
+
+static const static_codebook _44c1_s_p4_0 = {
+ 2, 81,
+ (char *)_vq_lengthlist__44c1_s_p4_0,
+ 1, -531628032, 1611661312, 4, 0,
+ (long *)_vq_quantlist__44c1_s_p4_0,
+ 0
+};
+
+static const long _vq_quantlist__44c1_s_p5_0[] = {
+ 8,
+ 7,
+ 9,
+ 6,
+ 10,
+ 5,
+ 11,
+ 4,
+ 12,
+ 3,
+ 13,
+ 2,
+ 14,
+ 1,
+ 15,
+ 0,
+ 16,
+};
+
+static const char _vq_lengthlist__44c1_s_p5_0[] = {
+ 1, 4, 3, 6, 6, 7, 7, 8, 8, 8, 8, 9, 9,10,10,11,
+ 11, 0, 0, 0, 7, 7, 8, 8, 9, 9, 9, 9,10,10,10,10,
+ 11,11, 0, 0, 0, 7, 7, 8, 8, 9, 9, 9, 9,10,10,10,
+ 10,11,11, 0, 0, 0, 7, 7, 8, 8, 9, 9, 9, 9,10,10,
+ 11,11,11,11, 0, 0, 0, 7, 7, 8, 8, 9, 9, 9, 9,10,
+ 10,11,11,12,11, 0, 0, 0, 8, 8, 9, 9, 9,10,10,10,
+ 10,10,11,11,12,12, 0, 0, 0, 8, 8, 9, 9,10, 9,10,
+ 10,10,10,11,11,12,12, 0, 0, 0, 9, 9, 9, 9,10,10,
+ 10,10,11,11,12,12,12,12, 0, 0, 0, 0, 0, 9, 9,10,
+ 10,10,10,11,11,12,12,12,12, 0, 0, 0, 0, 0, 9, 9,
+ 10,10,10,11,11,11,12,12,13,13, 0, 0, 0, 0, 0, 9,
+ 9,10,10,10,10,11,11,12,12,13,13, 0, 0, 0, 0, 0,
+ 10,10,10,10,11,11,12,12,12,12,13,13, 0, 0, 0, 0,
+ 0, 0, 0,10,10,11,11,12,12,12,12,13,13, 0, 0, 0,
+ 0, 0, 0, 0,11,11,12,12,12,12,13,13,13,13, 0, 0,
+ 0, 0, 0, 0, 0,11,11,11,11,12,12,13,13,13,13, 0,
+ 0, 0, 0, 0, 0, 0,12,12,12,12,12,12,13,13,14,14,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0,12,12,12,12,13,13,14,
+ 14,
+};
+
+static const static_codebook _44c1_s_p5_0 = {
+ 2, 289,
+ (char *)_vq_lengthlist__44c1_s_p5_0,
+ 1, -529530880, 1611661312, 5, 0,
+ (long *)_vq_quantlist__44c1_s_p5_0,
+ 0
+};
+
+static const long _vq_quantlist__44c1_s_p6_0[] = {
+ 1,
+ 0,
+ 2,
+};
+
+static const char _vq_lengthlist__44c1_s_p6_0[] = {
+ 1, 4, 4, 7, 6, 6, 7, 6, 6, 4, 7, 7,10, 9, 9,11,
+ 9, 9, 4, 7, 7,10, 9, 9,11, 9, 9, 6,10,10,11,11,
+ 11,11,10,10, 6, 9, 9,11,10,10,11,10,10, 6, 9, 9,
+ 11,10,11,11,10,10, 7,11,10,11,11,11,12,11,11, 7,
+ 9, 9,11,10,10,11,11,10, 6, 9, 9,10,10,10,12,10,
+ 11,
+};
+
+static const static_codebook _44c1_s_p6_0 = {
+ 4, 81,
+ (char *)_vq_lengthlist__44c1_s_p6_0,
+ 1, -529137664, 1618345984, 2, 0,
+ (long *)_vq_quantlist__44c1_s_p6_0,
+ 0
+};
+
+static const long _vq_quantlist__44c1_s_p6_1[] = {
+ 5,
+ 4,
+ 6,
+ 3,
+ 7,
+ 2,
+ 8,
+ 1,
+ 9,
+ 0,
+ 10,
+};
+
+static const char _vq_lengthlist__44c1_s_p6_1[] = {
+ 2, 3, 3, 6, 6, 7, 7, 7, 7, 8, 8,10,10,10, 6, 6,
+ 7, 7, 8, 8, 8, 8,10,10,10, 6, 6, 7, 7, 8, 8, 8,
+ 8,10,10,10, 7, 7, 7, 7, 8, 8, 8, 8,10,10,10, 7,
+ 7, 7, 7, 8, 8, 8, 8,10,10,10, 7, 7, 8, 8, 8, 8,
+ 8, 8,10,10,10, 7, 7, 8, 8, 8, 8, 8, 8,10,10,10,
+ 8, 8, 8, 8, 8, 8, 8, 8,10,10,10,10,10, 8, 8, 8,
+ 8, 8, 8,10,10,10,10,10, 9, 9, 8, 8, 8, 8,10,10,
+ 10,10,10, 8, 8, 8, 8, 8, 8,
+};
+
+static const static_codebook _44c1_s_p6_1 = {
+ 2, 121,
+ (char *)_vq_lengthlist__44c1_s_p6_1,
+ 1, -531365888, 1611661312, 4, 0,
+ (long *)_vq_quantlist__44c1_s_p6_1,
+ 0
+};
+
+static const long _vq_quantlist__44c1_s_p7_0[] = {
+ 6,
+ 5,
+ 7,
+ 4,
+ 8,
+ 3,
+ 9,
+ 2,
+ 10,
+ 1,
+ 11,
+ 0,
+ 12,
+};
+
+static const char _vq_lengthlist__44c1_s_p7_0[] = {
+ 1, 4, 4, 6, 6, 7, 7, 7, 7, 8, 8,10, 9, 7, 5, 6,
+ 7, 7, 8, 8, 8, 8, 9, 9,10,10, 7, 5, 5, 7, 7, 8,
+ 8, 8, 8, 9, 9,10,10, 0, 8, 8, 8, 8, 9, 9, 9, 9,
+ 10,10,11,10, 0, 8, 8, 8, 8, 9, 9, 9, 9,10,10,11,
+ 11, 0,12,12, 9, 9, 9,10,10,10,11,11,11,11, 0,13,
+ 13, 9, 9, 9, 9,10,10,11,11,11,11, 0, 0, 0,10,10,
+ 10,10,11,11,12,11,12,12, 0, 0, 0,10,10,10, 9,11,
+ 11,12,11,13,12, 0, 0, 0,13,13,10,10,11,11,12,12,
+ 13,13, 0, 0, 0,14,14,10,10,11,11,12,12,13,13, 0,
+ 0, 0, 0, 0,11,12,11,11,12,12,14,13, 0, 0, 0, 0,
+ 0,12,11,11,11,13,10,14,13,
+};
+
+static const static_codebook _44c1_s_p7_0 = {
+ 2, 169,
+ (char *)_vq_lengthlist__44c1_s_p7_0,
+ 1, -526516224, 1616117760, 4, 0,
+ (long *)_vq_quantlist__44c1_s_p7_0,
+ 0
+};
+
+static const long _vq_quantlist__44c1_s_p7_1[] = {
+ 2,
+ 1,
+ 3,
+ 0,
+ 4,
+};
+
+static const char _vq_lengthlist__44c1_s_p7_1[] = {
+ 2, 3, 3, 5, 5, 6, 6, 6, 5, 5, 6, 6, 6, 5, 5, 6,
+ 6, 6, 5, 5, 6, 6, 6, 5, 5,
+};
+
+static const static_codebook _44c1_s_p7_1 = {
+ 2, 25,
+ (char *)_vq_lengthlist__44c1_s_p7_1,
+ 1, -533725184, 1611661312, 3, 0,
+ (long *)_vq_quantlist__44c1_s_p7_1,
+ 0
+};
+
+static const long _vq_quantlist__44c1_s_p8_0[] = {
+ 6,
+ 5,
+ 7,
+ 4,
+ 8,
+ 3,
+ 9,
+ 2,
+ 10,
+ 1,
+ 11,
+ 0,
+ 12,
+};
+
+static const char _vq_lengthlist__44c1_s_p8_0[] = {
+ 1, 4, 3,10,10,10,10,10,10,10,10,10,10, 4, 8, 6,
+ 10,10,10,10,10,10,10,10,10,10, 4, 8, 7,10,10,10,
+ 10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,
+ 10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,
+ 10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,
+ 10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,
+ 10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,
+ 10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,
+ 10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,
+ 10,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 const static_codebook _44c1_s_p8_0 = {
+ 2, 169,
+ (char *)_vq_lengthlist__44c1_s_p8_0,
+ 1, -514541568, 1627103232, 4, 0,
+ (long *)_vq_quantlist__44c1_s_p8_0,
+ 0
+};
+
+static const long _vq_quantlist__44c1_s_p8_1[] = {
+ 6,
+ 5,
+ 7,
+ 4,
+ 8,
+ 3,
+ 9,
+ 2,
+ 10,
+ 1,
+ 11,
+ 0,
+ 12,
+};
+
+static const char _vq_lengthlist__44c1_s_p8_1[] = {
+ 1, 4, 4, 6, 5, 7, 7, 9, 9,10,10,12,12, 6, 5, 5,
+ 7, 7, 8, 8,10,10,12,11,12,12, 6, 5, 5, 7, 7, 8,
+ 8,10,10,11,11,12,12,15, 7, 7, 8, 8, 9, 9,11,11,
+ 12,12,13,12,15, 8, 8, 8, 7, 9, 9,10,10,12,12,13,
+ 13,16,11,10, 8, 8,10,10,11,11,12,12,13,13,16,11,
+ 11, 9, 8,11,10,11,11,12,12,13,12,16,16,16,10,11,
+ 10,11,12,12,12,12,13,13,16,16,16,11, 9,11, 9,14,
+ 12,12,12,13,13,16,16,16,12,14,11,12,12,12,13,13,
+ 14,13,16,16,16,15,13,12,10,13,10,13,14,13,13,16,
+ 16,16,16,16,13,14,12,13,13,12,13,13,16,16,16,16,
+ 16,13,12,12,11,14,12,15,13,
+};
+
+static const static_codebook _44c1_s_p8_1 = {
+ 2, 169,
+ (char *)_vq_lengthlist__44c1_s_p8_1,
+ 1, -522616832, 1620115456, 4, 0,
+ (long *)_vq_quantlist__44c1_s_p8_1,
+ 0
+};
+
+static const long _vq_quantlist__44c1_s_p8_2[] = {
+ 8,
+ 7,
+ 9,
+ 6,
+ 10,
+ 5,
+ 11,
+ 4,
+ 12,
+ 3,
+ 13,
+ 2,
+ 14,
+ 1,
+ 15,
+ 0,
+ 16,
+};
+
+static const char _vq_lengthlist__44c1_s_p8_2[] = {
+ 2, 4, 4, 6, 6, 6, 6, 7, 7, 8, 8, 8, 8, 8, 8, 8,
+ 8,10,10,10, 7, 7, 7, 7, 8, 8, 9, 9, 9, 9, 9, 9,
+ 9, 9,10,10,10, 7, 7, 8, 7, 8, 8, 9, 9, 9, 9, 9,
+ 9, 9, 9,10,10,10, 7, 7, 8, 8, 8, 9, 9, 9, 9, 9,
+ 9,10, 9, 9,10,10,10, 7, 7, 8, 8, 9, 8, 9, 9, 9,
+ 9,10, 9, 9,10,10,11,11, 8, 8, 8, 8, 9, 9, 9, 9,
+ 9, 9,10, 9, 9,10,10,10,10, 8, 8, 8, 8, 9, 9, 9,
+ 9, 9, 9, 9, 9,10,10,11,11,11, 8, 8, 9, 9, 9, 9,
+ 9, 9, 9, 9, 9, 9,10,10,10,10,11,11,11, 8, 8, 9,
+ 9, 9, 9,10, 9, 9, 9, 9, 9,11,11,11,11,11, 9, 9,
+ 9, 9, 9, 9, 9, 9, 9, 9, 9, 9,11,10,10,11,11, 9,
+ 9, 9, 9, 9, 9, 9, 9, 9,10,10,10,10,11,10,11,11,
+ 9, 9, 9, 9, 9, 9, 9, 9, 9,10,10, 9,10,10,11,11,
+ 11,11,11, 9, 9, 9,10, 9, 9, 9, 9, 9, 9,10,11,11,
+ 11,11,11,11,10,10,10,10, 9, 9, 9, 9, 9, 9,10,11,
+ 11,11,11,11,11, 9,10, 9, 9, 9, 9,10, 9, 9, 9,11,
+ 11,11,11,11,11,11,10,10, 9, 9, 9, 9, 9, 9,10, 9,
+ 11,11,10,11,11,11,11,10,11, 9, 9, 9, 9, 9, 9, 9,
+ 9,
+};
+
+static const static_codebook _44c1_s_p8_2 = {
+ 2, 289,
+ (char *)_vq_lengthlist__44c1_s_p8_2,
+ 1, -529530880, 1611661312, 5, 0,
+ (long *)_vq_quantlist__44c1_s_p8_2,
+ 0
+};
+
+static const char _huff_lengthlist__44c1_s_short[] = {
+ 6, 8,13,12,13,14,15,16,16, 4, 2, 4, 7, 6, 8,11,
+ 13,15,10, 4, 4, 8, 6, 8,11,14,17,11, 5, 6, 5, 6,
+ 8,12,14,17,11, 5, 5, 6, 5, 7,10,13,16,12, 6, 7,
+ 8, 7, 8,10,13,15,13, 8, 8, 7, 7, 8,10,12,15,15,
+ 7, 7, 5, 5, 7, 9,12,14,15, 8, 8, 6, 6, 7, 8,10,
+ 11,
+};
+
+static const static_codebook _huff_book__44c1_s_short = {
+ 2, 81,
+ (char *)_huff_lengthlist__44c1_s_short,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
+static const char _huff_lengthlist__44c1_sm_long[] = {
+ 5, 4, 8,10, 9, 9,10,11,12, 4, 2, 5, 6, 6, 8,10,
+ 11,13, 8, 4, 6, 8, 7, 9,12,12,14,10, 6, 8, 4, 5,
+ 6, 9,11,12, 9, 5, 6, 5, 5, 6, 9,11,11, 9, 7, 9,
+ 6, 5, 5, 7,10,10,10, 9,11, 8, 7, 6, 7, 9,11,11,
+ 12,13,10,10, 9, 8, 9,11,11,15,15,12,13,11, 9,10,
+ 11,
+};
+
+static const static_codebook _huff_book__44c1_sm_long = {
+ 2, 81,
+ (char *)_huff_lengthlist__44c1_sm_long,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
+static const long _vq_quantlist__44c1_sm_p1_0[] = {
+ 1,
+ 0,
+ 2,
+};
+
+static const char _vq_lengthlist__44c1_sm_p1_0[] = {
+ 1, 5, 5, 0, 0, 0, 0, 0, 0, 5, 7, 7, 0, 0, 0, 0,
+ 0, 0, 5, 7, 7, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 5, 8, 7, 0, 0, 0, 0, 0, 0, 7, 9, 9, 0, 0, 0,
+ 0, 0, 0, 7, 8, 9, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 5, 7, 7, 0, 0, 0, 0, 0, 0, 7, 9, 8, 0, 0,
+ 0, 0, 0, 0, 7, 9, 9, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 5, 8, 7, 0, 0, 0, 0,
+ 0, 0, 8, 9, 9, 0, 0, 0, 0, 0, 0, 8, 9, 9, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 7, 9, 9, 0, 0, 0,
+ 0, 0, 0, 9, 9,10, 0, 0, 0, 0, 0, 0, 9,10,10, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 7, 9, 9, 0, 0,
+ 0, 0, 0, 0, 8,10, 9, 0, 0, 0, 0, 0, 0, 9,10,10,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 5, 7, 8, 0, 0, 0, 0, 0, 0, 8, 9, 9, 0, 0,
+ 0, 0, 0, 0, 8, 9, 9, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 7, 9, 9, 0, 0, 0, 0, 0, 0, 9,10,10, 0,
+ 0, 0, 0, 0, 0, 8, 9,10, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 7, 9, 9, 0, 0, 0, 0, 0, 0, 9,10,10,
+ 0, 0, 0, 0, 0, 0, 9,10, 9, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0,
+};
+
+static const static_codebook _44c1_sm_p1_0 = {
+ 8, 6561,
+ (char *)_vq_lengthlist__44c1_sm_p1_0,
+ 1, -535822336, 1611661312, 2, 0,
+ (long *)_vq_quantlist__44c1_sm_p1_0,
+ 0
+};
+
+static const long _vq_quantlist__44c1_sm_p2_0[] = {
+ 2,
+ 1,
+ 3,
+ 0,
+ 4,
+};
+
+static const char _vq_lengthlist__44c1_sm_p2_0[] = {
+ 2, 3, 4, 6, 6, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 4, 4, 4, 6, 6, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 4, 4, 4, 6, 6, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6, 6, 6, 9, 9,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 6, 6, 7, 9, 9, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0,
+};
+
+static const static_codebook _44c1_sm_p2_0 = {
+ 4, 625,
+ (char *)_vq_lengthlist__44c1_sm_p2_0,
+ 1, -533725184, 1611661312, 3, 0,
+ (long *)_vq_quantlist__44c1_sm_p2_0,
+ 0
+};
+
+static const long _vq_quantlist__44c1_sm_p3_0[] = {
+ 4,
+ 3,
+ 5,
+ 2,
+ 6,
+ 1,
+ 7,
+ 0,
+ 8,
+};
+
+static const char _vq_lengthlist__44c1_sm_p3_0[] = {
+ 1, 3, 3, 7, 7, 0, 0, 0, 0, 0, 5, 5, 6, 6, 0, 0,
+ 0, 0, 0, 5, 5, 7, 7, 0, 0, 0, 0, 0, 7, 7, 7, 7,
+ 0, 0, 0, 0, 0, 0, 0, 7, 7, 0, 0, 0, 0, 0, 0, 0,
+ 8, 9, 0, 0, 0, 0, 0, 0, 0, 8, 8, 0, 0, 0, 0, 0,
+ 0, 0,10,10, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0,
+};
+
+static const static_codebook _44c1_sm_p3_0 = {
+ 2, 81,
+ (char *)_vq_lengthlist__44c1_sm_p3_0,
+ 1, -531628032, 1611661312, 4, 0,
+ (long *)_vq_quantlist__44c1_sm_p3_0,
+ 0
+};
+
+static const long _vq_quantlist__44c1_sm_p4_0[] = {
+ 4,
+ 3,
+ 5,
+ 2,
+ 6,
+ 1,
+ 7,
+ 0,
+ 8,
+};
+
+static const char _vq_lengthlist__44c1_sm_p4_0[] = {
+ 1, 3, 3, 6, 6, 7, 7, 9, 9, 0, 6, 6, 7, 7, 8, 8,
+ 9, 9, 0, 6, 6, 7, 7, 8, 8, 9, 9, 0, 7, 7, 8, 8,
+ 8, 8,10,10, 0, 0, 0, 8, 8, 8, 8,10,10, 0, 0, 0,
+ 8, 8, 9, 9,11,11, 0, 0, 0, 9, 9, 9, 9,11,11, 0,
+ 0, 0,10,10,10,10,11,11, 0, 0, 0, 0, 0, 9, 9,11,
+ 11,
+};
+
+static const static_codebook _44c1_sm_p4_0 = {
+ 2, 81,
+ (char *)_vq_lengthlist__44c1_sm_p4_0,
+ 1, -531628032, 1611661312, 4, 0,
+ (long *)_vq_quantlist__44c1_sm_p4_0,
+ 0
+};
+
+static const long _vq_quantlist__44c1_sm_p5_0[] = {
+ 8,
+ 7,
+ 9,
+ 6,
+ 10,
+ 5,
+ 11,
+ 4,
+ 12,
+ 3,
+ 13,
+ 2,
+ 14,
+ 1,
+ 15,
+ 0,
+ 16,
+};
+
+static const char _vq_lengthlist__44c1_sm_p5_0[] = {
+ 2, 3, 3, 6, 6, 7, 7, 8, 8, 8, 8, 9, 9,10,10,11,
+ 11, 0, 5, 5, 6, 6, 8, 8, 9, 9, 9, 9,10,10,10,10,
+ 11,11, 0, 5, 5, 6, 6, 8, 8, 9, 9, 9, 9,10,10,10,
+ 10,11,11, 0, 7, 7, 7, 7, 8, 8, 9, 9, 9, 9,10,10,
+ 11,11,12,12, 0, 0, 0, 7, 7, 8, 8, 9, 9, 9, 9,10,
+ 10,11,11,12,12, 0, 0, 0, 8, 8, 8, 8, 9, 9,10,10,
+ 10,11,11,11,12,12, 0, 0, 0, 8, 8, 8, 8, 9, 9,10,
+ 10,10,10,11,11,12,12, 0, 0, 0, 9, 9, 9, 9,10,10,
+ 10,10,11,11,12,12,12,12, 0, 0, 0, 0, 0, 9, 9,10,
+ 10,10,10,11,11,12,12,13,13, 0, 0, 0, 0, 0, 9, 9,
+ 9, 9,10,10,11,11,12,12,13,13, 0, 0, 0, 0, 0, 9,
+ 9, 9, 9,10,10,11,11,12,12,13,13, 0, 0, 0, 0, 0,
+ 9, 9,10,10,11,11,12,12,12,12,13,13, 0, 0, 0, 0,
+ 0, 0, 0,10,10,11,11,12,12,12,12,13,13, 0, 0, 0,
+ 0, 0, 0, 0,11,11,11,11,12,12,13,13,13,13, 0, 0,
+ 0, 0, 0, 0, 0,11,11,11,11,12,12,13,13,13,13, 0,
+ 0, 0, 0, 0, 0, 0,11,11,12,12,12,12,13,13,14,14,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0,12,12,12,12,13,13,14,
+ 14,
+};
+
+static const static_codebook _44c1_sm_p5_0 = {
+ 2, 289,
+ (char *)_vq_lengthlist__44c1_sm_p5_0,
+ 1, -529530880, 1611661312, 5, 0,
+ (long *)_vq_quantlist__44c1_sm_p5_0,
+ 0
+};
+
+static const long _vq_quantlist__44c1_sm_p6_0[] = {
+ 1,
+ 0,
+ 2,
+};
+
+static const char _vq_lengthlist__44c1_sm_p6_0[] = {
+ 1, 4, 4, 7, 6, 6, 7, 6, 6, 4, 7, 7,10, 9, 9,11,
+ 9, 9, 4, 7, 7,10, 9, 9,11, 9, 9, 7,10,10,10,11,
+ 11,11,10,10, 6, 9, 9,11,11,10,11,10,10, 6, 9, 9,
+ 11,10,11,11,10,10, 7,11,11,11,11,11,11,11,11, 6,
+ 9, 9,11,10,10,11,11,10, 6, 9, 9,10,10,10,11,10,
+ 11,
+};
+
+static const static_codebook _44c1_sm_p6_0 = {
+ 4, 81,
+ (char *)_vq_lengthlist__44c1_sm_p6_0,
+ 1, -529137664, 1618345984, 2, 0,
+ (long *)_vq_quantlist__44c1_sm_p6_0,
+ 0
+};
+
+static const long _vq_quantlist__44c1_sm_p6_1[] = {
+ 5,
+ 4,
+ 6,
+ 3,
+ 7,
+ 2,
+ 8,
+ 1,
+ 9,
+ 0,
+ 10,
+};
+
+static const char _vq_lengthlist__44c1_sm_p6_1[] = {
+ 2, 4, 4, 6, 6, 7, 7, 7, 7, 8, 8,10, 5, 5, 6, 6,
+ 7, 7, 8, 8, 8, 8,10, 5, 5, 6, 6, 7, 7, 8, 8, 8,
+ 8,10, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8,10,10,10, 7,
+ 7, 7, 7, 8, 8, 8, 8,10,10,10, 7, 7, 8, 8, 8, 8,
+ 8, 8,10,10,10, 7, 7, 8, 8, 8, 8, 8, 8,10,10,10,
+ 8, 8, 8, 8, 8, 8, 9, 8,10,10,10,10,10, 8, 8, 8,
+ 8, 8, 8,10,10,10,10,10, 9, 9, 8, 8, 8, 8,10,10,
+ 10,10,10, 8, 8, 8, 8, 8, 8,
+};
+
+static const static_codebook _44c1_sm_p6_1 = {
+ 2, 121,
+ (char *)_vq_lengthlist__44c1_sm_p6_1,
+ 1, -531365888, 1611661312, 4, 0,
+ (long *)_vq_quantlist__44c1_sm_p6_1,
+ 0
+};
+
+static const long _vq_quantlist__44c1_sm_p7_0[] = {
+ 6,
+ 5,
+ 7,
+ 4,
+ 8,
+ 3,
+ 9,
+ 2,
+ 10,
+ 1,
+ 11,
+ 0,
+ 12,
+};
+
+static const char _vq_lengthlist__44c1_sm_p7_0[] = {
+ 1, 4, 4, 6, 6, 7, 7, 7, 7, 8, 8, 9, 9, 7, 5, 5,
+ 7, 7, 8, 8, 8, 8, 9, 9,10,10, 7, 5, 6, 7, 7, 8,
+ 8, 8, 8, 9, 9,11,10, 0, 8, 8, 8, 8, 9, 9, 9, 9,
+ 10,10,11,11, 0, 8, 8, 8, 8, 9, 9, 9, 9,10,10,11,
+ 11, 0,12,12, 9, 9,10,10,10,10,11,11,11,11, 0,13,
+ 13, 9, 9, 9, 9,10,10,11,11,12,12, 0, 0, 0, 9,10,
+ 9,10,11,11,12,11,13,12, 0, 0, 0,10,10, 9, 9,11,
+ 11,12,12,13,12, 0, 0, 0,13,13,10,10,11,11,12,12,
+ 13,13, 0, 0, 0,14,14,10,10,11,11,12,12,13,13, 0,
+ 0, 0, 0, 0,11,12,11,11,12,13,14,13, 0, 0, 0, 0,
+ 0,12,12,11,11,13,12,14,13,
+};
+
+static const static_codebook _44c1_sm_p7_0 = {
+ 2, 169,
+ (char *)_vq_lengthlist__44c1_sm_p7_0,
+ 1, -526516224, 1616117760, 4, 0,
+ (long *)_vq_quantlist__44c1_sm_p7_0,
+ 0
+};
+
+static const long _vq_quantlist__44c1_sm_p7_1[] = {
+ 2,
+ 1,
+ 3,
+ 0,
+ 4,
+};
+
+static const char _vq_lengthlist__44c1_sm_p7_1[] = {
+ 2, 4, 4, 4, 5, 6, 5, 5, 5, 5, 6, 5, 5, 5, 5, 6,
+ 5, 5, 5, 5, 6, 6, 6, 5, 5,
+};
+
+static const static_codebook _44c1_sm_p7_1 = {
+ 2, 25,
+ (char *)_vq_lengthlist__44c1_sm_p7_1,
+ 1, -533725184, 1611661312, 3, 0,
+ (long *)_vq_quantlist__44c1_sm_p7_1,
+ 0
+};
+
+static const long _vq_quantlist__44c1_sm_p8_0[] = {
+ 6,
+ 5,
+ 7,
+ 4,
+ 8,
+ 3,
+ 9,
+ 2,
+ 10,
+ 1,
+ 11,
+ 0,
+ 12,
+};
+
+static const char _vq_lengthlist__44c1_sm_p8_0[] = {
+ 1, 3, 3,13,13,13,13,13,13,13,13,13,13, 3, 6, 6,
+ 13,13,13,13,13,13,13,13,13,13, 4, 8, 7,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,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 const static_codebook _44c1_sm_p8_0 = {
+ 2, 169,
+ (char *)_vq_lengthlist__44c1_sm_p8_0,
+ 1, -514541568, 1627103232, 4, 0,
+ (long *)_vq_quantlist__44c1_sm_p8_0,
+ 0
+};
+
+static const long _vq_quantlist__44c1_sm_p8_1[] = {
+ 6,
+ 5,
+ 7,
+ 4,
+ 8,
+ 3,
+ 9,
+ 2,
+ 10,
+ 1,
+ 11,
+ 0,
+ 12,
+};
+
+static const char _vq_lengthlist__44c1_sm_p8_1[] = {
+ 1, 4, 4, 6, 6, 7, 7, 9, 9,10,11,12,12, 6, 5, 5,
+ 7, 7, 8, 7,10,10,11,11,12,12, 6, 5, 5, 7, 7, 8,
+ 8,10,10,11,11,12,12,16, 7, 7, 8, 8, 9, 9,11,11,
+ 12,12,13,13,17, 7, 7, 8, 7, 9, 9,11,10,12,12,13,
+ 13,19,11,10, 8, 8,10,10,11,11,12,12,13,13,19,11,
+ 11, 9, 7,11,10,11,11,12,12,13,12,19,19,19,10,10,
+ 10,10,11,12,12,12,13,14,18,19,19,11, 9,11, 9,13,
+ 12,12,12,13,13,19,20,19,13,15,11,11,12,12,13,13,
+ 14,13,18,19,20,15,13,12,10,13,10,13,13,13,14,20,
+ 20,20,20,20,13,14,12,12,13,12,13,13,20,20,20,20,
+ 20,13,12,12,12,14,12,14,13,
+};
+
+static const static_codebook _44c1_sm_p8_1 = {
+ 2, 169,
+ (char *)_vq_lengthlist__44c1_sm_p8_1,
+ 1, -522616832, 1620115456, 4, 0,
+ (long *)_vq_quantlist__44c1_sm_p8_1,
+ 0
+};
+
+static const long _vq_quantlist__44c1_sm_p8_2[] = {
+ 8,
+ 7,
+ 9,
+ 6,
+ 10,
+ 5,
+ 11,
+ 4,
+ 12,
+ 3,
+ 13,
+ 2,
+ 14,
+ 1,
+ 15,
+ 0,
+ 16,
+};
+
+static const char _vq_lengthlist__44c1_sm_p8_2[] = {
+ 2, 5, 5, 6, 6, 7, 6, 7, 7, 8, 8, 8, 8, 8, 8, 8,
+ 8,10, 6, 6, 7, 7, 7, 7, 8, 8, 9, 9, 9, 9, 9, 9,
+ 9, 9,10, 6, 6, 7, 7, 8, 8, 8, 8, 9, 9, 9, 9, 9,
+ 9, 9, 9,10, 7, 7, 7, 7, 8, 8, 8, 9, 9, 9, 9, 9,
+ 9, 9, 9, 9,10,10,10, 7, 7, 8, 8, 9, 9, 9, 9, 9,
+ 9, 9, 9, 9, 9,10,11,11, 8, 8, 8, 8, 9, 9, 9, 9,
+ 9, 9,10,10, 9,10,10,10,10, 8, 8, 8, 8, 9, 9, 9,
+ 9, 9, 9, 9, 9,10,10,11,10,10, 8, 8, 9, 9, 9, 9,
+ 9, 9, 9, 9, 9, 9,10, 9,10,10,10,11,11, 8, 8, 9,
+ 9, 9, 9, 9, 9, 9, 9, 9, 9,11,11,11,11,11, 9, 9,
+ 9, 9, 9, 9, 9, 9,10, 9,10, 9,11,11,11,11,11, 9,
+ 8, 9, 9, 9, 9, 9, 9, 9,10,10, 9,11,11,10,11,11,
+ 9, 9, 9, 9, 9, 9, 9, 9, 9,10,10, 9,11,11,11,11,
+ 11,11,11, 9, 9,10, 9, 9, 9, 9,10, 9,10,10,11,10,
+ 11,11,11,11, 9,10,10,10, 9, 9, 9, 9, 9, 9,10,11,
+ 11,11,11,11,11, 9, 9, 9, 9, 9, 9, 9, 9,10, 9,11,
+ 11,10,11,11,11,11,10,10, 9, 9, 9, 9, 9, 9,10, 9,
+ 10,11,10,11,11,11,11,11,11, 9, 9,10, 9, 9, 9, 9,
+ 9,
+};
+
+static const static_codebook _44c1_sm_p8_2 = {
+ 2, 289,
+ (char *)_vq_lengthlist__44c1_sm_p8_2,
+ 1, -529530880, 1611661312, 5, 0,
+ (long *)_vq_quantlist__44c1_sm_p8_2,
+ 0
+};
+
+static const char _huff_lengthlist__44c1_sm_short[] = {
+ 4, 7,13,14,14,15,16,18,18, 4, 2, 5, 8, 7, 9,12,
+ 15,15,10, 4, 5,10, 6, 8,11,15,17,12, 5, 7, 5, 6,
+ 8,11,14,17,11, 5, 6, 6, 5, 6, 9,13,17,12, 6, 7,
+ 6, 5, 6, 8,12,14,14, 7, 8, 6, 6, 7, 9,11,14,14,
+ 8, 9, 6, 5, 6, 9,11,13,16,10,10, 7, 6, 7, 8,10,
+ 11,
+};
+
+static const static_codebook _huff_book__44c1_sm_short = {
+ 2, 81,
+ (char *)_huff_lengthlist__44c1_sm_short,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
+static const char _huff_lengthlist__44cn1_s_long[] = {
+ 4, 4, 7, 8, 7, 8,10,12,17, 3, 1, 6, 6, 7, 8,10,
+ 12,15, 7, 6, 9, 9, 9,11,12,14,17, 8, 6, 9, 6, 7,
+ 9,11,13,17, 7, 6, 9, 7, 7, 8, 9,12,15, 8, 8,10,
+ 8, 7, 7, 7,10,14, 9,10,12,10, 8, 8, 8,10,14,11,
+ 13,15,13,12,11,11,12,16,17,18,18,19,20,18,16,16,
+ 20,
+};
+
+static const static_codebook _huff_book__44cn1_s_long = {
+ 2, 81,
+ (char *)_huff_lengthlist__44cn1_s_long,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
+static const long _vq_quantlist__44cn1_s_p1_0[] = {
+ 1,
+ 0,
+ 2,
+};
+
+static const char _vq_lengthlist__44cn1_s_p1_0[] = {
+ 1, 4, 4, 0, 0, 0, 0, 0, 0, 5, 7, 7, 0, 0, 0, 0,
+ 0, 0, 5, 7, 7, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 5, 8, 8, 0, 0, 0, 0, 0, 0, 8, 9, 9, 0, 0, 0,
+ 0, 0, 0, 7, 9,10, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 5, 8, 8, 0, 0, 0, 0, 0, 0, 7,10, 9, 0, 0,
+ 0, 0, 0, 0, 8,10, 9, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 5, 8, 8, 0, 0, 0, 0,
+ 0, 0, 8,10,10, 0, 0, 0, 0, 0, 0, 8, 9,10, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 7,10,10, 0, 0, 0,
+ 0, 0, 0, 9, 9,11, 0, 0, 0, 0, 0, 0,10,11,11, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 7,10,10, 0, 0,
+ 0, 0, 0, 0, 9,11, 9, 0, 0, 0, 0, 0, 0,10,11,11,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 5, 8, 8, 0, 0, 0, 0, 0, 0, 8,10,10, 0, 0,
+ 0, 0, 0, 0, 8,10,10, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 7,10,10, 0, 0, 0, 0, 0, 0,10,11,11, 0,
+ 0, 0, 0, 0, 0, 9, 9,11, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 7,10,10, 0, 0, 0, 0, 0, 0,10,11,11,
+ 0, 0, 0, 0, 0, 0, 9,11, 9, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0,
+};
+
+static const static_codebook _44cn1_s_p1_0 = {
+ 8, 6561,
+ (char *)_vq_lengthlist__44cn1_s_p1_0,
+ 1, -535822336, 1611661312, 2, 0,
+ (long *)_vq_quantlist__44cn1_s_p1_0,
+ 0
+};
+
+static const long _vq_quantlist__44cn1_s_p2_0[] = {
+ 2,
+ 1,
+ 3,
+ 0,
+ 4,
+};
+
+static const char _vq_lengthlist__44cn1_s_p2_0[] = {
+ 1, 4, 4, 7, 6, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 4, 5, 5, 7, 7, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 4, 5, 5, 7, 7, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6, 7, 7, 9, 9,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 6, 7, 7, 9, 9, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0,
+};
+
+static const static_codebook _44cn1_s_p2_0 = {
+ 4, 625,
+ (char *)_vq_lengthlist__44cn1_s_p2_0,
+ 1, -533725184, 1611661312, 3, 0,
+ (long *)_vq_quantlist__44cn1_s_p2_0,
+ 0
+};
+
+static const long _vq_quantlist__44cn1_s_p3_0[] = {
+ 4,
+ 3,
+ 5,
+ 2,
+ 6,
+ 1,
+ 7,
+ 0,
+ 8,
+};
+
+static const char _vq_lengthlist__44cn1_s_p3_0[] = {
+ 1, 2, 3, 7, 7, 0, 0, 0, 0, 0, 0, 0, 6, 6, 0, 0,
+ 0, 0, 0, 0, 0, 6, 6, 0, 0, 0, 0, 0, 0, 0, 7, 7,
+ 0, 0, 0, 0, 0, 0, 0, 7, 7, 0, 0, 0, 0, 0, 0, 0,
+ 9, 8, 0, 0, 0, 0, 0, 0, 0, 8, 8, 0, 0, 0, 0, 0,
+ 0, 0,10,10, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0,
+};
+
+static const static_codebook _44cn1_s_p3_0 = {
+ 2, 81,
+ (char *)_vq_lengthlist__44cn1_s_p3_0,
+ 1, -531628032, 1611661312, 4, 0,
+ (long *)_vq_quantlist__44cn1_s_p3_0,
+ 0
+};
+
+static const long _vq_quantlist__44cn1_s_p4_0[] = {
+ 4,
+ 3,
+ 5,
+ 2,
+ 6,
+ 1,
+ 7,
+ 0,
+ 8,
+};
+
+static const char _vq_lengthlist__44cn1_s_p4_0[] = {
+ 1, 3, 3, 6, 6, 6, 6, 8, 8, 0, 0, 0, 6, 6, 7, 7,
+ 9, 9, 0, 0, 0, 6, 6, 7, 7, 9, 9, 0, 0, 0, 7, 7,
+ 8, 8,10,10, 0, 0, 0, 7, 7, 8, 8,10,10, 0, 0, 0,
+ 9, 9, 9, 9,10,10, 0, 0, 0, 9, 9, 9, 9,10,10, 0,
+ 0, 0,10,10,10,10,11,11, 0, 0, 0, 0, 0,10,10,11,
+ 11,
+};
+
+static const static_codebook _44cn1_s_p4_0 = {
+ 2, 81,
+ (char *)_vq_lengthlist__44cn1_s_p4_0,
+ 1, -531628032, 1611661312, 4, 0,
+ (long *)_vq_quantlist__44cn1_s_p4_0,
+ 0
+};
+
+static const long _vq_quantlist__44cn1_s_p5_0[] = {
+ 8,
+ 7,
+ 9,
+ 6,
+ 10,
+ 5,
+ 11,
+ 4,
+ 12,
+ 3,
+ 13,
+ 2,
+ 14,
+ 1,
+ 15,
+ 0,
+ 16,
+};
+
+static const char _vq_lengthlist__44cn1_s_p5_0[] = {
+ 1, 4, 3, 6, 6, 7, 7, 8, 8, 8, 8, 9, 9,10,10,10,
+ 10, 0, 0, 0, 7, 7, 8, 8, 9, 9, 9, 9,10,10,10,10,
+ 11,11, 0, 0, 0, 7, 7, 8, 8, 9, 9, 9, 9,10,10,10,
+ 10,11,11, 0, 0, 0, 7, 7, 8, 8, 9, 9, 9, 9,10,10,
+ 11,11,11,12, 0, 0, 0, 7, 7, 8, 8, 9, 9, 9, 9,10,
+ 10,11,11,11,11, 0, 0, 0, 8, 8, 9, 9, 9, 9,10,10,
+ 10,10,11,11,12,12, 0, 0, 0, 8, 8, 9, 9, 9, 9,10,
+ 10,10,11,11,11,12,12, 0, 0, 0, 9, 9,10, 9,10,10,
+ 10,10,11,11,11,11,12,12, 0, 0, 0, 0, 0, 9, 9,10,
+ 10,10,10,11,11,12,12,12,12, 0, 0, 0, 0, 0, 9, 9,
+ 10,10,10,11,11,11,12,12,13,13, 0, 0, 0, 0, 0, 9,
+ 9,10,10,10,10,11,11,12,12,13,13, 0, 0, 0, 0, 0,
+ 10,10,11,10,11,11,11,12,13,12,13,13, 0, 0, 0, 0,
+ 0, 0, 0,11,10,11,11,12,12,12,12,13,13, 0, 0, 0,
+ 0, 0, 0, 0,11,11,12,12,12,12,13,13,13,14, 0, 0,
+ 0, 0, 0, 0, 0,11,11,12,12,12,12,13,13,13,14, 0,
+ 0, 0, 0, 0, 0, 0,12,12,12,13,13,13,13,13,14,14,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0,12,12,13,12,13,13,14,
+ 14,
+};
+
+static const static_codebook _44cn1_s_p5_0 = {
+ 2, 289,
+ (char *)_vq_lengthlist__44cn1_s_p5_0,
+ 1, -529530880, 1611661312, 5, 0,
+ (long *)_vq_quantlist__44cn1_s_p5_0,
+ 0
+};
+
+static const long _vq_quantlist__44cn1_s_p6_0[] = {
+ 1,
+ 0,
+ 2,
+};
+
+static const char _vq_lengthlist__44cn1_s_p6_0[] = {
+ 1, 4, 4, 7, 6, 6, 7, 6, 6, 4, 6, 6,10, 9, 9,11,
+ 9, 9, 4, 6, 6,10, 9, 9,10, 9, 9, 7,10,10,11,11,
+ 11,12,11,11, 7, 9, 9,11,11,10,11,10,10, 7, 9, 9,
+ 11,10,11,11,10,10, 7,10,10,11,11,11,12,11,11, 7,
+ 9, 9,11,10,10,11,10,10, 7, 9, 9,11,10,10,11,10,
+ 10,
+};
+
+static const static_codebook _44cn1_s_p6_0 = {
+ 4, 81,
+ (char *)_vq_lengthlist__44cn1_s_p6_0,
+ 1, -529137664, 1618345984, 2, 0,
+ (long *)_vq_quantlist__44cn1_s_p6_0,
+ 0
+};
+
+static const long _vq_quantlist__44cn1_s_p6_1[] = {
+ 5,
+ 4,
+ 6,
+ 3,
+ 7,
+ 2,
+ 8,
+ 1,
+ 9,
+ 0,
+ 10,
+};
+
+static const char _vq_lengthlist__44cn1_s_p6_1[] = {
+ 1, 4, 4, 6, 6, 7, 7, 8, 8, 8, 8,10,10,10, 7, 6,
+ 8, 8, 8, 8, 8, 8,10,10,10, 7, 6, 7, 7, 8, 8, 8,
+ 8,10,10,10, 7, 7, 8, 8, 8, 8, 8, 8,10,10,10, 7,
+ 7, 8, 8, 8, 8, 8, 8,10,10,10, 8, 8, 8, 8, 9, 9,
+ 9, 9,10,10,10, 8, 8, 8, 8, 9, 9, 9, 9,10,10,10,
+ 9, 9, 9, 9, 9, 9, 9, 9,10,10,10,10,10, 9, 9, 9,
+ 9, 9, 9,10,10,10,10,10, 9, 9, 9, 9, 9, 9,10,10,
+ 10,10,10, 9, 9, 9, 9, 9, 9,
+};
+
+static const static_codebook _44cn1_s_p6_1 = {
+ 2, 121,
+ (char *)_vq_lengthlist__44cn1_s_p6_1,
+ 1, -531365888, 1611661312, 4, 0,
+ (long *)_vq_quantlist__44cn1_s_p6_1,
+ 0
+};
+
+static const long _vq_quantlist__44cn1_s_p7_0[] = {
+ 6,
+ 5,
+ 7,
+ 4,
+ 8,
+ 3,
+ 9,
+ 2,
+ 10,
+ 1,
+ 11,
+ 0,
+ 12,
+};
+
+static const char _vq_lengthlist__44cn1_s_p7_0[] = {
+ 1, 4, 4, 6, 6, 7, 7, 8, 8, 9, 9,10,10, 6, 5, 5,
+ 7, 7, 8, 8, 8, 8, 9, 9,11,11, 7, 5, 5, 7, 7, 8,
+ 8, 8, 8, 9,10,11,11, 0, 8, 8, 8, 8, 9, 9, 9, 9,
+ 10,10,11,11, 0, 8, 8, 8, 8, 9, 9, 9, 9,10,10,11,
+ 11, 0,12,12, 9, 9, 9,10,10,10,11,11,11,12, 0,13,
+ 13, 9, 9, 9, 9,10,10,11,11,11,12, 0, 0, 0,10,10,
+ 10,10,11,11,12,12,12,13, 0, 0, 0,10,10,10,10,11,
+ 11,12,12,13,12, 0, 0, 0,14,14,11,10,11,12,12,13,
+ 13,14, 0, 0, 0,15,15,11,11,12,11,12,12,14,13, 0,
+ 0, 0, 0, 0,12,12,12,12,13,13,14,14, 0, 0, 0, 0,
+ 0,13,13,12,12,13,13,13,14,
+};
+
+static const static_codebook _44cn1_s_p7_0 = {
+ 2, 169,
+ (char *)_vq_lengthlist__44cn1_s_p7_0,
+ 1, -526516224, 1616117760, 4, 0,
+ (long *)_vq_quantlist__44cn1_s_p7_0,
+ 0
+};
+
+static const long _vq_quantlist__44cn1_s_p7_1[] = {
+ 2,
+ 1,
+ 3,
+ 0,
+ 4,
+};
+
+static const char _vq_lengthlist__44cn1_s_p7_1[] = {
+ 2, 3, 3, 5, 5, 6, 6, 6, 5, 5, 6, 6, 6, 5, 5, 6,
+ 6, 6, 5, 5, 6, 6, 6, 5, 5,
+};
+
+static const static_codebook _44cn1_s_p7_1 = {
+ 2, 25,
+ (char *)_vq_lengthlist__44cn1_s_p7_1,
+ 1, -533725184, 1611661312, 3, 0,
+ (long *)_vq_quantlist__44cn1_s_p7_1,
+ 0
+};
+
+static const long _vq_quantlist__44cn1_s_p8_0[] = {
+ 2,
+ 1,
+ 3,
+ 0,
+ 4,
+};
+
+static const char _vq_lengthlist__44cn1_s_p8_0[] = {
+ 1, 7, 7,11,11, 8,11,11,11,11, 4,11, 3,11,11,11,
+ 11,11,11,11,11,11,11,11,11,11,11,10,11,11,11,11,
+ 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
+ 11,11,11,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,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, 7,11,11,
+ 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
+ 11,11,11,11,11,11,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,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,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, 8,11,11,11,11,11,
+ 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
+ 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
+ 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
+ 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
+ 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
+ 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
+ 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
+ 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
+ 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
+ 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
+ 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
+ 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
+ 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
+ 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
+ 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
+ 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
+ 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
+ 11,11,11,11,11,11,11,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,12,12,12,12,12,12,12,
+ 12,
+};
+
+static const static_codebook _44cn1_s_p8_0 = {
+ 4, 625,
+ (char *)_vq_lengthlist__44cn1_s_p8_0,
+ 1, -518283264, 1627103232, 3, 0,
+ (long *)_vq_quantlist__44cn1_s_p8_0,
+ 0
+};
+
+static const long _vq_quantlist__44cn1_s_p8_1[] = {
+ 6,
+ 5,
+ 7,
+ 4,
+ 8,
+ 3,
+ 9,
+ 2,
+ 10,
+ 1,
+ 11,
+ 0,
+ 12,
+};
+
+static const char _vq_lengthlist__44cn1_s_p8_1[] = {
+ 1, 4, 4, 6, 6, 8, 8, 9,10,10,11,11,11, 6, 5, 5,
+ 7, 7, 8, 8, 9,10, 9,11,11,12, 5, 5, 5, 7, 7, 8,
+ 9,10,10,12,12,14,13,15, 7, 7, 8, 8, 9,10,11,11,
+ 10,12,10,11,15, 7, 8, 8, 8, 9, 9,11,11,13,12,12,
+ 13,15,10,10, 8, 8,10,10,12,12,11,14,10,10,15,11,
+ 11, 8, 8,10,10,12,13,13,14,15,13,15,15,15,10,10,
+ 10,10,12,12,13,12,13,10,15,15,15,10,10,11,10,13,
+ 11,13,13,15,13,15,15,15,13,13,10,11,11,11,12,10,
+ 14,11,15,15,14,14,13,10,10,12,11,13,13,14,14,15,
+ 15,15,15,15,11,11,11,11,12,11,15,12,15,15,15,15,
+ 15,12,12,11,11,14,12,13,14,
+};
+
+static const static_codebook _44cn1_s_p8_1 = {
+ 2, 169,
+ (char *)_vq_lengthlist__44cn1_s_p8_1,
+ 1, -522616832, 1620115456, 4, 0,
+ (long *)_vq_quantlist__44cn1_s_p8_1,
+ 0
+};
+
+static const long _vq_quantlist__44cn1_s_p8_2[] = {
+ 8,
+ 7,
+ 9,
+ 6,
+ 10,
+ 5,
+ 11,
+ 4,
+ 12,
+ 3,
+ 13,
+ 2,
+ 14,
+ 1,
+ 15,
+ 0,
+ 16,
+};
+
+static const char _vq_lengthlist__44cn1_s_p8_2[] = {
+ 3, 4, 3, 6, 6, 7, 7, 8, 8, 9, 9, 9, 9, 9, 9, 9,
+ 9,10,11,11, 6, 6, 7, 7, 8, 8, 9, 9, 9, 9, 9, 9,
+ 9, 9,10,10,10, 6, 6, 7, 7, 8, 8, 9, 9, 9, 9, 9,
+ 9, 9, 9,10,10,10, 7, 7, 7, 8, 8, 8, 9, 9, 9, 9,
+ 9, 9,10, 9,10,11,10, 7, 6, 7, 7, 8, 8, 9, 9, 9,
+ 9, 9, 9, 9,10,10,10,11, 7, 7, 8, 8, 8, 8, 9, 9,
+ 9, 9, 9, 9, 9, 9,10,10,10, 7, 7, 8, 8, 8, 8, 9,
+ 9, 9, 9, 9, 9, 9,10,11,11,11, 8, 8, 8, 8, 8, 8,
+ 9, 9, 9, 9, 9, 9, 9, 9,11,10,10,11,11, 8, 8, 8,
+ 9, 9, 9, 9, 9, 9,10, 9,10,10,10,10,11,11, 9, 9,
+ 9, 9, 9, 9, 9, 9, 9, 9, 9, 9,11,11,10,11,11, 9,
+ 9, 9, 9, 9, 9, 9, 9, 9,10,10,10,10,11,10,11,11,
+ 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9,11,10,10,11,
+ 11,11,11, 9, 9, 9, 9, 9, 9, 9, 9,10,10,10,11,11,
+ 10,11,11,11, 9,10,10, 9, 9, 9, 9, 9, 9, 9,10,11,
+ 11,11,11,11,11, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9,11,
+ 11,11,11,11,11,11,10,10, 9, 9, 9, 9, 9, 9, 9, 9,
+ 11,11,11,10,11,11,11,11,11, 9, 9, 9,10, 9, 9, 9,
+ 9,
+};
+
+static const static_codebook _44cn1_s_p8_2 = {
+ 2, 289,
+ (char *)_vq_lengthlist__44cn1_s_p8_2,
+ 1, -529530880, 1611661312, 5, 0,
+ (long *)_vq_quantlist__44cn1_s_p8_2,
+ 0
+};
+
+static const char _huff_lengthlist__44cn1_s_short[] = {
+ 10, 9,12,15,12,13,16,14,16, 7, 1, 5,14, 7,10,13,
+ 16,16, 9, 4, 6,16, 8,11,16,16,16,14, 4, 7,16, 9,
+ 12,14,16,16,10, 5, 7,14, 9,12,14,15,15,13, 8, 9,
+ 14,10,12,13,14,15,13, 9, 9, 7, 6, 8,11,12,12,14,
+ 8, 8, 5, 4, 5, 8,11,12,16,10,10, 6, 5, 6, 8, 9,
+ 10,
+};
+
+static const static_codebook _huff_book__44cn1_s_short = {
+ 2, 81,
+ (char *)_huff_lengthlist__44cn1_s_short,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
+static const char _huff_lengthlist__44cn1_sm_long[] = {
+ 3, 3, 8, 8, 8, 8,10,12,14, 3, 2, 6, 7, 7, 8,10,
+ 12,16, 7, 6, 7, 9, 8,10,12,14,16, 8, 6, 8, 4, 5,
+ 7, 9,11,13, 7, 6, 8, 5, 6, 7, 9,11,14, 8, 8,10,
+ 7, 7, 6, 8,10,13, 9,11,12, 9, 9, 7, 8,10,12,10,
+ 13,15,11,11,10, 9,10,13,13,16,17,14,15,14,13,14,
+ 17,
+};
+
+static const static_codebook _huff_book__44cn1_sm_long = {
+ 2, 81,
+ (char *)_huff_lengthlist__44cn1_sm_long,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
+static const long _vq_quantlist__44cn1_sm_p1_0[] = {
+ 1,
+ 0,
+ 2,
+};
+
+static const char _vq_lengthlist__44cn1_sm_p1_0[] = {
+ 1, 4, 5, 0, 0, 0, 0, 0, 0, 5, 7, 7, 0, 0, 0, 0,
+ 0, 0, 5, 7, 7, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 5, 8, 8, 0, 0, 0, 0, 0, 0, 8, 9, 9, 0, 0, 0,
+ 0, 0, 0, 7, 8, 9, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 5, 8, 8, 0, 0, 0, 0, 0, 0, 7, 9, 8, 0, 0,
+ 0, 0, 0, 0, 8, 9, 9, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 5, 8, 8, 0, 0, 0, 0,
+ 0, 0, 8,10, 9, 0, 0, 0, 0, 0, 0, 8, 9, 9, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 7,10, 9, 0, 0, 0,
+ 0, 0, 0, 9, 9,10, 0, 0, 0, 0, 0, 0, 9,10,10, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 7, 9, 9, 0, 0,
+ 0, 0, 0, 0, 8,10, 9, 0, 0, 0, 0, 0, 0, 9,10,10,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 5, 8, 8, 0, 0, 0, 0, 0, 0, 8, 9, 9, 0, 0,
+ 0, 0, 0, 0, 8, 9,10, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 7, 9, 9, 0, 0, 0, 0, 0, 0, 9,10,10, 0,
+ 0, 0, 0, 0, 0, 8, 9,10, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 7, 9,10, 0, 0, 0, 0, 0, 0, 9,10,10,
+ 0, 0, 0, 0, 0, 0, 9,10, 9, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0,
+};
+
+static const static_codebook _44cn1_sm_p1_0 = {
+ 8, 6561,
+ (char *)_vq_lengthlist__44cn1_sm_p1_0,
+ 1, -535822336, 1611661312, 2, 0,
+ (long *)_vq_quantlist__44cn1_sm_p1_0,
+ 0
+};
+
+static const long _vq_quantlist__44cn1_sm_p2_0[] = {
+ 2,
+ 1,
+ 3,
+ 0,
+ 4,
+};
+
+static const char _vq_lengthlist__44cn1_sm_p2_0[] = {
+ 1, 4, 4, 6, 6, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 4, 5, 5, 7, 7, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 4, 5, 5, 7, 7, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6, 7, 7, 9, 9,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 7, 7, 7, 9, 9, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0,
+};
+
+static const static_codebook _44cn1_sm_p2_0 = {
+ 4, 625,
+ (char *)_vq_lengthlist__44cn1_sm_p2_0,
+ 1, -533725184, 1611661312, 3, 0,
+ (long *)_vq_quantlist__44cn1_sm_p2_0,
+ 0
+};
+
+static const long _vq_quantlist__44cn1_sm_p3_0[] = {
+ 4,
+ 3,
+ 5,
+ 2,
+ 6,
+ 1,
+ 7,
+ 0,
+ 8,
+};
+
+static const char _vq_lengthlist__44cn1_sm_p3_0[] = {
+ 1, 3, 4, 7, 7, 0, 0, 0, 0, 0, 4, 4, 7, 7, 0, 0,
+ 0, 0, 0, 4, 5, 7, 7, 0, 0, 0, 0, 0, 6, 7, 8, 8,
+ 0, 0, 0, 0, 0, 0, 0, 8, 8, 0, 0, 0, 0, 0, 0, 0,
+ 9, 9, 0, 0, 0, 0, 0, 0, 0,10, 9, 0, 0, 0, 0, 0,
+ 0, 0,11,11, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0,
+};
+
+static const static_codebook _44cn1_sm_p3_0 = {
+ 2, 81,
+ (char *)_vq_lengthlist__44cn1_sm_p3_0,
+ 1, -531628032, 1611661312, 4, 0,
+ (long *)_vq_quantlist__44cn1_sm_p3_0,
+ 0
+};
+
+static const long _vq_quantlist__44cn1_sm_p4_0[] = {
+ 4,
+ 3,
+ 5,
+ 2,
+ 6,
+ 1,
+ 7,
+ 0,
+ 8,
+};
+
+static const char _vq_lengthlist__44cn1_sm_p4_0[] = {
+ 1, 4, 3, 6, 6, 7, 7, 9, 9, 0, 5, 5, 7, 7, 8, 7,
+ 9, 9, 0, 5, 5, 7, 7, 8, 8, 9, 9, 0, 7, 7, 8, 8,
+ 8, 8,10,10, 0, 0, 0, 8, 8, 8, 8,10,10, 0, 0, 0,
+ 9, 9, 9, 9,10,10, 0, 0, 0, 9, 9, 9, 9,10,10, 0,
+ 0, 0,10,10,10,10,11,11, 0, 0, 0, 0, 0,10,10,11,
+ 11,
+};
+
+static const static_codebook _44cn1_sm_p4_0 = {
+ 2, 81,
+ (char *)_vq_lengthlist__44cn1_sm_p4_0,
+ 1, -531628032, 1611661312, 4, 0,
+ (long *)_vq_quantlist__44cn1_sm_p4_0,
+ 0
+};
+
+static const long _vq_quantlist__44cn1_sm_p5_0[] = {
+ 8,
+ 7,
+ 9,
+ 6,
+ 10,
+ 5,
+ 11,
+ 4,
+ 12,
+ 3,
+ 13,
+ 2,
+ 14,
+ 1,
+ 15,
+ 0,
+ 16,
+};
+
+static const char _vq_lengthlist__44cn1_sm_p5_0[] = {
+ 1, 4, 4, 6, 6, 8, 8, 9, 9, 8, 8, 9, 9,10,10,11,
+ 11, 0, 6, 6, 7, 7, 8, 8, 9, 9, 9, 9,10,10,11,11,
+ 12,12, 0, 6, 5, 7, 7, 8, 8, 9, 9, 9, 9,10,10,11,
+ 11,12,12, 0, 7, 7, 7, 7, 8, 8, 9, 9, 9, 9,10,10,
+ 11,11,12,12, 0, 0, 0, 7, 7, 8, 8, 9, 9,10,10,11,
+ 11,11,11,12,12, 0, 0, 0, 8, 8, 9, 9,10,10,10,10,
+ 11,11,12,12,12,12, 0, 0, 0, 8, 8, 9, 9,10,10,10,
+ 10,11,11,12,12,12,12, 0, 0, 0, 9, 9, 9, 9,10,10,
+ 10,10,11,11,12,12,13,13, 0, 0, 0, 0, 0, 9, 9,10,
+ 10,10,10,11,11,12,12,13,13, 0, 0, 0, 0, 0, 9, 9,
+ 10,10,11,11,12,12,13,13,13,13, 0, 0, 0, 0, 0, 9,
+ 9,10,10,11,11,12,12,12,13,13,13, 0, 0, 0, 0, 0,
+ 10,10,11,11,11,11,12,12,13,13,14,14, 0, 0, 0, 0,
+ 0, 0, 0,11,11,11,11,12,12,13,13,14,14, 0, 0, 0,
+ 0, 0, 0, 0,11,11,12,12,13,13,13,13,14,14, 0, 0,
+ 0, 0, 0, 0, 0,11,11,12,12,13,13,13,13,14,14, 0,
+ 0, 0, 0, 0, 0, 0,12,12,12,13,13,13,14,14,14,14,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0,12,12,13,13,14,14,14,
+ 14,
+};
+
+static const static_codebook _44cn1_sm_p5_0 = {
+ 2, 289,
+ (char *)_vq_lengthlist__44cn1_sm_p5_0,
+ 1, -529530880, 1611661312, 5, 0,
+ (long *)_vq_quantlist__44cn1_sm_p5_0,
+ 0
+};
+
+static const long _vq_quantlist__44cn1_sm_p6_0[] = {
+ 1,
+ 0,
+ 2,
+};
+
+static const char _vq_lengthlist__44cn1_sm_p6_0[] = {
+ 1, 4, 4, 7, 6, 6, 7, 6, 6, 4, 7, 6,10, 9, 9,11,
+ 9, 9, 4, 6, 7,10, 9, 9,11, 9, 9, 7,10,10,10,11,
+ 11,11,11,10, 6, 9, 9,11,10,10,11,10,10, 6, 9, 9,
+ 11,10,11,11,10,10, 7,11,11,11,11,11,12,11,11, 7,
+ 9, 9,11,10,10,12,10,10, 7, 9, 9,11,10,10,11,10,
+ 10,
+};
+
+static const static_codebook _44cn1_sm_p6_0 = {
+ 4, 81,
+ (char *)_vq_lengthlist__44cn1_sm_p6_0,
+ 1, -529137664, 1618345984, 2, 0,
+ (long *)_vq_quantlist__44cn1_sm_p6_0,
+ 0
+};
+
+static const long _vq_quantlist__44cn1_sm_p6_1[] = {
+ 5,
+ 4,
+ 6,
+ 3,
+ 7,
+ 2,
+ 8,
+ 1,
+ 9,
+ 0,
+ 10,
+};
+
+static const char _vq_lengthlist__44cn1_sm_p6_1[] = {
+ 2, 4, 4, 5, 5, 7, 7, 7, 7, 8, 8,10, 5, 5, 6, 6,
+ 7, 7, 8, 8, 8, 8,10, 5, 5, 6, 6, 7, 7, 8, 8, 8,
+ 8,10, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8,10,10,10, 7,
+ 7, 7, 7, 8, 8, 8, 8,10,10,10, 8, 8, 8, 8, 8, 8,
+ 8, 8,10,10,10, 8, 8, 8, 8, 8, 8, 8, 8,10,10,10,
+ 8, 8, 8, 8, 8, 8, 9, 9,10,10,10,10,10, 8, 8, 8,
+ 8, 9, 9,10,10,10,10,10, 9, 9, 9, 9, 8, 9,10,10,
+ 10,10,10, 8, 9, 8, 8, 9, 8,
+};
+
+static const static_codebook _44cn1_sm_p6_1 = {
+ 2, 121,
+ (char *)_vq_lengthlist__44cn1_sm_p6_1,
+ 1, -531365888, 1611661312, 4, 0,
+ (long *)_vq_quantlist__44cn1_sm_p6_1,
+ 0
+};
+
+static const long _vq_quantlist__44cn1_sm_p7_0[] = {
+ 6,
+ 5,
+ 7,
+ 4,
+ 8,
+ 3,
+ 9,
+ 2,
+ 10,
+ 1,
+ 11,
+ 0,
+ 12,
+};
+
+static const char _vq_lengthlist__44cn1_sm_p7_0[] = {
+ 1, 4, 4, 6, 6, 7, 7, 7, 7, 9, 9,10,10, 7, 5, 5,
+ 7, 7, 8, 8, 8, 8,10, 9,11,10, 7, 5, 5, 7, 7, 8,
+ 8, 8, 8, 9,10,11,11, 0, 8, 8, 8, 8, 9, 9, 9, 9,
+ 10,10,11,11, 0, 8, 8, 8, 8, 9, 9, 9, 9,10,10,11,
+ 11, 0,12,12, 9, 9, 9,10,10,10,11,11,12,12, 0,13,
+ 13, 9, 9, 9, 9,10,10,11,11,12,12, 0, 0, 0,10,10,
+ 10,10,11,11,12,12,12,13, 0, 0, 0,10,10,10,10,11,
+ 11,12,12,12,12, 0, 0, 0,14,14,11,11,11,11,12,13,
+ 13,13, 0, 0, 0,14,14,11,10,11,11,12,12,13,13, 0,
+ 0, 0, 0, 0,12,12,12,12,13,13,13,14, 0, 0, 0, 0,
+ 0,13,12,12,12,13,13,13,14,
+};
+
+static const static_codebook _44cn1_sm_p7_0 = {
+ 2, 169,
+ (char *)_vq_lengthlist__44cn1_sm_p7_0,
+ 1, -526516224, 1616117760, 4, 0,
+ (long *)_vq_quantlist__44cn1_sm_p7_0,
+ 0
+};
+
+static const long _vq_quantlist__44cn1_sm_p7_1[] = {
+ 2,
+ 1,
+ 3,
+ 0,
+ 4,
+};
+
+static const char _vq_lengthlist__44cn1_sm_p7_1[] = {
+ 2, 4, 4, 4, 5, 6, 5, 5, 5, 5, 6, 5, 5, 5, 5, 6,
+ 5, 5, 5, 5, 6, 6, 6, 5, 5,
+};
+
+static const static_codebook _44cn1_sm_p7_1 = {
+ 2, 25,
+ (char *)_vq_lengthlist__44cn1_sm_p7_1,
+ 1, -533725184, 1611661312, 3, 0,
+ (long *)_vq_quantlist__44cn1_sm_p7_1,
+ 0
+};
+
+static const long _vq_quantlist__44cn1_sm_p8_0[] = {
+ 4,
+ 3,
+ 5,
+ 2,
+ 6,
+ 1,
+ 7,
+ 0,
+ 8,
+};
+
+static const char _vq_lengthlist__44cn1_sm_p8_0[] = {
+ 1, 4, 4,12,11,13,13,14,14, 4, 7, 7,11,13,14,14,
+ 14,14, 3, 8, 3,14,14,14,14,14,14,14,10,12,14,14,
+ 14,14,14,14,14,14, 5,14, 8,14,14,14,14,14,12,14,
+ 13,14,14,14,14,14,14,14,13,14,10,14,14,14,14,14,
+ 14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,
+ 14,
+};
+
+static const static_codebook _44cn1_sm_p8_0 = {
+ 2, 81,
+ (char *)_vq_lengthlist__44cn1_sm_p8_0,
+ 1, -516186112, 1627103232, 4, 0,
+ (long *)_vq_quantlist__44cn1_sm_p8_0,
+ 0
+};
+
+static const long _vq_quantlist__44cn1_sm_p8_1[] = {
+ 6,
+ 5,
+ 7,
+ 4,
+ 8,
+ 3,
+ 9,
+ 2,
+ 10,
+ 1,
+ 11,
+ 0,
+ 12,
+};
+
+static const char _vq_lengthlist__44cn1_sm_p8_1[] = {
+ 1, 4, 4, 6, 6, 8, 8, 9, 9,10,11,11,11, 6, 5, 5,
+ 7, 7, 8, 8,10,10,10,11,11,11, 6, 5, 5, 7, 7, 8,
+ 8,10,10,11,12,12,12,14, 7, 7, 7, 8, 9, 9,11,11,
+ 11,12,11,12,17, 7, 7, 8, 7, 9, 9,11,11,12,12,12,
+ 12,14,11,11, 8, 8,10,10,11,12,12,13,11,12,14,11,
+ 11, 8, 8,10,10,11,12,12,13,13,12,14,15,14,10,10,
+ 10,10,11,12,12,12,12,11,14,13,16,10,10,10, 9,12,
+ 11,12,12,13,14,14,15,14,14,13,10,10,11,11,12,11,
+ 13,11,14,12,15,13,14,11,10,12,10,12,12,13,13,13,
+ 13,14,15,15,12,12,11,11,12,11,13,12,14,14,14,14,
+ 17,12,12,11,10,13,11,13,13,
+};
+
+static const static_codebook _44cn1_sm_p8_1 = {
+ 2, 169,
+ (char *)_vq_lengthlist__44cn1_sm_p8_1,
+ 1, -522616832, 1620115456, 4, 0,
+ (long *)_vq_quantlist__44cn1_sm_p8_1,
+ 0
+};
+
+static const long _vq_quantlist__44cn1_sm_p8_2[] = {
+ 8,
+ 7,
+ 9,
+ 6,
+ 10,
+ 5,
+ 11,
+ 4,
+ 12,
+ 3,
+ 13,
+ 2,
+ 14,
+ 1,
+ 15,
+ 0,
+ 16,
+};
+
+static const char _vq_lengthlist__44cn1_sm_p8_2[] = {
+ 3, 4, 4, 6, 6, 7, 7, 8, 8, 8, 8, 9, 9, 9, 9, 9,
+ 9,10, 6, 6, 6, 6, 7, 7, 8, 8, 8, 9, 9, 9, 9, 9,
+ 9, 9,10, 6, 6, 6, 6, 7, 7, 8, 8, 8, 8, 9, 9, 9,
+ 9, 9, 9,10, 7, 7, 7, 7, 8, 8, 8, 8, 9, 9, 9, 9,
+ 9, 9, 9, 9,10,10,10, 7, 7, 7, 8, 8, 8, 9, 9, 9,
+ 9, 9, 9, 9, 9,10,10,10, 8, 8, 8, 8, 8, 8, 9, 9,
+ 9, 9, 9, 9, 9, 9,10,10,10, 8, 8, 8, 8, 8, 8, 9,
+ 9, 9, 9, 9, 9, 9, 9,11,10,11, 8, 8, 8, 8, 8, 8,
+ 9, 9, 9, 9, 9, 9, 9, 9,10,10,10,11,11, 8, 8, 8,
+ 8, 9, 9, 9, 9, 9, 9, 9, 9,11,10,11,11,11, 9, 9,
+ 9, 9, 9, 9, 9, 9, 9, 9, 9, 9,10,11,10,11,11, 9,
+ 9, 9, 9, 9, 9, 9, 9, 9, 9, 9,10,11,11,10,11,11,
+ 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9,11,10,11,11,
+ 11,11,11, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9,10,11,11,
+ 11,11,11,11, 9,10,10,10, 9, 9, 9, 9, 9, 9,11,10,
+ 11,11,11,11,11, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9,11,
+ 11,11,11,11,11,11,10,10, 9, 9, 9, 9, 9, 9, 9, 9,
+ 10,11,11,11,11,11,11,11,11, 9, 9, 9, 9, 9, 9, 9,
+ 9,
+};
+
+static const static_codebook _44cn1_sm_p8_2 = {
+ 2, 289,
+ (char *)_vq_lengthlist__44cn1_sm_p8_2,
+ 1, -529530880, 1611661312, 5, 0,
+ (long *)_vq_quantlist__44cn1_sm_p8_2,
+ 0
+};
+
+static const char _huff_lengthlist__44cn1_sm_short[] = {
+ 5, 6,12,14,12,14,16,17,18, 4, 2, 5,11, 7,10,12,
+ 14,15, 9, 4, 5,11, 7,10,13,15,18,15, 6, 7, 5, 6,
+ 8,11,13,16,11, 5, 6, 5, 5, 6, 9,13,15,12, 5, 7,
+ 6, 5, 6, 9,12,14,12, 6, 7, 8, 6, 7, 9,12,13,14,
+ 8, 8, 7, 5, 5, 8,10,12,16, 9, 9, 8, 6, 6, 7, 9,
+ 9,
+};
+
+static const static_codebook _huff_book__44cn1_sm_short = {
+ 2, 81,
+ (char *)_huff_lengthlist__44cn1_sm_short,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
diff --git a/Sources/libvorbis/lib/books/floor/floor_books.h b/Sources/libvorbis/lib/books/floor/floor_books.h
new file mode 100644
index 000000000..e925313f7
--- /dev/null
+++ b/Sources/libvorbis/lib/books/floor/floor_books.h
@@ -0,0 +1,1547 @@
+/********************************************************************
+ * *
+ * THIS FILE IS PART OF THE OggVorbis SOFTWARE CODEC SOURCE CODE. *
+ * USE, DISTRIBUTION AND REPRODUCTION OF THIS LIBRARY SOURCE IS *
+ * GOVERNED BY A BSD-STYLE SOURCE LICENSE INCLUDED WITH THIS SOURCE *
+ * IN 'COPYING'. PLEASE READ THESE TERMS BEFORE DISTRIBUTING. *
+ * *
+ * THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2007 *
+ * by the Xiph.Org Foundation http://www.xiph.org/ *
+ * *
+ ********************************************************************
+
+ function: static codebooks autogenerated by huff/huffbuld
+ last modified: $Id: floor_books.h 19057 2014-01-22 12:32:31Z xiphmont $
+
+ ********************************************************************/
+
+#include "codebook.h"
+
+static const char _huff_lengthlist_line_256x7_0sub1[] = {
+ 0, 2, 3, 3, 3, 3, 4, 3, 4,
+};
+
+static const static_codebook _huff_book_line_256x7_0sub1 = {
+ 1, 9,
+ (char *)_huff_lengthlist_line_256x7_0sub1,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
+static const char _huff_lengthlist_line_256x7_0sub2[] = {
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 4, 3, 4, 3, 5, 3,
+ 6, 3, 6, 4, 6, 4, 7, 5, 7,
+};
+
+static const static_codebook _huff_book_line_256x7_0sub2 = {
+ 1, 25,
+ (char *)_huff_lengthlist_line_256x7_0sub2,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
+static const char _huff_lengthlist_line_256x7_0sub3[] = {
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 5, 2, 5, 3, 5, 3,
+ 6, 3, 6, 4, 7, 6, 7, 8, 7, 9, 8, 9, 9, 9,10, 9,
+ 11,13,11,13,10,10,13,13,13,13,13,13,12,12,12,12,
+};
+
+static const static_codebook _huff_book_line_256x7_0sub3 = {
+ 1, 64,
+ (char *)_huff_lengthlist_line_256x7_0sub3,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
+static const char _huff_lengthlist_line_256x7_1sub1[] = {
+ 0, 3, 3, 3, 3, 2, 4, 3, 4,
+};
+
+static const static_codebook _huff_book_line_256x7_1sub1 = {
+ 1, 9,
+ (char *)_huff_lengthlist_line_256x7_1sub1,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
+static const char _huff_lengthlist_line_256x7_1sub2[] = {
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 3, 3, 4, 3, 4, 4,
+ 5, 4, 6, 5, 6, 7, 6, 8, 8,
+};
+
+static const static_codebook _huff_book_line_256x7_1sub2 = {
+ 1, 25,
+ (char *)_huff_lengthlist_line_256x7_1sub2,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
+static const char _huff_lengthlist_line_256x7_1sub3[] = {
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 2, 4, 3, 6, 3, 7,
+ 3, 8, 5, 8, 6, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8,
+ 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 7,
+};
+
+static const static_codebook _huff_book_line_256x7_1sub3 = {
+ 1, 64,
+ (char *)_huff_lengthlist_line_256x7_1sub3,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
+static const char _huff_lengthlist_line_256x7_class0[] = {
+ 7, 5, 5, 9, 9, 6, 6, 9,12, 8, 7, 8,11, 8, 9,15,
+ 6, 3, 3, 7, 7, 4, 3, 6, 9, 6, 5, 6, 8, 6, 8,15,
+ 8, 5, 5, 9, 8, 5, 4, 6,10, 7, 5, 5,11, 8, 7,15,
+ 14,15,13,13,13,13, 8,11,15,10, 7, 6,11, 9,10,15,
+};
+
+static const static_codebook _huff_book_line_256x7_class0 = {
+ 1, 64,
+ (char *)_huff_lengthlist_line_256x7_class0,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
+static const char _huff_lengthlist_line_256x7_class1[] = {
+ 5, 6, 8,15, 6, 9,10,15,10,11,12,15,15,15,15,15,
+ 4, 6, 7,15, 6, 7, 8,15, 9, 8, 9,15,15,15,15,15,
+ 6, 8, 9,15, 7, 7, 8,15,10, 9,10,15,15,15,15,15,
+ 15,13,15,15,15,10,11,15,15,13,13,15,15,15,15,15,
+ 4, 6, 7,15, 6, 8, 9,15,10,10,12,15,15,15,15,15,
+ 2, 5, 6,15, 5, 6, 7,15, 8, 6, 7,15,15,15,15,15,
+ 5, 6, 8,15, 5, 6, 7,15, 9, 6, 7,15,15,15,15,15,
+ 14,12,13,15,12,10,11,15,15,15,15,15,15,15,15,15,
+ 7, 8, 9,15, 9,10,10,15,15,14,14,15,15,15,15,15,
+ 5, 6, 7,15, 7, 8, 9,15,12, 9,10,15,15,15,15,15,
+ 7, 7, 9,15, 7, 7, 8,15,12, 8, 9,15,15,15,15,15,
+ 13,13,14,15,12,11,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,
+ 13,13,13,15,15,15,15,15,15,15,15,15,15,15,15,15,
+ 15,12,13,15,15,12,13,15,15,14,15,15,15,15,15,15,
+ 15,15,15,15,15,15,13,15,15,15,15,15,15,15,15,15,
+};
+
+static const static_codebook _huff_book_line_256x7_class1 = {
+ 1, 256,
+ (char *)_huff_lengthlist_line_256x7_class1,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
+static const char _huff_lengthlist_line_512x17_0sub0[] = {
+ 4, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
+ 5, 6, 5, 6, 6, 6, 6, 5, 6, 6, 7, 6, 7, 6, 7, 6,
+ 7, 6, 8, 7, 8, 7, 8, 7, 8, 7, 8, 7, 9, 7, 9, 7,
+ 9, 7, 9, 8, 9, 8,10, 8,10, 8,10, 7,10, 6,10, 8,
+ 10, 8,11, 7,10, 7,11, 8,11,11,12,12,11,11,12,11,
+ 13,11,13,11,13,12,15,12,13,13,14,14,14,14,14,15,
+ 15,15,16,14,17,19,19,18,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 const static_codebook _huff_book_line_512x17_0sub0 = {
+ 1, 128,
+ (char *)_huff_lengthlist_line_512x17_0sub0,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
+static const char _huff_lengthlist_line_512x17_1sub0[] = {
+ 2, 4, 5, 4, 5, 4, 5, 4, 5, 5, 5, 5, 5, 5, 6, 5,
+ 6, 5, 6, 6, 7, 6, 7, 6, 8, 7, 8, 7, 8, 7, 8, 7,
+};
+
+static const static_codebook _huff_book_line_512x17_1sub0 = {
+ 1, 32,
+ (char *)_huff_lengthlist_line_512x17_1sub0,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
+static const char _huff_lengthlist_line_512x17_1sub1[] = {
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 4, 3, 5, 3, 5, 4, 5, 4, 5, 4, 5, 5, 5, 5, 6, 5,
+ 6, 5, 7, 5, 8, 6, 8, 6, 8, 6, 8, 6, 8, 7, 9, 7,
+ 9, 7,11, 9,11,11,12,11,14,12,14,16,14,16,13,16,
+ 14,16,12,15,13,16,14,16,13,14,12,15,13,15,13,13,
+ 13,15,12,14,14,15,13,15,12,15,15,15,15,15,15,15,
+ 15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,
+};
+
+static const static_codebook _huff_book_line_512x17_1sub1 = {
+ 1, 128,
+ (char *)_huff_lengthlist_line_512x17_1sub1,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
+static const char _huff_lengthlist_line_512x17_2sub1[] = {
+ 0, 4, 5, 4, 4, 4, 5, 4, 4, 4, 5, 4, 5, 4, 5, 3,
+ 5, 3,
+};
+
+static const static_codebook _huff_book_line_512x17_2sub1 = {
+ 1, 18,
+ (char *)_huff_lengthlist_line_512x17_2sub1,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
+static const char _huff_lengthlist_line_512x17_2sub2[] = {
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 4, 3, 4, 3, 4, 4, 5, 4, 5, 4, 6, 4, 6, 5,
+ 6, 5, 7, 5, 7, 6, 8, 6, 8, 6, 8, 7, 8, 7, 9, 7,
+ 9, 8,
+};
+
+static const static_codebook _huff_book_line_512x17_2sub2 = {
+ 1, 50,
+ (char *)_huff_lengthlist_line_512x17_2sub2,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
+static const char _huff_lengthlist_line_512x17_2sub3[] = {
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 3, 3, 3, 3, 4, 3, 4, 4, 5, 5, 6, 6, 7, 7,
+ 7, 8, 8,11, 8, 9, 9, 9,10,11,11,11, 9,10,10,11,
+ 11,11,11,10,10,10,10,10,10,10,10,10,10,10,10,10,
+ 10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,
+ 10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,
+};
+
+static const static_codebook _huff_book_line_512x17_2sub3 = {
+ 1, 128,
+ (char *)_huff_lengthlist_line_512x17_2sub3,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
+static const char _huff_lengthlist_line_512x17_3sub1[] = {
+ 0, 4, 4, 4, 4, 4, 4, 3, 4, 4, 4, 4, 4, 5, 4, 5,
+ 5, 5,
+};
+
+static const static_codebook _huff_book_line_512x17_3sub1 = {
+ 1, 18,
+ (char *)_huff_lengthlist_line_512x17_3sub1,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
+static const char _huff_lengthlist_line_512x17_3sub2[] = {
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 2, 3, 3, 4, 3, 5, 4, 6, 4, 6, 5, 7, 6, 7,
+ 6, 8, 6, 8, 7, 9, 8,10, 8,12, 9,13,10,15,10,15,
+ 11,14,
+};
+
+static const static_codebook _huff_book_line_512x17_3sub2 = {
+ 1, 50,
+ (char *)_huff_lengthlist_line_512x17_3sub2,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
+static const char _huff_lengthlist_line_512x17_3sub3[] = {
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 4, 8, 4, 8, 4, 8, 4, 8, 5, 8, 5, 8, 6, 8,
+ 4, 8, 4, 8, 5, 8, 5, 7, 7, 7, 7, 7, 7, 7, 7, 7,
+ 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7,
+ 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7,
+ 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7,
+};
+
+static const static_codebook _huff_book_line_512x17_3sub3 = {
+ 1, 128,
+ (char *)_huff_lengthlist_line_512x17_3sub3,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
+static const char _huff_lengthlist_line_512x17_class1[] = {
+ 1, 2, 3, 6, 5, 4, 7, 7,
+};
+
+static const static_codebook _huff_book_line_512x17_class1 = {
+ 1, 8,
+ (char *)_huff_lengthlist_line_512x17_class1,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
+static const char _huff_lengthlist_line_512x17_class2[] = {
+ 3, 3, 3,14, 5, 4, 4,11, 8, 6, 6,10,17,12,11,17,
+ 6, 5, 5,15, 5, 3, 4,11, 8, 5, 5, 8,16, 9,10,14,
+ 10, 8, 9,17, 8, 6, 6,13,10, 7, 7,10,16,11,13,14,
+ 17,17,17,17,17,16,16,16,16,15,16,16,16,16,16,16,
+};
+
+static const static_codebook _huff_book_line_512x17_class2 = {
+ 1, 64,
+ (char *)_huff_lengthlist_line_512x17_class2,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
+static const char _huff_lengthlist_line_512x17_class3[] = {
+ 2, 4, 6,17, 4, 5, 7,17, 8, 7,10,17,17,17,17,17,
+ 3, 4, 6,15, 3, 3, 6,15, 7, 6, 9,17,17,17,17,17,
+ 6, 8,10,17, 6, 6, 8,16, 9, 8,10,17,17,15,16,17,
+ 17,17,17,17,12,15,15,16,12,15,15,16,16,16,16,16,
+};
+
+static const static_codebook _huff_book_line_512x17_class3 = {
+ 1, 64,
+ (char *)_huff_lengthlist_line_512x17_class3,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
+static const char _huff_lengthlist_line_128x4_class0[] = {
+ 7, 7, 7,11, 6, 6, 7,11, 7, 6, 6,10,12,10,10,13,
+ 7, 7, 8,11, 7, 7, 7,11, 7, 6, 7,10,11,10,10,13,
+ 10,10, 9,12, 9, 9, 9,11, 8, 8, 8,11,13,11,10,14,
+ 15,15,14,15,15,14,13,14,15,12,12,17,17,17,17,17,
+ 7, 7, 6, 9, 6, 6, 6, 9, 7, 6, 6, 8,11,11,10,12,
+ 7, 7, 7, 9, 7, 6, 6, 9, 7, 6, 6, 9,13,10,10,11,
+ 10, 9, 8,10, 9, 8, 8,10, 8, 8, 7, 9,13,12,10,11,
+ 17,14,14,13,15,14,12,13,17,13,12,15,17,17,14,17,
+ 7, 6, 6, 7, 6, 6, 5, 7, 6, 6, 6, 6,11, 9, 9, 9,
+ 7, 7, 6, 7, 7, 6, 6, 7, 6, 6, 6, 6,10, 9, 8, 9,
+ 10, 9, 8, 8, 9, 8, 7, 8, 8, 7, 6, 8,11,10, 9,10,
+ 17,17,12,15,15,15,12,14,14,14,10,12,15,13,12,13,
+ 11,10, 8,10,11,10, 8, 8,10, 9, 7, 7,10, 9, 9,11,
+ 11,11, 9,10,11,10, 8, 9,10, 8, 6, 8,10, 9, 9,11,
+ 14,13,10,12,12,11,10,10, 8, 7, 8,10,10,11,11,12,
+ 17,17,15,17,17,17,17,17,17,13,12,17,17,17,14,17,
+};
+
+static const static_codebook _huff_book_line_128x4_class0 = {
+ 1, 256,
+ (char *)_huff_lengthlist_line_128x4_class0,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
+static const char _huff_lengthlist_line_128x4_0sub0[] = {
+ 2, 2, 2, 2,
+};
+
+static const static_codebook _huff_book_line_128x4_0sub0 = {
+ 1, 4,
+ (char *)_huff_lengthlist_line_128x4_0sub0,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
+static const char _huff_lengthlist_line_128x4_0sub1[] = {
+ 0, 0, 0, 0, 3, 2, 3, 2, 3, 3,
+};
+
+static const static_codebook _huff_book_line_128x4_0sub1 = {
+ 1, 10,
+ (char *)_huff_lengthlist_line_128x4_0sub1,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
+static const char _huff_lengthlist_line_128x4_0sub2[] = {
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 3, 4, 3, 4, 3,
+ 4, 4, 5, 4, 5, 4, 6, 5, 6,
+};
+
+static const static_codebook _huff_book_line_128x4_0sub2 = {
+ 1, 25,
+ (char *)_huff_lengthlist_line_128x4_0sub2,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
+static const char _huff_lengthlist_line_128x4_0sub3[] = {
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 4, 3, 5, 3, 5, 3,
+ 5, 4, 6, 5, 6, 5, 7, 6, 6, 7, 7, 9, 9,11,11,16,
+ 11,14,10,11,11,13,16,15,15,15,15,15,15,15,15,15,
+};
+
+static const static_codebook _huff_book_line_128x4_0sub3 = {
+ 1, 64,
+ (char *)_huff_lengthlist_line_128x4_0sub3,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
+static const char _huff_lengthlist_line_256x4_class0[] = {
+ 6, 7, 7,12, 6, 6, 7,12, 7, 6, 6,10,15,12,11,13,
+ 7, 7, 8,13, 7, 7, 8,12, 7, 7, 7,11,12,12,11,13,
+ 10, 9, 9,11, 9, 9, 9,10,10, 8, 8,12,14,12,12,14,
+ 11,11,12,14,11,12,11,15,15,12,13,15,15,15,15,15,
+ 6, 6, 7,10, 6, 6, 6,11, 7, 6, 6, 9,14,12,11,13,
+ 7, 7, 7,10, 6, 6, 7, 9, 7, 7, 6,10,13,12,10,12,
+ 9, 9, 9,11, 9, 9, 8, 9, 9, 8, 8,10,13,12,10,12,
+ 12,12,11,13,12,12,11,12,15,13,12,15,15,15,14,14,
+ 6, 6, 6, 8, 6, 6, 5, 6, 7, 7, 6, 5,11,10, 9, 8,
+ 7, 6, 6, 7, 6, 6, 5, 6, 7, 7, 6, 6,11,10, 9, 8,
+ 8, 8, 8, 9, 8, 8, 7, 8, 8, 8, 6, 7,11,10, 9, 9,
+ 14,11,10,14,14,11,10,15,13,11, 9,11,15,12,12,11,
+ 11, 9, 8, 8,10, 9, 8, 9,11,10, 9, 8,12,11,12,11,
+ 13,10, 8, 9,11,10, 8, 9,10, 9, 8, 9,10, 8,12,12,
+ 15,11,10,10,13,11,10,10, 8, 8, 7,12,10, 9,11,12,
+ 15,12,11,15,13,11,11,15,12,14,11,13,15,15,13,13,
+};
+
+static const static_codebook _huff_book_line_256x4_class0 = {
+ 1, 256,
+ (char *)_huff_lengthlist_line_256x4_class0,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
+static const char _huff_lengthlist_line_256x4_0sub0[] = {
+ 2, 2, 2, 2,
+};
+
+static const static_codebook _huff_book_line_256x4_0sub0 = {
+ 1, 4,
+ (char *)_huff_lengthlist_line_256x4_0sub0,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
+static const char _huff_lengthlist_line_256x4_0sub1[] = {
+ 0, 0, 0, 0, 2, 2, 3, 3, 3, 3,
+};
+
+static const static_codebook _huff_book_line_256x4_0sub1 = {
+ 1, 10,
+ (char *)_huff_lengthlist_line_256x4_0sub1,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
+static const char _huff_lengthlist_line_256x4_0sub2[] = {
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 4, 3, 4, 3, 4, 3,
+ 5, 3, 5, 4, 5, 4, 6, 4, 6,
+};
+
+static const static_codebook _huff_book_line_256x4_0sub2 = {
+ 1, 25,
+ (char *)_huff_lengthlist_line_256x4_0sub2,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
+static const char _huff_lengthlist_line_256x4_0sub3[] = {
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 4, 3, 5, 3, 5, 3,
+ 6, 4, 7, 4, 7, 5, 7, 6, 7, 6, 7, 8,10,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,12,12,12,12,12,
+};
+
+static const static_codebook _huff_book_line_256x4_0sub3 = {
+ 1, 64,
+ (char *)_huff_lengthlist_line_256x4_0sub3,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
+static const char _huff_lengthlist_line_128x7_class0[] = {
+ 10, 7, 8,13, 9, 6, 7,11,10, 8, 8,12,17,17,17,17,
+ 7, 5, 5, 9, 6, 4, 4, 8, 8, 5, 5, 8,16,14,13,16,
+ 7, 5, 5, 7, 6, 3, 3, 5, 8, 5, 4, 7,14,12,12,15,
+ 10, 7, 8, 9, 7, 5, 5, 6, 9, 6, 5, 5,15,12, 9,10,
+};
+
+static const static_codebook _huff_book_line_128x7_class0 = {
+ 1, 64,
+ (char *)_huff_lengthlist_line_128x7_class0,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
+static const char _huff_lengthlist_line_128x7_class1[] = {
+ 8,13,17,17, 8,11,17,17,11,13,17,17,17,17,17,17,
+ 6,10,16,17, 6,10,15,17, 8,10,16,17,17,17,17,17,
+ 9,13,15,17, 8,11,17,17,10,12,17,17,17,17,17,17,
+ 17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,
+ 6,11,15,17, 7,10,15,17, 8,10,17,17,17,15,17,17,
+ 4, 8,13,17, 4, 7,13,17, 6, 8,15,17,16,15,17,17,
+ 6,11,15,17, 6, 9,13,17, 8,10,17,17,15,17,17,17,
+ 16,17,17,17,12,14,15,17,13,14,15,17,17,17,17,17,
+ 5,10,14,17, 5, 9,14,17, 7, 9,15,17,15,15,17,17,
+ 3, 7,12,17, 3, 6,11,17, 5, 7,13,17,12,12,17,17,
+ 5, 9,14,17, 3, 7,11,17, 5, 8,13,17,13,11,16,17,
+ 12,17,17,17, 9,14,15,17,10,11,14,17,16,14,17,17,
+ 8,12,17,17, 8,12,17,17,10,12,17,17,17,17,17,17,
+ 5,10,17,17, 5, 9,15,17, 7, 9,17,17,13,13,17,17,
+ 7,11,17,17, 6,10,15,17, 7, 9,15,17,12,11,17,17,
+ 12,15,17,17,11,14,17,17,11,10,15,17,17,16,17,17,
+};
+
+static const static_codebook _huff_book_line_128x7_class1 = {
+ 1, 256,
+ (char *)_huff_lengthlist_line_128x7_class1,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
+static const char _huff_lengthlist_line_128x7_0sub1[] = {
+ 0, 3, 3, 3, 3, 3, 3, 3, 3,
+};
+
+static const static_codebook _huff_book_line_128x7_0sub1 = {
+ 1, 9,
+ (char *)_huff_lengthlist_line_128x7_0sub1,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
+static const char _huff_lengthlist_line_128x7_0sub2[] = {
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 3, 3, 4, 4, 4, 4,
+ 5, 4, 5, 4, 5, 4, 6, 4, 6,
+};
+
+static const static_codebook _huff_book_line_128x7_0sub2 = {
+ 1, 25,
+ (char *)_huff_lengthlist_line_128x7_0sub2,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
+static const char _huff_lengthlist_line_128x7_0sub3[] = {
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 5, 3, 5, 3, 5, 4,
+ 5, 4, 5, 5, 5, 5, 6, 5, 6, 5, 6, 5, 6, 5, 6, 5,
+ 7, 8, 9,11,13,13,13,13,13,13,13,13,13,13,13,13,
+};
+
+static const static_codebook _huff_book_line_128x7_0sub3 = {
+ 1, 64,
+ (char *)_huff_lengthlist_line_128x7_0sub3,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
+static const char _huff_lengthlist_line_128x7_1sub1[] = {
+ 0, 3, 3, 2, 3, 3, 4, 3, 4,
+};
+
+static const static_codebook _huff_book_line_128x7_1sub1 = {
+ 1, 9,
+ (char *)_huff_lengthlist_line_128x7_1sub1,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
+static const char _huff_lengthlist_line_128x7_1sub2[] = {
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 4, 3, 6, 3, 6, 3,
+ 6, 3, 7, 3, 8, 4, 9, 4, 9,
+};
+
+static const static_codebook _huff_book_line_128x7_1sub2 = {
+ 1, 25,
+ (char *)_huff_lengthlist_line_128x7_1sub2,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
+static const char _huff_lengthlist_line_128x7_1sub3[] = {
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 7, 2, 7, 3, 8, 4,
+ 9, 5, 9, 8,10,11,11,12,14,14,14,14,14,14,14,14,
+ 14,14,14,14,14,14,14,14,14,14,14,14,13,13,13,13,
+};
+
+static const static_codebook _huff_book_line_128x7_1sub3 = {
+ 1, 64,
+ (char *)_huff_lengthlist_line_128x7_1sub3,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
+static const char _huff_lengthlist_line_128x11_class1[] = {
+ 1, 6, 3, 7, 2, 4, 5, 7,
+};
+
+static const static_codebook _huff_book_line_128x11_class1 = {
+ 1, 8,
+ (char *)_huff_lengthlist_line_128x11_class1,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
+static const char _huff_lengthlist_line_128x11_class2[] = {
+ 1, 6,12,16, 4,12,15,16, 9,15,16,16,16,16,16,16,
+ 2, 5,11,16, 5,11,13,16, 9,13,16,16,16,16,16,16,
+ 4, 8,12,16, 5, 9,12,16, 9,13,15,16,16,16,16,16,
+ 15,16,16,16,11,14,13,16,12,15,16,16,16,16,16,15,
+};
+
+static const static_codebook _huff_book_line_128x11_class2 = {
+ 1, 64,
+ (char *)_huff_lengthlist_line_128x11_class2,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
+static const char _huff_lengthlist_line_128x11_class3[] = {
+ 7, 6, 9,17, 7, 6, 8,17,12, 9,11,16,16,16,16,16,
+ 5, 4, 7,16, 5, 3, 6,14, 9, 6, 8,15,16,16,16,16,
+ 5, 4, 6,13, 3, 2, 4,11, 7, 4, 6,13,16,11,10,14,
+ 12,12,12,16, 9, 7,10,15,12, 9,11,16,16,15,15,16,
+};
+
+static const static_codebook _huff_book_line_128x11_class3 = {
+ 1, 64,
+ (char *)_huff_lengthlist_line_128x11_class3,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
+static const char _huff_lengthlist_line_128x11_0sub0[] = {
+ 5, 5, 5, 5, 5, 5, 6, 5, 6, 5, 6, 5, 6, 5, 6, 5,
+ 6, 5, 6, 5, 6, 5, 6, 5, 6, 5, 6, 6, 6, 6, 7, 6,
+ 7, 6, 7, 6, 7, 6, 7, 6, 7, 6, 8, 6, 8, 6, 8, 7,
+ 8, 7, 8, 7, 8, 7, 9, 7, 9, 8, 9, 8, 9, 8,10, 8,
+ 10, 9,10, 9,10, 9,11, 9,11, 9,10,10,11,10,11,10,
+ 11,11,11,11,11,11,12,13,14,14,14,15,15,16,16,16,
+ 17,15,16,15,16,16,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,
+};
+
+static const static_codebook _huff_book_line_128x11_0sub0 = {
+ 1, 128,
+ (char *)_huff_lengthlist_line_128x11_0sub0,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
+static const char _huff_lengthlist_line_128x11_1sub0[] = {
+ 2, 5, 5, 5, 5, 5, 5, 4, 5, 5, 5, 5, 5, 5, 5, 5,
+ 6, 5, 6, 5, 6, 5, 7, 6, 7, 6, 7, 6, 8, 6, 8, 6,
+};
+
+static const static_codebook _huff_book_line_128x11_1sub0 = {
+ 1, 32,
+ (char *)_huff_lengthlist_line_128x11_1sub0,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
+static const char _huff_lengthlist_line_128x11_1sub1[] = {
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 5, 3, 5, 3, 6, 4, 6, 4, 7, 4, 7, 4, 7, 4, 8, 4,
+ 8, 4, 9, 5, 9, 5, 9, 5, 9, 6,10, 6,10, 6,11, 7,
+ 10, 7,10, 8,11, 9,11, 9,11,10,11,11,12,11,11,12,
+ 15,15,12,14,11,14,12,14,11,14,13,14,12,14,11,14,
+ 11,14,12,14,11,14,11,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,
+};
+
+static const static_codebook _huff_book_line_128x11_1sub1 = {
+ 1, 128,
+ (char *)_huff_lengthlist_line_128x11_1sub1,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
+static const char _huff_lengthlist_line_128x11_2sub1[] = {
+ 0, 4, 5, 4, 5, 4, 5, 3, 5, 3, 5, 3, 5, 4, 4, 4,
+ 5, 5,
+};
+
+static const static_codebook _huff_book_line_128x11_2sub1 = {
+ 1, 18,
+ (char *)_huff_lengthlist_line_128x11_2sub1,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
+static const char _huff_lengthlist_line_128x11_2sub2[] = {
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 3, 3, 3, 4, 4, 4, 4, 5, 4, 5, 4, 6, 5, 7,
+ 5, 7, 6, 8, 6, 8, 6, 9, 7, 9, 7,10, 7, 9, 8,11,
+ 8,11,
+};
+
+static const static_codebook _huff_book_line_128x11_2sub2 = {
+ 1, 50,
+ (char *)_huff_lengthlist_line_128x11_2sub2,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
+static const char _huff_lengthlist_line_128x11_2sub3[] = {
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 4, 8, 3, 8, 4, 8, 4, 8, 6, 8, 5, 8, 4, 8,
+ 4, 8, 6, 8, 7, 8, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7,
+ 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7,
+ 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7,
+ 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7,
+};
+
+static const static_codebook _huff_book_line_128x11_2sub3 = {
+ 1, 128,
+ (char *)_huff_lengthlist_line_128x11_2sub3,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
+static const char _huff_lengthlist_line_128x11_3sub1[] = {
+ 0, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 5, 4,
+ 5, 4,
+};
+
+static const static_codebook _huff_book_line_128x11_3sub1 = {
+ 1, 18,
+ (char *)_huff_lengthlist_line_128x11_3sub1,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
+static const char _huff_lengthlist_line_128x11_3sub2[] = {
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 5, 3, 5, 4, 6, 4, 6, 4, 7, 4, 7, 4, 8, 4,
+ 8, 4, 9, 4, 9, 4,10, 4,10, 5,10, 5,11, 5,12, 6,
+ 12, 6,
+};
+
+static const static_codebook _huff_book_line_128x11_3sub2 = {
+ 1, 50,
+ (char *)_huff_lengthlist_line_128x11_3sub2,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
+static const char _huff_lengthlist_line_128x11_3sub3[] = {
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 7, 1, 6, 3, 7, 3, 8, 4, 8, 5, 8, 8, 8, 9,
+ 7, 8, 8, 7, 7, 7, 8, 9,10, 9, 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, 9, 9,
+};
+
+static const static_codebook _huff_book_line_128x11_3sub3 = {
+ 1, 128,
+ (char *)_huff_lengthlist_line_128x11_3sub3,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
+static const char _huff_lengthlist_line_128x17_class1[] = {
+ 1, 3, 4, 7, 2, 5, 6, 7,
+};
+
+static const static_codebook _huff_book_line_128x17_class1 = {
+ 1, 8,
+ (char *)_huff_lengthlist_line_128x17_class1,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
+static const char _huff_lengthlist_line_128x17_class2[] = {
+ 1, 4,10,19, 3, 8,13,19, 7,12,19,19,19,19,19,19,
+ 2, 6,11,19, 8,13,19,19, 9,11,19,19,19,19,19,19,
+ 6, 7,13,19, 9,13,19,19,10,13,18,18,18,18,18,18,
+ 18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,
+};
+
+static const static_codebook _huff_book_line_128x17_class2 = {
+ 1, 64,
+ (char *)_huff_lengthlist_line_128x17_class2,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
+static const char _huff_lengthlist_line_128x17_class3[] = {
+ 3, 6,10,17, 4, 8,11,20, 8,10,11,20,20,20,20,20,
+ 2, 4, 8,18, 4, 6, 8,17, 7, 8,10,20,20,17,20,20,
+ 3, 5, 8,17, 3, 4, 6,17, 8, 8,10,17,17,12,16,20,
+ 13,13,15,20,10,10,12,20,15,14,15,20,20,20,19,19,
+};
+
+static const static_codebook _huff_book_line_128x17_class3 = {
+ 1, 64,
+ (char *)_huff_lengthlist_line_128x17_class3,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
+static const char _huff_lengthlist_line_128x17_0sub0[] = {
+ 5, 5, 6, 5, 6, 5, 6, 5, 6, 5, 6, 5, 6, 5, 6, 5,
+ 7, 5, 7, 5, 7, 5, 7, 5, 7, 5, 7, 5, 8, 5, 8, 5,
+ 8, 5, 8, 5, 8, 6, 8, 6, 8, 6, 9, 6, 9, 6, 9, 6,
+ 9, 6, 9, 7, 9, 7, 9, 7, 9, 7,10, 7,10, 8,10, 8,
+ 10, 8,10, 8,10, 8,11, 8,11, 8,11, 8,11, 8,11, 9,
+ 12, 9,12, 9,12, 9,12, 9,12,10,12,10,13,11,13,11,
+ 14,12,14,13,15,14,16,14,17,15,18,16,20,20,20,20,
+ 20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,
+};
+
+static const static_codebook _huff_book_line_128x17_0sub0 = {
+ 1, 128,
+ (char *)_huff_lengthlist_line_128x17_0sub0,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
+static const char _huff_lengthlist_line_128x17_1sub0[] = {
+ 2, 5, 5, 4, 5, 4, 5, 4, 5, 5, 5, 5, 5, 5, 6, 5,
+ 6, 5, 6, 5, 7, 6, 7, 6, 7, 6, 8, 6, 9, 7, 9, 7,
+};
+
+static const static_codebook _huff_book_line_128x17_1sub0 = {
+ 1, 32,
+ (char *)_huff_lengthlist_line_128x17_1sub0,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
+static const char _huff_lengthlist_line_128x17_1sub1[] = {
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 4, 3, 5, 3, 5, 3, 6, 3, 6, 4, 6, 4, 7, 4, 7, 5,
+ 8, 5, 8, 6, 9, 7, 9, 7, 9, 8,10, 9,10, 9,11,10,
+ 11,11,11,11,11,11,12,12,12,13,12,13,12,14,12,15,
+ 12,14,12,16,13,17,13,17,14,17,14,16,13,17,14,17,
+ 14,17,15,17,15,15,16,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,
+};
+
+static const static_codebook _huff_book_line_128x17_1sub1 = {
+ 1, 128,
+ (char *)_huff_lengthlist_line_128x17_1sub1,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
+static const char _huff_lengthlist_line_128x17_2sub1[] = {
+ 0, 4, 5, 4, 6, 4, 8, 3, 9, 3, 9, 2, 9, 3, 8, 4,
+ 9, 4,
+};
+
+static const static_codebook _huff_book_line_128x17_2sub1 = {
+ 1, 18,
+ (char *)_huff_lengthlist_line_128x17_2sub1,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
+static const char _huff_lengthlist_line_128x17_2sub2[] = {
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 5, 1, 5, 3, 5, 3, 5, 4, 7, 5,10, 7,10, 7,
+ 12,10,14,10,14, 9,14,11,14,14,14,13,13,13,13,13,
+ 13,13,
+};
+
+static const static_codebook _huff_book_line_128x17_2sub2 = {
+ 1, 50,
+ (char *)_huff_lengthlist_line_128x17_2sub2,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
+static const char _huff_lengthlist_line_128x17_2sub3[] = {
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7,
+ 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 6, 6,
+ 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6,
+ 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6,
+ 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6,
+};
+
+static const static_codebook _huff_book_line_128x17_2sub3 = {
+ 1, 128,
+ (char *)_huff_lengthlist_line_128x17_2sub3,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
+static const char _huff_lengthlist_line_128x17_3sub1[] = {
+ 0, 4, 4, 4, 4, 4, 4, 4, 5, 3, 5, 3, 5, 4, 6, 4,
+ 6, 4,
+};
+
+static const static_codebook _huff_book_line_128x17_3sub1 = {
+ 1, 18,
+ (char *)_huff_lengthlist_line_128x17_3sub1,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
+static const char _huff_lengthlist_line_128x17_3sub2[] = {
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 5, 3, 6, 3, 6, 4, 7, 4, 7, 4, 7, 4, 8, 4,
+ 8, 4, 8, 4, 8, 4, 9, 4, 9, 5,10, 5,10, 7,10, 8,
+ 10, 8,
+};
+
+static const static_codebook _huff_book_line_128x17_3sub2 = {
+ 1, 50,
+ (char *)_huff_lengthlist_line_128x17_3sub2,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
+static const char _huff_lengthlist_line_128x17_3sub3[] = {
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 3, 2, 4, 3, 4, 4, 4, 5, 4, 7, 5, 8, 5,11,
+ 6,10, 6,12, 7,12, 7,12, 8,12, 8,12,10,12,12,12,
+ 12,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
+ 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
+ 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
+};
+
+static const static_codebook _huff_book_line_128x17_3sub3 = {
+ 1, 128,
+ (char *)_huff_lengthlist_line_128x17_3sub3,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
+static const char _huff_lengthlist_line_1024x27_class1[] = {
+ 2,10, 8,14, 7,12,11,14, 1, 5, 3, 7, 4, 9, 7,13,
+};
+
+static const static_codebook _huff_book_line_1024x27_class1 = {
+ 1, 16,
+ (char *)_huff_lengthlist_line_1024x27_class1,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
+static const char _huff_lengthlist_line_1024x27_class2[] = {
+ 1, 4, 2, 6, 3, 7, 5, 7,
+};
+
+static const static_codebook _huff_book_line_1024x27_class2 = {
+ 1, 8,
+ (char *)_huff_lengthlist_line_1024x27_class2,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
+static const char _huff_lengthlist_line_1024x27_class3[] = {
+ 1, 5, 7,21, 5, 8, 9,21,10, 9,12,20,20,16,20,20,
+ 4, 8, 9,20, 6, 8, 9,20,11,11,13,20,20,15,17,20,
+ 9,11,14,20, 8,10,15,20,11,13,15,20,20,20,20,20,
+ 20,20,20,20,13,20,20,20,18,18,20,20,20,20,20,20,
+ 3, 6, 8,20, 6, 7, 9,20,10, 9,12,20,20,20,20,20,
+ 5, 7, 9,20, 6, 6, 9,20,10, 9,12,20,20,20,20,20,
+ 8,10,13,20, 8, 9,12,20,11,10,12,20,20,20,20,20,
+ 18,20,20,20,15,17,18,20,18,17,18,20,20,20,20,20,
+ 7,10,12,20, 8, 9,11,20,14,13,14,20,20,20,20,20,
+ 6, 9,12,20, 7, 8,11,20,12,11,13,20,20,20,20,20,
+ 9,11,15,20, 8,10,14,20,12,11,14,20,20,20,20,20,
+ 20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,
+ 11,16,18,20,15,15,17,20,20,17,20,20,20,20,20,20,
+ 9,14,16,20,12,12,15,20,17,15,18,20,20,20,20,20,
+ 16,19,18,20,15,16,20,20,17,17,20,20,20,20,20,20,
+ 20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,
+};
+
+static const static_codebook _huff_book_line_1024x27_class3 = {
+ 1, 256,
+ (char *)_huff_lengthlist_line_1024x27_class3,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
+static const char _huff_lengthlist_line_1024x27_class4[] = {
+ 2, 3, 7,13, 4, 4, 7,15, 8, 6, 9,17,21,16,15,21,
+ 2, 5, 7,11, 5, 5, 7,14, 9, 7,10,16,17,15,16,21,
+ 4, 7,10,17, 7, 7, 9,15,11, 9,11,16,21,18,15,21,
+ 18,21,21,21,15,17,17,19,21,19,18,20,21,21,21,20,
+};
+
+static const static_codebook _huff_book_line_1024x27_class4 = {
+ 1, 64,
+ (char *)_huff_lengthlist_line_1024x27_class4,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
+static const char _huff_lengthlist_line_1024x27_0sub0[] = {
+ 5, 5, 5, 5, 6, 5, 6, 5, 6, 5, 6, 5, 6, 5, 6, 5,
+ 6, 5, 6, 5, 6, 5, 6, 5, 7, 5, 7, 5, 7, 5, 7, 5,
+ 8, 6, 8, 6, 8, 6, 9, 6, 9, 6,10, 6,10, 6,11, 6,
+ 11, 7,11, 7,12, 7,12, 7,12, 7,12, 7,12, 7,12, 7,
+ 12, 7,12, 8,13, 8,12, 8,12, 8,13, 8,13, 9,13, 9,
+ 13, 9,13, 9,12,10,12,10,13,10,14,11,14,12,14,13,
+ 14,13,14,14,15,16,15,15,15,14,15,17,21,22,22,21,
+ 22,22,22,22,22,22,21,21,21,21,21,21,21,21,21,21,
+};
+
+static const static_codebook _huff_book_line_1024x27_0sub0 = {
+ 1, 128,
+ (char *)_huff_lengthlist_line_1024x27_0sub0,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
+static const char _huff_lengthlist_line_1024x27_1sub0[] = {
+ 2, 5, 5, 4, 5, 4, 5, 4, 5, 4, 6, 5, 6, 5, 6, 5,
+ 6, 5, 7, 5, 7, 6, 8, 6, 8, 6, 8, 6, 9, 6, 9, 6,
+};
+
+static const static_codebook _huff_book_line_1024x27_1sub0 = {
+ 1, 32,
+ (char *)_huff_lengthlist_line_1024x27_1sub0,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
+static const char _huff_lengthlist_line_1024x27_1sub1[] = {
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 8, 5, 8, 4, 9, 4, 9, 4, 9, 4, 9, 4, 9, 4, 9, 4,
+ 9, 4, 9, 4, 9, 4, 8, 4, 8, 4, 9, 5, 9, 5, 9, 5,
+ 9, 5, 9, 6,10, 6,10, 7,10, 8,11, 9,11,11,12,13,
+ 12,14,13,15,13,15,14,16,14,17,15,17,15,15,16,16,
+ 15,16,16,16,15,18,16,15,17,17,19,19,19,19,19,19,
+ 19,19,19,19,19,19,19,19,19,19,19,19,19,19,19,19,
+};
+
+static const static_codebook _huff_book_line_1024x27_1sub1 = {
+ 1, 128,
+ (char *)_huff_lengthlist_line_1024x27_1sub1,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
+static const char _huff_lengthlist_line_1024x27_2sub0[] = {
+ 1, 5, 5, 5, 5, 5, 5, 5, 6, 5, 6, 5, 6, 5, 6, 5,
+ 6, 6, 7, 7, 7, 7, 8, 7, 8, 8, 9, 8,10, 9,10, 9,
+};
+
+static const static_codebook _huff_book_line_1024x27_2sub0 = {
+ 1, 32,
+ (char *)_huff_lengthlist_line_1024x27_2sub0,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
+static const char _huff_lengthlist_line_1024x27_2sub1[] = {
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 4, 3, 4, 3, 4, 4, 5, 4, 5, 4, 5, 5, 6, 5, 6, 5,
+ 7, 5, 7, 6, 7, 6, 8, 7, 8, 7, 8, 7, 9, 8, 9, 9,
+ 9, 9,10,10,10,11, 9,12, 9,12, 9,15,10,14, 9,13,
+ 10,13,10,12,10,12,10,13,10,12,11,13,11,14,12,13,
+ 13,14,14,13,14,15,14,16,13,13,14,16,16,16,16,16,
+ 16,16,16,16,16,16,16,16,16,16,16,16,16,16,15,15,
+};
+
+static const static_codebook _huff_book_line_1024x27_2sub1 = {
+ 1, 128,
+ (char *)_huff_lengthlist_line_1024x27_2sub1,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
+static const char _huff_lengthlist_line_1024x27_3sub1[] = {
+ 0, 4, 5, 4, 5, 3, 5, 3, 5, 3, 5, 4, 4, 4, 4, 5,
+ 5, 5,
+};
+
+static const static_codebook _huff_book_line_1024x27_3sub1 = {
+ 1, 18,
+ (char *)_huff_lengthlist_line_1024x27_3sub1,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
+static const char _huff_lengthlist_line_1024x27_3sub2[] = {
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 3, 3, 4, 3, 4, 4, 4, 4, 5, 5, 5, 5, 5, 6,
+ 5, 7, 5, 8, 6, 8, 6, 9, 7,10, 7,10, 8,10, 8,11,
+ 9,11,
+};
+
+static const static_codebook _huff_book_line_1024x27_3sub2 = {
+ 1, 50,
+ (char *)_huff_lengthlist_line_1024x27_3sub2,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
+static const char _huff_lengthlist_line_1024x27_3sub3[] = {
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 3, 7, 3, 8, 3,10, 3, 8, 3, 9, 3, 8, 4, 9,
+ 4, 9, 5, 9, 6,10, 6, 9, 7,11, 7,12, 9,13,10,13,
+ 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,
+};
+
+static const static_codebook _huff_book_line_1024x27_3sub3 = {
+ 1, 128,
+ (char *)_huff_lengthlist_line_1024x27_3sub3,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
+static const char _huff_lengthlist_line_1024x27_4sub1[] = {
+ 0, 4, 5, 4, 5, 4, 5, 4, 5, 3, 5, 3, 5, 3, 5, 4,
+ 5, 4,
+};
+
+static const static_codebook _huff_book_line_1024x27_4sub1 = {
+ 1, 18,
+ (char *)_huff_lengthlist_line_1024x27_4sub1,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
+static const char _huff_lengthlist_line_1024x27_4sub2[] = {
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 4, 2, 4, 2, 5, 3, 5, 4, 6, 6, 6, 7, 7, 8,
+ 7, 8, 7, 8, 7, 9, 8, 9, 8, 9, 8,10, 8,11, 9,12,
+ 9,12,
+};
+
+static const static_codebook _huff_book_line_1024x27_4sub2 = {
+ 1, 50,
+ (char *)_huff_lengthlist_line_1024x27_4sub2,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
+static const char _huff_lengthlist_line_1024x27_4sub3[] = {
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 2, 5, 2, 6, 3, 6, 4, 7, 4, 7, 5, 9, 5,11,
+ 6,11, 6,11, 7,11, 6,11, 6,11, 9,11, 8,11,11,11,
+ 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
+ 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
+ 11,11,11,11,11,11,11,11,11,11,10,10,10,10,10,10,
+};
+
+static const static_codebook _huff_book_line_1024x27_4sub3 = {
+ 1, 128,
+ (char *)_huff_lengthlist_line_1024x27_4sub3,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
+static const char _huff_lengthlist_line_2048x27_class1[] = {
+ 2, 6, 8, 9, 7,11,13,13, 1, 3, 5, 5, 6, 6,12,10,
+};
+
+static const static_codebook _huff_book_line_2048x27_class1 = {
+ 1, 16,
+ (char *)_huff_lengthlist_line_2048x27_class1,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
+static const char _huff_lengthlist_line_2048x27_class2[] = {
+ 1, 2, 3, 6, 4, 7, 5, 7,
+};
+
+static const static_codebook _huff_book_line_2048x27_class2 = {
+ 1, 8,
+ (char *)_huff_lengthlist_line_2048x27_class2,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
+static const char _huff_lengthlist_line_2048x27_class3[] = {
+ 3, 3, 6,16, 5, 5, 7,16, 9, 8,11,16,16,16,16,16,
+ 5, 5, 8,16, 5, 5, 7,16, 8, 7, 9,16,16,16,16,16,
+ 9, 9,12,16, 6, 8,11,16, 9,10,11,16,16,16,16,16,
+ 16,16,16,16,13,16,16,16,15,16,16,16,16,16,16,16,
+ 5, 4, 7,16, 6, 5, 8,16, 9, 8,10,16,16,16,16,16,
+ 5, 5, 7,15, 5, 4, 6,15, 7, 6, 8,16,16,16,16,16,
+ 9, 9,11,15, 7, 7, 9,16, 8, 8, 9,16,16,16,16,16,
+ 16,16,16,16,15,15,15,16,15,15,14,16,16,16,16,16,
+ 8, 8,11,16, 8, 9,10,16,11,10,14,16,16,16,16,16,
+ 6, 8,10,16, 6, 7,10,16, 8, 8,11,16,14,16,16,16,
+ 10,11,14,16, 9, 9,11,16,10,10,11,16,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,
+ 12,16,15,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,
+};
+
+static const static_codebook _huff_book_line_2048x27_class3 = {
+ 1, 256,
+ (char *)_huff_lengthlist_line_2048x27_class3,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
+static const char _huff_lengthlist_line_2048x27_class4[] = {
+ 2, 4, 7,13, 4, 5, 7,15, 8, 7,10,16,16,14,16,16,
+ 2, 4, 7,16, 3, 4, 7,14, 8, 8,10,16,16,16,15,16,
+ 6, 8,11,16, 7, 7, 9,16,11, 9,13,16,16,16,15,16,
+ 16,16,16,16,14,16,16,16,16,16,16,16,16,16,16,16,
+};
+
+static const static_codebook _huff_book_line_2048x27_class4 = {
+ 1, 64,
+ (char *)_huff_lengthlist_line_2048x27_class4,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
+static const char _huff_lengthlist_line_2048x27_0sub0[] = {
+ 5, 5, 5, 5, 5, 5, 6, 5, 6, 5, 6, 5, 6, 5, 6, 5,
+ 6, 5, 7, 5, 7, 5, 7, 5, 8, 5, 8, 5, 8, 5, 9, 5,
+ 9, 6,10, 6,10, 6,11, 6,11, 6,11, 6,11, 6,11, 6,
+ 11, 6,11, 6,12, 7,11, 7,11, 7,11, 7,11, 7,10, 7,
+ 11, 7,11, 7,12, 7,11, 8,11, 8,11, 8,11, 8,13, 8,
+ 12, 9,11, 9,11, 9,11,10,12,10,12, 9,12,10,12,11,
+ 14,12,16,12,12,11,14,16,17,17,17,17,17,17,17,17,
+ 17,17,17,17,17,17,17,17,17,17,17,17,16,16,16,16,
+};
+
+static const static_codebook _huff_book_line_2048x27_0sub0 = {
+ 1, 128,
+ (char *)_huff_lengthlist_line_2048x27_0sub0,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
+static const char _huff_lengthlist_line_2048x27_1sub0[] = {
+ 4, 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 5, 5,
+ 5, 5, 6, 6, 6, 6, 6, 6, 7, 6, 7, 6, 7, 6, 7, 6,
+};
+
+static const static_codebook _huff_book_line_2048x27_1sub0 = {
+ 1, 32,
+ (char *)_huff_lengthlist_line_2048x27_1sub0,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
+static const char _huff_lengthlist_line_2048x27_1sub1[] = {
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 6, 5, 7, 5, 7, 4, 7, 4, 8, 4, 8, 4, 8, 4, 8, 3,
+ 8, 4, 9, 4, 9, 4, 9, 4, 9, 4, 9, 5, 9, 5, 9, 6,
+ 9, 7, 9, 8, 9, 9, 9,10, 9,11, 9,14, 9,15,10,15,
+ 10,15,10,15,10,15,11,15,10,14,12,14,11,14,13,14,
+ 13,15,15,15,12,15,15,15,13,15,13,15,13,15,15,15,
+ 15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,14,
+};
+
+static const static_codebook _huff_book_line_2048x27_1sub1 = {
+ 1, 128,
+ (char *)_huff_lengthlist_line_2048x27_1sub1,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
+static const char _huff_lengthlist_line_2048x27_2sub0[] = {
+ 2, 4, 5, 4, 5, 4, 5, 4, 5, 5, 5, 5, 5, 5, 6, 5,
+ 6, 5, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8,
+};
+
+static const static_codebook _huff_book_line_2048x27_2sub0 = {
+ 1, 32,
+ (char *)_huff_lengthlist_line_2048x27_2sub0,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
+static const char _huff_lengthlist_line_2048x27_2sub1[] = {
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 3, 4, 3, 4, 3, 4, 4, 5, 4, 5, 5, 5, 6, 6, 6, 7,
+ 6, 8, 6, 8, 6, 9, 7,10, 7,10, 7,10, 7,12, 7,12,
+ 7,12, 9,12,11,12,10,12,10,12,11,12,12,12,10,12,
+ 10,12,10,12, 9,12,11,12,12,12,12,12,11,12,11,12,
+ 12,12,12,12,12,12,12,12,10,10,12,12,12,12,12,10,
+ 12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,
+};
+
+static const static_codebook _huff_book_line_2048x27_2sub1 = {
+ 1, 128,
+ (char *)_huff_lengthlist_line_2048x27_2sub1,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
+static const char _huff_lengthlist_line_2048x27_3sub1[] = {
+ 0, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4,
+ 5, 5,
+};
+
+static const static_codebook _huff_book_line_2048x27_3sub1 = {
+ 1, 18,
+ (char *)_huff_lengthlist_line_2048x27_3sub1,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
+static const char _huff_lengthlist_line_2048x27_3sub2[] = {
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 3, 3, 3, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 6,
+ 6, 7, 6, 7, 6, 8, 6, 9, 7, 9, 7, 9, 9,11, 9,12,
+ 10,12,
+};
+
+static const static_codebook _huff_book_line_2048x27_3sub2 = {
+ 1, 50,
+ (char *)_huff_lengthlist_line_2048x27_3sub2,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
+static const char _huff_lengthlist_line_2048x27_3sub3[] = {
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 3, 6, 3, 7, 3, 7, 5, 7, 7, 7, 7, 7, 6, 7,
+ 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7,
+ 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7,
+ 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7,
+ 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7,
+};
+
+static const static_codebook _huff_book_line_2048x27_3sub3 = {
+ 1, 128,
+ (char *)_huff_lengthlist_line_2048x27_3sub3,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
+static const char _huff_lengthlist_line_2048x27_4sub1[] = {
+ 0, 3, 4, 4, 4, 4, 4, 4, 4, 4, 5, 4, 5, 4, 5, 4,
+ 4, 5,
+};
+
+static const static_codebook _huff_book_line_2048x27_4sub1 = {
+ 1, 18,
+ (char *)_huff_lengthlist_line_2048x27_4sub1,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
+static const char _huff_lengthlist_line_2048x27_4sub2[] = {
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 3, 2, 4, 3, 4, 4, 4, 5, 5, 6, 5, 6, 5, 7,
+ 6, 6, 6, 7, 7, 7, 8, 9, 9, 9,12,10,11,10,10,12,
+ 10,10,
+};
+
+static const static_codebook _huff_book_line_2048x27_4sub2 = {
+ 1, 50,
+ (char *)_huff_lengthlist_line_2048x27_4sub2,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
+static const char _huff_lengthlist_line_2048x27_4sub3[] = {
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 3, 6, 5, 7, 5, 7, 7, 7, 7, 7, 5, 7, 5, 7,
+ 5, 7, 5, 7, 7, 7, 7, 7, 4, 7, 7, 7, 7, 7, 7, 7,
+ 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7,
+ 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7,
+ 7, 7, 7, 7, 7, 7, 7, 6, 6, 6, 6, 6, 6, 6, 6, 6,
+};
+
+static const static_codebook _huff_book_line_2048x27_4sub3 = {
+ 1, 128,
+ (char *)_huff_lengthlist_line_2048x27_4sub3,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
+static const char _huff_lengthlist_line_256x4low_class0[] = {
+ 4, 5, 6,11, 5, 5, 6,10, 7, 7, 6, 6,14,13, 9, 9,
+ 6, 6, 6,10, 6, 6, 6, 9, 8, 7, 7, 9,14,12, 8,11,
+ 8, 7, 7,11, 8, 8, 7,11, 9, 9, 7, 9,13,11, 9,13,
+ 19,19,18,19,15,16,16,19,11,11,10,13,10,10, 9,15,
+ 5, 5, 6,13, 6, 6, 6,11, 8, 7, 6, 7,14,11,10,11,
+ 6, 6, 6,12, 7, 6, 6,11, 8, 7, 7,11,13,11, 9,11,
+ 9, 7, 6,12, 8, 7, 6,12, 9, 8, 8,11,13,10, 7,13,
+ 19,19,17,19,17,14,14,19,12,10, 8,12,13,10, 9,16,
+ 7, 8, 7,12, 7, 7, 7,11, 8, 7, 7, 8,12,12,11,11,
+ 8, 8, 7,12, 8, 7, 6,11, 8, 7, 7,10,10,11,10,11,
+ 9, 8, 8,13, 9, 8, 7,12,10, 9, 7,11, 9, 8, 7,11,
+ 18,18,15,18,18,16,17,18,15,11,10,18,11, 9, 9,18,
+ 16,16,13,16,12,11,10,16,12,11, 9, 6,15,12,11,13,
+ 16,16,14,14,13,11,12,16,12, 9, 9,13,13,10,10,12,
+ 17,18,17,17,14,15,14,16,14,12,14,15,12,10,11,12,
+ 18,18,18,18,18,18,18,18,18,12,13,18,16,11, 9,18,
+};
+
+static const static_codebook _huff_book_line_256x4low_class0 = {
+ 1, 256,
+ (char *)_huff_lengthlist_line_256x4low_class0,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
+static const char _huff_lengthlist_line_256x4low_0sub0[] = {
+ 1, 3, 2, 3,
+};
+
+static const static_codebook _huff_book_line_256x4low_0sub0 = {
+ 1, 4,
+ (char *)_huff_lengthlist_line_256x4low_0sub0,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
+static const char _huff_lengthlist_line_256x4low_0sub1[] = {
+ 0, 0, 0, 0, 2, 3, 2, 3, 3, 3,
+};
+
+static const static_codebook _huff_book_line_256x4low_0sub1 = {
+ 1, 10,
+ (char *)_huff_lengthlist_line_256x4low_0sub1,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
+static const char _huff_lengthlist_line_256x4low_0sub2[] = {
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 3, 3, 4, 3, 4,
+ 4, 4, 4, 4, 5, 5, 5, 6, 6,
+};
+
+static const static_codebook _huff_book_line_256x4low_0sub2 = {
+ 1, 25,
+ (char *)_huff_lengthlist_line_256x4low_0sub2,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
+static const char _huff_lengthlist_line_256x4low_0sub3[] = {
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 4, 2, 4, 3, 5, 4,
+ 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 6, 7, 7, 8, 6, 9,
+ 7,12,11,16,13,16,12,15,13,15,12,14,12,15,15,15,
+};
+
+static const static_codebook _huff_book_line_256x4low_0sub3 = {
+ 1, 64,
+ (char *)_huff_lengthlist_line_256x4low_0sub3,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
diff --git a/Sources/libvorbis/lib/books/uncoupled/res_books_uncoupled.h b/Sources/libvorbis/lib/books/uncoupled/res_books_uncoupled.h
new file mode 100644
index 000000000..736353b67
--- /dev/null
+++ b/Sources/libvorbis/lib/books/uncoupled/res_books_uncoupled.h
@@ -0,0 +1,7758 @@
+/********************************************************************
+ * *
+ * THIS FILE IS PART OF THE OggVorbis SOFTWARE CODEC SOURCE CODE. *
+ * USE, DISTRIBUTION AND REPRODUCTION OF THIS LIBRARY SOURCE IS *
+ * GOVERNED BY A BSD-STYLE SOURCE LICENSE INCLUDED WITH THIS SOURCE *
+ * IN 'COPYING'. PLEASE READ THESE TERMS BEFORE DISTRIBUTING. *
+ * *
+ * THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2007 *
+ * by the Xiph.Org Foundation http://www.xiph.org/ *
+ * *
+ ********************************************************************
+
+ function: static codebooks autogenerated by huff/huffbuld
+ last modified: $Id: res_books_uncoupled.h 19057 2014-01-22 12:32:31Z xiphmont $
+
+ ********************************************************************/
+
+#include "codebook.h"
+
+static const long _vq_quantlist__16u0__p1_0[] = {
+ 1,
+ 0,
+ 2,
+};
+
+static const char _vq_lengthlist__16u0__p1_0[] = {
+ 1, 4, 4, 5, 7, 7, 5, 7, 8, 5, 8, 8, 8,10,10, 8,
+ 10,11, 5, 8, 8, 8,10,10, 8,10,10, 4, 9, 9, 9,12,
+ 11, 8,11,11, 8,12,11,10,12,14,10,13,13, 7,11,11,
+ 10,14,12,11,14,14, 4, 9, 9, 8,11,11, 9,11,12, 7,
+ 11,11,10,13,14,10,12,14, 8,11,12,10,14,14,10,13,
+ 12,
+};
+
+static const static_codebook _16u0__p1_0 = {
+ 4, 81,
+ (char *)_vq_lengthlist__16u0__p1_0,
+ 1, -535822336, 1611661312, 2, 0,
+ (long *)_vq_quantlist__16u0__p1_0,
+ 0
+};
+
+static const long _vq_quantlist__16u0__p2_0[] = {
+ 1,
+ 0,
+ 2,
+};
+
+static const char _vq_lengthlist__16u0__p2_0[] = {
+ 2, 4, 4, 5, 6, 6, 5, 6, 6, 5, 7, 7, 7, 8, 9, 7,
+ 8, 9, 5, 7, 7, 7, 9, 8, 7, 9, 7, 4, 7, 7, 7, 9,
+ 9, 7, 8, 8, 6, 9, 8, 7, 8,11, 9,11,10, 6, 8, 9,
+ 8,11, 8, 9,10,11, 4, 7, 7, 7, 8, 8, 7, 9, 9, 6,
+ 9, 8, 9,11,10, 8, 8,11, 6, 8, 9, 9,10,11, 8,11,
+ 8,
+};
+
+static const static_codebook _16u0__p2_0 = {
+ 4, 81,
+ (char *)_vq_lengthlist__16u0__p2_0,
+ 1, -535822336, 1611661312, 2, 0,
+ (long *)_vq_quantlist__16u0__p2_0,
+ 0
+};
+
+static const long _vq_quantlist__16u0__p3_0[] = {
+ 2,
+ 1,
+ 3,
+ 0,
+ 4,
+};
+
+static const char _vq_lengthlist__16u0__p3_0[] = {
+ 1, 5, 5, 7, 7, 6, 7, 7, 8, 8, 6, 7, 8, 8, 8, 8,
+ 9, 9,11,11, 8, 9, 9,11,11, 6, 9, 8,10,10, 8,10,
+ 10,11,11, 8,10,10,11,11,10,11,10,13,12, 9,11,10,
+ 13,13, 6, 8, 9,10,10, 8,10,10,11,11, 8,10,10,11,
+ 11, 9,10,11,13,12,10,10,11,12,12, 8,11,11,14,13,
+ 10,12,11,15,13, 9,12,11,15,14,12,14,13,16,14,12,
+ 13,13,17,14, 8,11,11,13,14, 9,11,12,14,15,10,11,
+ 12,13,15,11,13,13,14,16,12,13,14,14,16, 5, 9, 9,
+ 11,11, 9,11,11,12,12, 8,11,11,12,12,11,12,12,15,
+ 14,10,12,12,15,15, 8,11,11,13,12,10,12,12,13,13,
+ 10,12,12,14,13,12,12,13,14,15,11,13,13,17,16, 7,
+ 11,11,13,13,10,12,12,14,13,10,12,12,13,14,12,13,
+ 12,15,14,11,13,13,15,14, 9,12,12,16,15,11,13,13,
+ 17,16,10,13,13,16,16,13,14,15,15,16,13,15,14,19,
+ 17, 9,12,12,14,16,11,13,13,15,16,10,13,13,17,16,
+ 13,14,13,17,15,12,15,15,16,17, 5, 9, 9,11,11, 8,
+ 11,11,13,12, 9,11,11,12,12,10,12,12,14,15,11,12,
+ 12,14,14, 7,11,10,13,12,10,12,12,14,13,10,11,12,
+ 13,13,11,13,13,15,16,12,12,13,15,15, 7,11,11,13,
+ 13,10,13,13,14,14,10,12,12,13,13,11,13,13,16,15,
+ 12,13,13,15,14, 9,12,12,15,15,10,13,13,17,16,11,
+ 12,13,15,15,12,15,14,18,18,13,14,14,16,17, 9,12,
+ 12,15,16,10,13,13,15,16,11,13,13,15,16,13,15,15,
+ 17,17,13,15,14,16,15, 7,11,11,15,16,10,13,12,16,
+ 17,10,12,13,15,17,15,16,16,18,17,13,15,15,17,18,
+ 8,12,12,16,16,11,13,14,17,18,11,13,13,18,16,15,
+ 17,16,17,19,14,15,15,17,16, 8,12,12,16,15,11,14,
+ 13,18,17,11,13,14,18,17,15,16,16,18,17,13,16,16,
+ 18,18,11,15,14,18,17,13,14,15,18, 0,12,15,15, 0,
+ 17,17,16,17,17,18,14,16,18,18, 0,11,14,14,17, 0,
+ 12,15,14,17,19,12,15,14,18, 0,15,18,16, 0,17,14,
+ 18,16,18, 0, 7,11,11,16,15,10,12,12,18,16,10,13,
+ 13,16,15,13,15,14,17,17,14,16,16,19,18, 8,12,12,
+ 16,16,11,13,13,18,16,11,13,14,17,16,14,15,15,19,
+ 18,15,16,16, 0,19, 8,12,12,16,17,11,13,13,17,17,
+ 11,14,13,17,17,13,15,15,17,19,15,17,17,19, 0,11,
+ 14,15,19,17,12,15,16,18,18,12,14,15,19,17,14,16,
+ 17, 0,18,16,16,19,17, 0,11,14,14,18,19,12,15,14,
+ 17,17,13,16,14,17,16,14,17,16,18,18,15,18,15, 0,
+ 18,
+};
+
+static const static_codebook _16u0__p3_0 = {
+ 4, 625,
+ (char *)_vq_lengthlist__16u0__p3_0,
+ 1, -533725184, 1611661312, 3, 0,
+ (long *)_vq_quantlist__16u0__p3_0,
+ 0
+};
+
+static const long _vq_quantlist__16u0__p4_0[] = {
+ 2,
+ 1,
+ 3,
+ 0,
+ 4,
+};
+
+static const char _vq_lengthlist__16u0__p4_0[] = {
+ 3, 5, 5, 8, 8, 6, 6, 6, 9, 9, 6, 6, 6, 9, 9, 9,
+ 10, 9,11,11, 9, 9, 9,11,11, 6, 7, 7,10,10, 7, 7,
+ 8,10,10, 7, 7, 8,10,10,10,10,10,11,12, 9,10,10,
+ 11,12, 6, 7, 7,10,10, 7, 8, 7,10,10, 7, 8, 7,10,
+ 10,10,11,10,12,11,10,10,10,13,10, 9,10,10,12,12,
+ 10,11,10,14,12, 9,11,11,13,13,11,12,13,13,13,11,
+ 12,12,15,13, 9,10,10,12,13, 9,11,10,12,13,10,10,
+ 11,12,13,11,12,12,12,13,11,12,12,13,13, 5, 7, 7,
+ 10,10, 7, 8, 8,10,10, 7, 8, 8,10,10,10,11,10,12,
+ 13,10,10,11,12,12, 6, 8, 8,11,10, 7, 8, 9,10,12,
+ 8, 9, 9,11,11,11,10,11,11,12,10,11,11,13,12, 7,
+ 8, 8,10,11, 8, 9, 8,11,10, 8, 9, 9,11,11,10,12,
+ 10,13,11,10,11,11,13,13,10,11,10,14,13,10,10,11,
+ 13,13,10,12,11,14,13,12,11,13,12,13,13,12,13,14,
+ 14,10,11,11,13,13,10,11,10,12,13,10,12,12,12,14,
+ 12,12,12,14,12,12,13,12,17,15, 5, 7, 7,10,10, 7,
+ 8, 8,10,10, 7, 8, 8,11,10,10,10,11,12,12,10,11,
+ 11,12,13, 6, 8, 8,11,10, 8, 9, 9,11,11, 7, 8, 9,
+ 10,11,11,11,11,12,12,10,10,11,12,13, 6, 8, 8,10,
+ 11, 8, 9, 9,11,11, 7, 9, 7,11,10,10,12,12,13,13,
+ 11,11,10,13,11, 9,11,10,14,13,11,11,11,15,13,10,
+ 10,11,13,13,12,13,13,14,14,12,11,12,12,13,10,11,
+ 11,12,13,10,11,12,13,13,10,11,10,13,12,12,12,13,
+ 14, 0,12,13,11,13,11, 8,10,10,13,13,10,11,11,14,
+ 13,10,11,11,13,12,13,14,14,14,15,12,12,12,15,14,
+ 9,11,10,13,12,10,10,11,13,14,11,11,11,15,12,13,
+ 12,14,15,16,13,13,13,14,13, 9,11,11,12,12,10,12,
+ 11,13,13,10,11,11,13,14,13,13,13,15,15,13,13,14,
+ 17,15,11,12,12,14,14,10,11,12,13,15,12,13,13, 0,
+ 15,13,11,14,12,16,14,16,14, 0,15,11,12,12,14,16,
+ 11,13,12,16,15,12,13,13,14,15,12,14,12,15,13,15,
+ 14,14,16,16, 8,10,10,13,13,10,11,10,13,14,10,11,
+ 11,13,13,13,13,12,14,14,14,13,13,16,17, 9,10,10,
+ 12,14,10,12,11,14,13,10,11,12,13,14,12,12,12,15,
+ 15,13,13,13,14,14, 9,10,10,13,13,10,11,12,12,14,
+ 10,11,10,13,13,13,13,13,14,16,13,13,13,14,14,11,
+ 12,13,15,13,12,14,13,14,16,12,12,13,13,14,13,14,
+ 14,17,15,13,12,17,13,16,11,12,13,14,15,12,13,14,
+ 14,17,11,12,11,14,14,13,16,14,16, 0,14,15,11,15,
+ 11,
+};
+
+static const static_codebook _16u0__p4_0 = {
+ 4, 625,
+ (char *)_vq_lengthlist__16u0__p4_0,
+ 1, -533725184, 1611661312, 3, 0,
+ (long *)_vq_quantlist__16u0__p4_0,
+ 0
+};
+
+static const long _vq_quantlist__16u0__p5_0[] = {
+ 4,
+ 3,
+ 5,
+ 2,
+ 6,
+ 1,
+ 7,
+ 0,
+ 8,
+};
+
+static const char _vq_lengthlist__16u0__p5_0[] = {
+ 1, 4, 4, 7, 7, 7, 7, 9, 9, 4, 6, 6, 8, 8, 8, 8,
+ 9, 9, 4, 6, 6, 8, 8, 8, 8, 9, 9, 7, 8, 8, 9, 9,
+ 9, 9,11,10, 7, 8, 8, 9, 9, 9, 9,10,11, 7, 8, 8,
+ 9, 9,10,10,11,11, 7, 8, 8, 9, 9,10,10,11,11, 9,
+ 9, 9,10,10,11,11,12,12, 9, 9, 9,10,10,11,11,12,
+ 12,
+};
+
+static const static_codebook _16u0__p5_0 = {
+ 2, 81,
+ (char *)_vq_lengthlist__16u0__p5_0,
+ 1, -531628032, 1611661312, 4, 0,
+ (long *)_vq_quantlist__16u0__p5_0,
+ 0
+};
+
+static const long _vq_quantlist__16u0__p6_0[] = {
+ 6,
+ 5,
+ 7,
+ 4,
+ 8,
+ 3,
+ 9,
+ 2,
+ 10,
+ 1,
+ 11,
+ 0,
+ 12,
+};
+
+static const char _vq_lengthlist__16u0__p6_0[] = {
+ 1, 4, 4, 7, 7,10,10,12,12,13,13,18,17, 3, 6, 6,
+ 9, 9,11,11,13,13,14,14,18,17, 3, 6, 6, 9, 9,11,
+ 11,13,13,14,14,17,18, 7, 9, 9,11,11,13,13,14,14,
+ 15,15, 0, 0, 7, 9, 9,11,11,13,13,14,14,15,16,19,
+ 18,10,11,11,13,13,14,14,16,15,17,18, 0, 0,10,11,
+ 11,13,13,14,14,15,15,16,18, 0, 0,11,13,13,14,14,
+ 15,15,17,17, 0,19, 0, 0,11,13,13,14,14,14,15,16,
+ 18, 0,19, 0, 0,13,14,14,15,15,18,17,18,18, 0,19,
+ 0, 0,13,14,14,15,16,16,16,18,18,19, 0, 0, 0,16,
+ 17,17, 0,17,19,19, 0,19, 0, 0, 0, 0,16,19,16,17,
+ 18, 0,19, 0, 0, 0, 0, 0, 0,
+};
+
+static const static_codebook _16u0__p6_0 = {
+ 2, 169,
+ (char *)_vq_lengthlist__16u0__p6_0,
+ 1, -526516224, 1616117760, 4, 0,
+ (long *)_vq_quantlist__16u0__p6_0,
+ 0
+};
+
+static const long _vq_quantlist__16u0__p6_1[] = {
+ 2,
+ 1,
+ 3,
+ 0,
+ 4,
+};
+
+static const char _vq_lengthlist__16u0__p6_1[] = {
+ 1, 4, 5, 6, 6, 4, 6, 6, 6, 6, 4, 6, 6, 6, 6, 6,
+ 6, 6, 7, 7, 6, 6, 6, 7, 7,
+};
+
+static const static_codebook _16u0__p6_1 = {
+ 2, 25,
+ (char *)_vq_lengthlist__16u0__p6_1,
+ 1, -533725184, 1611661312, 3, 0,
+ (long *)_vq_quantlist__16u0__p6_1,
+ 0
+};
+
+static const long _vq_quantlist__16u0__p7_0[] = {
+ 1,
+ 0,
+ 2,
+};
+
+static const char _vq_lengthlist__16u0__p7_0[] = {
+ 1, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8,
+ 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8,
+ 8, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7,
+ 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7,
+ 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7,
+ 7,
+};
+
+static const static_codebook _16u0__p7_0 = {
+ 4, 81,
+ (char *)_vq_lengthlist__16u0__p7_0,
+ 1, -518803456, 1628680192, 2, 0,
+ (long *)_vq_quantlist__16u0__p7_0,
+ 0
+};
+
+static const long _vq_quantlist__16u0__p7_1[] = {
+ 7,
+ 6,
+ 8,
+ 5,
+ 9,
+ 4,
+ 10,
+ 3,
+ 11,
+ 2,
+ 12,
+ 1,
+ 13,
+ 0,
+ 14,
+};
+
+static const char _vq_lengthlist__16u0__p7_1[] = {
+ 1, 5, 5, 6, 5, 9,10,11,11,10,10,10,10,10,10, 5,
+ 8, 8, 8,10,10,10,10,10,10,10,10,10,10,10, 5, 8,
+ 9, 9, 9,10,10,10,10,10,10,10,10,10,10, 5,10, 8,
+ 10,10,10,10,10,10,10,10,10,10,10,10, 4, 8, 9,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, 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,
+};
+
+static const static_codebook _16u0__p7_1 = {
+ 2, 225,
+ (char *)_vq_lengthlist__16u0__p7_1,
+ 1, -520986624, 1620377600, 4, 0,
+ (long *)_vq_quantlist__16u0__p7_1,
+ 0
+};
+
+static const long _vq_quantlist__16u0__p7_2[] = {
+ 10,
+ 9,
+ 11,
+ 8,
+ 12,
+ 7,
+ 13,
+ 6,
+ 14,
+ 5,
+ 15,
+ 4,
+ 16,
+ 3,
+ 17,
+ 2,
+ 18,
+ 1,
+ 19,
+ 0,
+ 20,
+};
+
+static const char _vq_lengthlist__16u0__p7_2[] = {
+ 1, 6, 6, 7, 8, 7, 7,10, 9,10, 9,11,10, 9,11,10,
+ 9, 9, 9, 9,10, 6, 8, 7, 9, 9, 8, 8,10,10, 9,11,
+ 11,12,12,10, 9,11, 9,12,10, 9, 6, 9, 8, 9,12, 8,
+ 8,11, 9,11,11,12,11,12,12,10,11,11,10,10,11, 7,
+ 10, 9, 9, 9, 9, 9,10, 9,10, 9,10,10,12,10,10,10,
+ 11,12,10,10, 7, 9, 9, 9,10, 9, 9,10,10, 9, 9, 9,
+ 11,11,10,10,10,10, 9, 9,12, 7, 9,10, 9,11, 9,10,
+ 9,10,11,11,11,10,11,12, 9,12,11,10,10,10, 7, 9,
+ 9, 9, 9,10,12,10, 9,11,12,10,11,12,12,11, 9,10,
+ 11,10,11, 7, 9,10,10,11,10, 9,10,11,11,11,10,12,
+ 12,12,11,11,10,11,11,12, 8, 9,10,12,11,10,10,12,
+ 12,12,12,12,10,11,11, 9,11,10,12,11,11, 8, 9,10,
+ 10,11,12,11,11,10,10,10,12,12,12, 9,10,12,12,12,
+ 12,12, 8,10,11,10,10,12, 9,11,12,12,11,12,12,12,
+ 12,10,12,10,10,10,10, 8,12,11,11,11,10,10,11,12,
+ 12,12,12,11,12,12,12,11,11,11,12,10, 9,10,10,12,
+ 10,12,10,12,12,10,10,10,11,12,12,12,11,12,12,12,
+ 11,10,11,12,12,12,11,12,12,11,12,12,11,12,12,12,
+ 12,11,12,12,10,10,10,10,11,11,12,11,12,12,12,12,
+ 12,12,12,11,12,11,10,11,11,12,11,11, 9,10,10,10,
+ 12,10,10,11, 9,11,12,11,12,11,12,12,10,11,10,12,
+ 9, 9, 9,12,11,10,11,10,12,10,12,10,12,12,12,11,
+ 11,11,11,11,10, 9,10,10,11,10,11,11,12,11,10,11,
+ 12,12,12,11,11, 9,12,10,12, 9,10,12,10,10,11,10,
+ 11,11,12,11,10,11,10,11,11,11,11,12,11,11,10, 9,
+ 10,10,10, 9,11,11,10, 9,12,10,11,12,11,12,12,11,
+ 12,11,12,11,10,11,10,12,11,12,11,12,11,12,10,11,
+ 10,10,12,11,10,11,11,11,10,
+};
+
+static const static_codebook _16u0__p7_2 = {
+ 2, 441,
+ (char *)_vq_lengthlist__16u0__p7_2,
+ 1, -529268736, 1611661312, 5, 0,
+ (long *)_vq_quantlist__16u0__p7_2,
+ 0
+};
+
+static const char _huff_lengthlist__16u0__single[] = {
+ 3, 5, 8, 7,14, 8, 9,19, 5, 2, 5, 5, 9, 6, 9,19,
+ 8, 4, 5, 7, 8, 9,13,19, 7, 4, 6, 5, 9, 6, 9,19,
+ 12, 8, 7, 9,10,11,13,19, 8, 5, 8, 6, 9, 6, 7,19,
+ 8, 8,10, 7, 7, 4, 5,19,12,17,19,15,18,13,11,18,
+};
+
+static const static_codebook _huff_book__16u0__single = {
+ 2, 64,
+ (char *)_huff_lengthlist__16u0__single,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
+static const char _huff_lengthlist__16u1__long[] = {
+ 3, 6,10, 8,12, 8,14, 8,14,19, 5, 3, 5, 5, 7, 6,
+ 11, 7,16,19, 7, 5, 6, 7, 7, 9,11,12,19,19, 6, 4,
+ 7, 5, 7, 6,10, 7,18,18, 8, 6, 7, 7, 7, 7, 8, 9,
+ 18,18, 7, 5, 8, 5, 7, 5, 8, 6,18,18,12, 9,10, 9,
+ 9, 9, 8, 9,18,18, 8, 7,10, 6, 8, 5, 6, 4,11,18,
+ 11,15,16,12,11, 8, 8, 6, 9,18,14,18,18,18,16,16,
+ 16,13,16,18,
+};
+
+static const static_codebook _huff_book__16u1__long = {
+ 2, 100,
+ (char *)_huff_lengthlist__16u1__long,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
+static const long _vq_quantlist__16u1__p1_0[] = {
+ 1,
+ 0,
+ 2,
+};
+
+static const char _vq_lengthlist__16u1__p1_0[] = {
+ 1, 4, 4, 5, 7, 7, 5, 7, 7, 5, 8, 7, 7,10,10, 7,
+ 9,10, 5, 7, 8, 7,10, 9, 7,10,10, 5, 8, 8, 8,10,
+ 10, 8,10,10, 7,10,10,10,11,12,10,12,13, 7,10,10,
+ 9,13,11,10,12,13, 5, 8, 8, 8,10,10, 8,10,10, 7,
+ 10,10,10,12,12, 9,11,12, 7,10,11,10,12,12,10,13,
+ 11,
+};
+
+static const static_codebook _16u1__p1_0 = {
+ 4, 81,
+ (char *)_vq_lengthlist__16u1__p1_0,
+ 1, -535822336, 1611661312, 2, 0,
+ (long *)_vq_quantlist__16u1__p1_0,
+ 0
+};
+
+static const long _vq_quantlist__16u1__p2_0[] = {
+ 1,
+ 0,
+ 2,
+};
+
+static const char _vq_lengthlist__16u1__p2_0[] = {
+ 3, 4, 4, 5, 6, 6, 5, 6, 6, 5, 6, 6, 6, 7, 8, 6,
+ 7, 8, 5, 6, 6, 6, 8, 7, 6, 8, 7, 5, 6, 6, 6, 8,
+ 8, 6, 8, 8, 6, 8, 8, 7, 7,10, 8, 9, 9, 6, 8, 8,
+ 7, 9, 8, 8, 9,10, 5, 6, 6, 6, 8, 8, 7, 8, 8, 6,
+ 8, 8, 8,10, 9, 7, 8, 9, 6, 8, 8, 8, 9, 9, 7,10,
+ 8,
+};
+
+static const static_codebook _16u1__p2_0 = {
+ 4, 81,
+ (char *)_vq_lengthlist__16u1__p2_0,
+ 1, -535822336, 1611661312, 2, 0,
+ (long *)_vq_quantlist__16u1__p2_0,
+ 0
+};
+
+static const long _vq_quantlist__16u1__p3_0[] = {
+ 2,
+ 1,
+ 3,
+ 0,
+ 4,
+};
+
+static const char _vq_lengthlist__16u1__p3_0[] = {
+ 1, 5, 5, 8, 8, 6, 7, 7, 9, 9, 5, 7, 7, 9, 9, 9,
+ 10, 9,11,11, 9, 9,10,11,11, 6, 8, 8,10,10, 8, 9,
+ 10,11,11, 8, 9,10,11,11,10,11,11,12,13,10,11,11,
+ 13,13, 6, 8, 8,10,10, 8,10, 9,11,11, 8,10, 9,11,
+ 11,10,11,11,13,13,10,11,11,13,12, 9,11,11,14,13,
+ 10,12,12,15,14,10,12,11,14,13,12,13,13,15,15,12,
+ 13,13,16,14, 9,11,11,13,14,10,11,12,14,14,10,12,
+ 12,14,15,12,13,13,14,15,12,13,14,15,16, 5, 8, 8,
+ 11,11, 8,10,10,12,12, 8,10,10,12,12,11,12,12,14,
+ 14,11,12,12,14,14, 8,10,10,12,12, 9,11,12,12,13,
+ 10,12,12,13,13,12,12,13,14,15,11,13,13,15,15, 7,
+ 10,10,12,12, 9,12,11,13,12,10,11,12,13,13,12,13,
+ 12,15,14,11,12,13,15,15,10,12,12,15,14,11,13,13,
+ 16,15,11,13,13,16,15,14,13,14,15,16,13,15,15,17,
+ 17,10,12,12,14,15,11,12,12,15,15,11,13,13,15,16,
+ 13,15,13,16,15,13,15,15,16,17, 5, 8, 8,11,11, 8,
+ 10,10,12,12, 8,10,10,12,12,11,12,12,14,14,11,12,
+ 12,14,14, 7,10,10,12,12,10,12,12,14,13, 9,11,12,
+ 12,13,12,13,13,15,15,12,12,13,13,15, 7,10,10,12,
+ 13,10,11,12,13,13,10,12,11,13,13,11,13,13,15,15,
+ 12,13,12,15,14, 9,12,12,15,14,11,13,13,15,15,11,
+ 12,13,15,15,13,14,14,17,19,13,13,14,16,16,10,12,
+ 12,14,15,11,13,13,15,16,11,13,12,16,15,13,15,15,
+ 17,18,14,15,13,16,15, 8,11,11,15,14,10,12,12,16,
+ 15,10,12,12,16,16,14,15,15,18,17,13,14,15,16,18,
+ 9,12,12,15,15,11,12,14,16,17,11,13,13,16,15,15,
+ 15,15,17,18,14,15,16,17,17, 9,12,12,15,15,11,14,
+ 13,16,16,11,13,13,16,16,15,16,15,17,18,14,16,15,
+ 17,16,12,14,14,17,16,12,14,15,18,17,13,15,15,17,
+ 17,15,15,18,16,20,15,16,17,18,18,11,14,14,16,17,
+ 13,15,14,18,17,13,15,15,17,17,15,17,15,18,17,15,
+ 17,16,19,18, 8,11,11,14,15,10,12,12,15,15,10,12,
+ 12,16,16,13,14,14,17,16,14,15,15,17,17, 9,12,12,
+ 15,16,11,13,13,16,16,11,12,13,16,16,14,16,15,20,
+ 17,14,16,16,17,17, 9,12,12,15,16,11,13,13,16,17,
+ 11,13,13,17,16,14,15,15,17,18,15,15,15,18,18,11,
+ 14,14,17,16,13,15,15,17,17,13,14,14,18,17,15,16,
+ 16,18,19,15,15,17,17,19,11,14,14,16,17,13,15,14,
+ 17,19,13,15,14,18,17,15,17,16,18,18,15,17,15,18,
+ 16,
+};
+
+static const static_codebook _16u1__p3_0 = {
+ 4, 625,
+ (char *)_vq_lengthlist__16u1__p3_0,
+ 1, -533725184, 1611661312, 3, 0,
+ (long *)_vq_quantlist__16u1__p3_0,
+ 0
+};
+
+static const long _vq_quantlist__16u1__p4_0[] = {
+ 2,
+ 1,
+ 3,
+ 0,
+ 4,
+};
+
+static const char _vq_lengthlist__16u1__p4_0[] = {
+ 4, 5, 5, 8, 8, 6, 6, 7, 9, 9, 6, 6, 6, 9, 9, 9,
+ 10, 9,11,11, 9, 9,10,11,11, 6, 7, 7,10, 9, 7, 7,
+ 8, 9,10, 7, 7, 8,10,10,10,10,10,10,12, 9, 9,10,
+ 11,12, 6, 7, 7, 9, 9, 7, 8, 7,10,10, 7, 8, 7,10,
+ 10, 9,10, 9,12,11,10,10, 9,12,10, 9,10,10,12,11,
+ 10,10,10,12,12, 9,10,10,12,12,12,11,12,13,13,11,
+ 11,12,12,13, 9,10,10,11,12, 9,10,10,12,12,10,10,
+ 10,12,12,11,12,11,14,13,11,12,12,14,13, 5, 7, 7,
+ 10,10, 7, 8, 8,10,10, 7, 8, 7,10,10,10,10,10,12,
+ 12,10,10,10,12,12, 6, 8, 7,10,10, 7, 7, 9,10,11,
+ 8, 9, 9,11,10,10,10,11,11,13,10,10,11,12,13, 6,
+ 8, 8,10,10, 7, 9, 8,11,10, 8, 9, 9,10,11,10,11,
+ 10,13,11,10,11,10,12,12,10,11,10,12,11,10,10,10,
+ 12,13,10,11,11,13,12,11,11,13,11,14,12,12,13,14,
+ 14, 9,10,10,12,13,10,11,10,13,12,10,11,11,12,13,
+ 11,12,11,14,12,12,13,13,15,14, 5, 7, 7,10,10, 7,
+ 7, 8,10,10, 7, 8, 8,10,10,10,10,10,11,12,10,10,
+ 10,12,12, 7, 8, 8,10,10, 8, 9, 8,11,10, 7, 8, 9,
+ 10,11,10,11,11,12,12,10,10,11,11,13, 7, 7, 8,10,
+ 10, 8, 8, 9,10,11, 7, 9, 7,11,10,10,11,11,13,12,
+ 11,11,10,13,11, 9,10,10,12,12,10,11,11,13,12,10,
+ 10,11,12,12,12,13,13,14,14,11,11,12,12,14,10,10,
+ 11,12,12,10,11,11,12,13,10,10,10,13,12,12,13,13,
+ 15,14,12,13,10,14,11, 8,10,10,12,12,10,11,10,13,
+ 13, 9,10,10,12,12,12,13,13,15,14,11,12,12,13,13,
+ 9,10,10,13,12,10,10,11,13,13,10,11,10,13,12,12,
+ 12,13,14,15,12,13,12,15,13, 9,10,10,12,13,10,11,
+ 10,13,12,10,10,11,12,13,12,14,12,15,13,12,12,13,
+ 14,15,11,12,11,14,13,11,11,12,14,15,12,13,12,15,
+ 14,13,11,15,11,16,13,14,14,16,15,11,12,12,14,14,
+ 11,12,11,14,13,12,12,13,14,15,13,14,12,16,12,14,
+ 14,14,15,15, 8,10,10,12,12, 9,10,10,12,12,10,10,
+ 11,13,13,11,12,12,13,13,12,13,13,14,15, 9,10,10,
+ 13,12,10,11,11,13,12,10,10,11,13,13,12,13,12,15,
+ 14,12,12,13,13,16, 9, 9,10,12,13,10,10,11,12,13,
+ 10,11,10,13,13,12,12,13,13,15,13,13,12,15,13,11,
+ 12,12,14,14,12,13,12,15,14,11,11,12,13,14,14,14,
+ 14,16,15,13,12,15,12,16,11,11,12,13,14,12,13,13,
+ 14,15,10,12,11,14,13,14,15,14,16,16,13,14,11,15,
+ 11,
+};
+
+static const static_codebook _16u1__p4_0 = {
+ 4, 625,
+ (char *)_vq_lengthlist__16u1__p4_0,
+ 1, -533725184, 1611661312, 3, 0,
+ (long *)_vq_quantlist__16u1__p4_0,
+ 0
+};
+
+static const long _vq_quantlist__16u1__p5_0[] = {
+ 4,
+ 3,
+ 5,
+ 2,
+ 6,
+ 1,
+ 7,
+ 0,
+ 8,
+};
+
+static const char _vq_lengthlist__16u1__p5_0[] = {
+ 1, 4, 4, 7, 7, 7, 7, 9, 9, 4, 6, 6, 8, 8, 8, 8,
+ 10,10, 4, 5, 6, 8, 8, 8, 8,10,10, 7, 8, 8, 9, 9,
+ 9, 9,11,11, 7, 8, 8, 9, 9, 9, 9,11,11, 7, 8, 8,
+ 10, 9,11,11,12,11, 7, 8, 8, 9, 9,11,11,12,12, 9,
+ 10,10,11,11,12,12,13,12, 9,10,10,11,11,12,12,12,
+ 13,
+};
+
+static const static_codebook _16u1__p5_0 = {
+ 2, 81,
+ (char *)_vq_lengthlist__16u1__p5_0,
+ 1, -531628032, 1611661312, 4, 0,
+ (long *)_vq_quantlist__16u1__p5_0,
+ 0
+};
+
+static const long _vq_quantlist__16u1__p6_0[] = {
+ 4,
+ 3,
+ 5,
+ 2,
+ 6,
+ 1,
+ 7,
+ 0,
+ 8,
+};
+
+static const char _vq_lengthlist__16u1__p6_0[] = {
+ 3, 4, 4, 6, 6, 7, 7, 9, 9, 4, 4, 4, 6, 6, 8, 8,
+ 9, 9, 4, 4, 4, 6, 6, 7, 7, 9, 9, 6, 6, 6, 7, 7,
+ 8, 8,10, 9, 6, 6, 6, 7, 7, 8, 8, 9,10, 7, 8, 7,
+ 8, 8, 9, 9,10,10, 7, 8, 8, 8, 8, 9, 9,10,10, 9,
+ 9, 9,10,10,10,10,11,11, 9, 9, 9,10,10,10,10,11,
+ 11,
+};
+
+static const static_codebook _16u1__p6_0 = {
+ 2, 81,
+ (char *)_vq_lengthlist__16u1__p6_0,
+ 1, -531628032, 1611661312, 4, 0,
+ (long *)_vq_quantlist__16u1__p6_0,
+ 0
+};
+
+static const long _vq_quantlist__16u1__p7_0[] = {
+ 1,
+ 0,
+ 2,
+};
+
+static const char _vq_lengthlist__16u1__p7_0[] = {
+ 1, 4, 4, 4, 8, 8, 4, 8, 8, 5,11, 9, 8,12,11, 8,
+ 12,11, 5,10,11, 8,11,12, 8,11,12, 4,11,11,11,14,
+ 13,10,13,13, 8,14,13,12,14,16,12,16,15, 8,14,14,
+ 13,16,14,12,15,16, 4,11,11,10,14,13,11,14,14, 8,
+ 15,14,12,15,15,12,14,16, 8,14,14,11,16,15,12,15,
+ 13,
+};
+
+static const static_codebook _16u1__p7_0 = {
+ 4, 81,
+ (char *)_vq_lengthlist__16u1__p7_0,
+ 1, -529137664, 1618345984, 2, 0,
+ (long *)_vq_quantlist__16u1__p7_0,
+ 0
+};
+
+static const long _vq_quantlist__16u1__p7_1[] = {
+ 5,
+ 4,
+ 6,
+ 3,
+ 7,
+ 2,
+ 8,
+ 1,
+ 9,
+ 0,
+ 10,
+};
+
+static const char _vq_lengthlist__16u1__p7_1[] = {
+ 2, 4, 4, 6, 6, 7, 7, 8, 8, 8, 8, 4, 6, 5, 7, 7,
+ 8, 8, 8, 8, 8, 8, 4, 5, 6, 7, 7, 8, 8, 8, 8, 8,
+ 8, 6, 7, 7, 8, 8, 8, 8, 9, 9, 9, 9, 6, 7, 7, 8,
+ 8, 8, 8, 9, 9, 9, 9, 7, 8, 8, 8, 8, 9, 9, 9,10,
+ 9,10, 7, 8, 8, 8, 8, 9, 9, 9, 9,10, 9, 8, 8, 8,
+ 9, 9,10,10,10,10,10,10, 8, 8, 8, 9, 9, 9, 9,10,
+ 10,10,10, 8, 8, 8, 9, 9, 9,10,10,10,10,10, 8, 8,
+ 8, 9, 9,10,10,10,10,10,10,
+};
+
+static const static_codebook _16u1__p7_1 = {
+ 2, 121,
+ (char *)_vq_lengthlist__16u1__p7_1,
+ 1, -531365888, 1611661312, 4, 0,
+ (long *)_vq_quantlist__16u1__p7_1,
+ 0
+};
+
+static const long _vq_quantlist__16u1__p8_0[] = {
+ 5,
+ 4,
+ 6,
+ 3,
+ 7,
+ 2,
+ 8,
+ 1,
+ 9,
+ 0,
+ 10,
+};
+
+static const char _vq_lengthlist__16u1__p8_0[] = {
+ 1, 4, 4, 5, 5, 8, 8,10,10,12,12, 4, 7, 7, 8, 8,
+ 9, 9,12,11,14,13, 4, 7, 7, 7, 8, 9,10,11,11,13,
+ 12, 5, 8, 8, 9, 9,11,11,12,13,15,14, 5, 7, 8, 9,
+ 9,11,11,13,13,17,15, 8, 9,10,11,11,12,13,17,14,
+ 17,16, 8,10, 9,11,11,12,12,13,15,15,17,10,11,11,
+ 12,13,14,15,15,16,16,17, 9,11,11,12,12,14,15,17,
+ 15,15,16,11,14,12,14,15,16,15,16,16,16,15,11,13,
+ 13,14,14,15,15,16,16,15,16,
+};
+
+static const static_codebook _16u1__p8_0 = {
+ 2, 121,
+ (char *)_vq_lengthlist__16u1__p8_0,
+ 1, -524582912, 1618345984, 4, 0,
+ (long *)_vq_quantlist__16u1__p8_0,
+ 0
+};
+
+static const long _vq_quantlist__16u1__p8_1[] = {
+ 5,
+ 4,
+ 6,
+ 3,
+ 7,
+ 2,
+ 8,
+ 1,
+ 9,
+ 0,
+ 10,
+};
+
+static const char _vq_lengthlist__16u1__p8_1[] = {
+ 2, 5, 5, 6, 6, 7, 7, 8, 8, 8, 8, 4, 6, 6, 7, 7,
+ 8, 7, 8, 8, 8, 8, 4, 6, 6, 7, 7, 7, 7, 8, 8, 8,
+ 8, 6, 7, 7, 7, 7, 8, 8, 8, 8, 8, 9, 6, 7, 7, 7,
+ 7, 8, 8, 8, 8, 9, 9, 7, 7, 7, 8, 8, 8, 8, 9, 9,
+ 9, 9, 7, 7, 7, 8, 8, 8, 8, 9, 9, 9, 9, 8, 8, 8,
+ 8, 8, 9, 9, 9, 9, 9, 9, 8, 8, 8, 8, 8, 9, 9, 9,
+ 9, 9, 9, 8, 8, 8, 9, 8, 9, 9, 9, 9, 9, 9, 8, 8,
+ 8, 9, 9, 9, 9, 9, 9, 9, 9,
+};
+
+static const static_codebook _16u1__p8_1 = {
+ 2, 121,
+ (char *)_vq_lengthlist__16u1__p8_1,
+ 1, -531365888, 1611661312, 4, 0,
+ (long *)_vq_quantlist__16u1__p8_1,
+ 0
+};
+
+static const long _vq_quantlist__16u1__p9_0[] = {
+ 7,
+ 6,
+ 8,
+ 5,
+ 9,
+ 4,
+ 10,
+ 3,
+ 11,
+ 2,
+ 12,
+ 1,
+ 13,
+ 0,
+ 14,
+};
+
+static const char _vq_lengthlist__16u1__p9_0[] = {
+ 1, 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, 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, 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, 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, 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, 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, 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, 9, 9, 9, 9, 9, 9, 9, 9, 9,
+ 9, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8,
+ 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8,
+ 8,
+};
+
+static const static_codebook _16u1__p9_0 = {
+ 2, 225,
+ (char *)_vq_lengthlist__16u1__p9_0,
+ 1, -514071552, 1627381760, 4, 0,
+ (long *)_vq_quantlist__16u1__p9_0,
+ 0
+};
+
+static const long _vq_quantlist__16u1__p9_1[] = {
+ 7,
+ 6,
+ 8,
+ 5,
+ 9,
+ 4,
+ 10,
+ 3,
+ 11,
+ 2,
+ 12,
+ 1,
+ 13,
+ 0,
+ 14,
+};
+
+static const char _vq_lengthlist__16u1__p9_1[] = {
+ 1, 6, 5, 9, 9,10,10, 6, 7, 9, 9,10,10,10,10, 5,
+ 10, 8,10, 8,10,10, 8, 8,10, 9,10,10,10,10, 5, 8,
+ 9,10,10,10,10, 8,10,10,10,10,10,10,10, 9,10,10,
+ 10,10,10,10, 9, 9,10,10,10,10,10,10, 9, 9, 8, 9,
+ 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, 8,10,10,10,10,
+ 10,10,10,10,10,10,10,10,10, 6, 8, 8,10,10,10, 8,
+ 10,10,10,10,10,10,10,10, 5, 8, 8,10,10,10, 9, 9,
+ 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, 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, 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, 9, 9, 9, 9,
+ 9,
+};
+
+static const static_codebook _16u1__p9_1 = {
+ 2, 225,
+ (char *)_vq_lengthlist__16u1__p9_1,
+ 1, -522338304, 1620115456, 4, 0,
+ (long *)_vq_quantlist__16u1__p9_1,
+ 0
+};
+
+static const long _vq_quantlist__16u1__p9_2[] = {
+ 8,
+ 7,
+ 9,
+ 6,
+ 10,
+ 5,
+ 11,
+ 4,
+ 12,
+ 3,
+ 13,
+ 2,
+ 14,
+ 1,
+ 15,
+ 0,
+ 16,
+};
+
+static const char _vq_lengthlist__16u1__p9_2[] = {
+ 1, 6, 6, 7, 8, 8,11,10, 9, 9,11, 9,10, 9,11,11,
+ 9, 6, 7, 6,11, 8,11, 9,10,10,11, 9,11,10,10,10,
+ 11, 9, 5, 7, 7, 8, 8,10,11, 8, 8,11, 9, 9,10,11,
+ 9,10,11, 8, 9, 6, 8, 8, 9, 9,10,10,11,11,11, 9,
+ 11,10, 9,11, 8, 8, 8, 9, 8, 9,10,11, 9, 9,11,11,
+ 10, 9, 9,11,10, 8,11, 8, 9, 8,11, 9,10, 9,10,11,
+ 11,10,10, 9,10,10, 8, 8, 9,10,10,10, 9,11, 9,10,
+ 11,11,11,11,10, 9,11, 9, 9,11,11,10, 8,11,11,11,
+ 9,10,10,11,10,11,11, 9,11,10, 9,11,10,10,10,10,
+ 9,11,10,11,10, 9, 9,10,11, 9, 8,10,11,11,10,10,
+ 11, 9,11,10,11,11,10,11, 9, 9, 8,10, 8, 9,11, 9,
+ 8,10,10, 9,11,10,11,10,11, 9,11, 8,10,11,11,11,
+ 11,10,10,11,11,11,11,10,11,11,10, 9, 8,10,10, 9,
+ 11,10,11,11,11, 9, 9, 9,11,11,11,10,10, 9, 9,10,
+ 9,11,11,11,11, 8,10,11,10,11,11,10,11,11, 9, 9,
+ 9,10, 9,11, 9,11,11,11,11,11,10,11,11,10,11,10,
+ 11,11, 9,11,10,11,10, 9,10, 9,10,10,11,11,11,11,
+ 9,10, 9,10,11,11,10,11,11,11,11,11,11,10,11,11,
+ 10,
+};
+
+static const static_codebook _16u1__p9_2 = {
+ 2, 289,
+ (char *)_vq_lengthlist__16u1__p9_2,
+ 1, -529530880, 1611661312, 5, 0,
+ (long *)_vq_quantlist__16u1__p9_2,
+ 0
+};
+
+static const char _huff_lengthlist__16u1__short[] = {
+ 5, 7,10, 9,11,10,15,11,13,16, 6, 4, 6, 6, 7, 7,
+ 10, 9,12,16,10, 6, 5, 6, 6, 7,10,11,16,16, 9, 6,
+ 7, 6, 7, 7,10, 8,14,16,11, 6, 5, 4, 5, 6, 8, 9,
+ 15,16, 9, 6, 6, 5, 6, 6, 9, 8,14,16,12, 7, 6, 6,
+ 5, 6, 6, 7,13,16, 8, 6, 7, 6, 5, 5, 4, 4,11,16,
+ 9, 8, 9, 9, 7, 7, 6, 5,13,16,14,14,16,15,16,15,
+ 16,16,16,16,
+};
+
+static const static_codebook _huff_book__16u1__short = {
+ 2, 100,
+ (char *)_huff_lengthlist__16u1__short,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
+static const char _huff_lengthlist__16u2__long[] = {
+ 5, 8,10,10,10,11,11,12,14,18, 7, 5, 5, 6, 8, 9,
+ 10,12,14,17, 9, 5, 4, 5, 6, 8,10,11,13,19, 9, 5,
+ 4, 4, 5, 6, 9,10,12,17, 8, 6, 5, 4, 4, 5, 7,10,
+ 11,15, 8, 7, 7, 6, 5, 5, 6, 9,11,14, 8, 9, 8, 7,
+ 6, 5, 6, 7,11,14, 9,11,11, 9, 7, 6, 6, 6, 9,14,
+ 11,14,15,13, 9, 8, 7, 7, 9,14,13,15,19,17,12,11,
+ 10, 9,10,14,
+};
+
+static const static_codebook _huff_book__16u2__long = {
+ 2, 100,
+ (char *)_huff_lengthlist__16u2__long,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
+static const long _vq_quantlist__16u2_p1_0[] = {
+ 1,
+ 0,
+ 2,
+};
+
+static const char _vq_lengthlist__16u2_p1_0[] = {
+ 1, 5, 5, 5, 7, 7, 5, 7, 7, 5, 7, 7, 7, 9, 9, 7,
+ 9, 9, 5, 7, 7, 7, 9, 9, 8, 9, 9, 5, 7, 7, 8, 9,
+ 9, 7, 9, 9, 7, 9, 9, 9,10,11, 9,10,10, 7, 9, 9,
+ 9,10, 9, 9,10,11, 5, 8, 7, 7, 9, 9, 8, 9, 9, 7,
+ 9, 9, 9,11,10, 9, 9,10, 7, 9, 9, 9,10,10, 9,11,
+ 10,
+};
+
+static const static_codebook _16u2_p1_0 = {
+ 4, 81,
+ (char *)_vq_lengthlist__16u2_p1_0,
+ 1, -535822336, 1611661312, 2, 0,
+ (long *)_vq_quantlist__16u2_p1_0,
+ 0
+};
+
+static const long _vq_quantlist__16u2_p2_0[] = {
+ 2,
+ 1,
+ 3,
+ 0,
+ 4,
+};
+
+static const char _vq_lengthlist__16u2_p2_0[] = {
+ 3, 5, 5, 8, 8, 5, 7, 7, 9, 9, 5, 7, 7, 9, 9, 9,
+ 10, 9,11,11, 9, 9, 9,11,11, 5, 7, 7, 9, 9, 7, 8,
+ 8,10,10, 7, 8, 8,10,10,10,10,10,12,12, 9,10,10,
+ 11,12, 5, 7, 7, 9, 9, 7, 8, 8,10,10, 7, 8, 8,10,
+ 10, 9,10,10,12,11,10,10,10,12,12, 9,10,10,12,12,
+ 10,10,10,12,12, 9,10,10,12,12,12,12,12,14,14,11,
+ 12,12,13,14, 9,10,10,12,12, 9,10,10,12,12,10,10,
+ 10,12,12,11,12,12,14,13,12,12,12,14,13, 5, 7, 7,
+ 9, 9, 7, 8, 8,10,10, 7, 8, 8,10,10,10,10,10,12,
+ 12,10,10,10,12,12, 7, 8, 8,11,10, 8, 9, 9,11,11,
+ 8, 9, 9,11,11,10,11,11,12,13,10,11,11,12,13, 7,
+ 8, 8,10,10, 8, 9, 8,11,10, 8, 9, 9,11,11,10,11,
+ 10,13,12,10,11,11,13,13,10,11,10,13,12,10,11,11,
+ 13,13,10,11,11,13,13,12,12,13,13,14,12,13,13,14,
+ 14, 9,10,10,12,12,10,11,10,13,12,10,11,11,13,13,
+ 12,13,12,14,13,12,13,13,14,15, 5, 7, 7, 9,10, 7,
+ 8, 8,10,10, 7, 8, 8,10,10,10,10,10,12,12,10,10,
+ 11,12,12, 7, 8, 8,10,10, 8, 9, 9,11,11, 8, 8, 9,
+ 10,11,10,11,11,13,13,10,10,11,12,13, 7, 8, 8,10,
+ 10, 8, 9, 9,11,11, 8, 9, 9,11,11,10,11,11,13,12,
+ 10,11,11,13,12, 9,10,10,12,12,10,11,11,13,13,10,
+ 10,11,12,13,12,13,13,15,14,12,12,13,12,14, 9,10,
+ 11,12,13,10,11,11,13,13,10,11,11,13,13,12,13,13,
+ 14,14,12,13,12,14,13, 8,10,10,12,12, 9,11,10,13,
+ 12, 9,10,10,12,13,12,13,13,14,14,12,12,12,14,14,
+ 9,10,10,13,13,10,11,11,13,13,10,11,11,13,13,13,
+ 13,13,14,15,12,13,13,14,15, 9,10,10,12,13,10,11,
+ 10,13,13,10,11,11,12,13,12,13,12,15,14,12,13,13,
+ 14,15,11,12,12,15,14,12,12,13,14,15,12,13,13,15,
+ 14,13,13,15,14,16,14,14,14,16,15,11,12,12,14,14,
+ 11,12,12,14,14,12,13,13,14,15,13,14,13,15,13,14,
+ 14,14,15,16, 8, 9,10,12,12, 9,10,10,13,12, 9,10,
+ 11,12,13,12,12,12,14,14,12,13,13,14,14, 9,10,10,
+ 13,12,10,11,11,13,13,10,10,11,13,13,12,13,13,15,
+ 14,12,12,13,14,15, 9,10,10,13,13,10,11,11,13,13,
+ 10,11,11,13,13,12,13,13,14,14,13,13,13,15,15,11,
+ 12,12,14,13,12,13,13,15,14,11,12,12,14,14,14,14,
+ 14,16,15,13,13,14,13,16,11,12,12,14,14,12,13,13,
+ 14,15,12,13,12,14,14,14,14,14,16,16,14,15,13,16,
+ 14,
+};
+
+static const static_codebook _16u2_p2_0 = {
+ 4, 625,
+ (char *)_vq_lengthlist__16u2_p2_0,
+ 1, -533725184, 1611661312, 3, 0,
+ (long *)_vq_quantlist__16u2_p2_0,
+ 0
+};
+
+static const long _vq_quantlist__16u2_p3_0[] = {
+ 4,
+ 3,
+ 5,
+ 2,
+ 6,
+ 1,
+ 7,
+ 0,
+ 8,
+};
+
+static const char _vq_lengthlist__16u2_p3_0[] = {
+ 2, 4, 4, 6, 6, 7, 7, 9, 9, 4, 5, 5, 6, 6, 8, 7,
+ 9, 9, 4, 5, 5, 6, 6, 7, 8, 9, 9, 6, 6, 6, 7, 7,
+ 8, 8,10,10, 6, 6, 6, 7, 7, 8, 8,10,10, 7, 8, 7,
+ 8, 8, 9, 9,11,10, 7, 7, 8, 8, 8, 9, 9,10,11, 9,
+ 9, 9,10,10,11,10,11,11, 9, 9, 9,10,10,10,11,11,
+ 11,
+};
+
+static const static_codebook _16u2_p3_0 = {
+ 2, 81,
+ (char *)_vq_lengthlist__16u2_p3_0,
+ 1, -531628032, 1611661312, 4, 0,
+ (long *)_vq_quantlist__16u2_p3_0,
+ 0
+};
+
+static const long _vq_quantlist__16u2_p4_0[] = {
+ 8,
+ 7,
+ 9,
+ 6,
+ 10,
+ 5,
+ 11,
+ 4,
+ 12,
+ 3,
+ 13,
+ 2,
+ 14,
+ 1,
+ 15,
+ 0,
+ 16,
+};
+
+static const char _vq_lengthlist__16u2_p4_0[] = {
+ 2, 5, 5, 6, 6, 7, 7, 8, 8, 9, 9,10,10,11,11,11,
+ 11, 5, 5, 5, 7, 6, 8, 7, 9, 9, 9, 9,10,10,11,11,
+ 12,12, 5, 5, 5, 6, 6, 7, 8, 8, 9, 9, 9,10,10,11,
+ 11,12,12, 6, 7, 6, 7, 7, 8, 8, 9, 9, 9, 9,10,10,
+ 11,11,12,12, 6, 6, 7, 7, 7, 8, 8, 9, 9, 9, 9,10,
+ 10,11,11,12,12, 7, 8, 8, 8, 8, 9, 9, 9, 9,10,10,
+ 11,11,11,11,12,12, 7, 7, 8, 8, 8, 9, 9, 9, 9,10,
+ 10,11,11,11,11,12,12, 8, 9, 9, 9, 9, 9, 9,10,10,
+ 10,10,11,11,12,12,12,12, 8, 9, 9, 9, 9, 9, 9,10,
+ 10,10,10,11,11,12,12,12,12, 9, 9, 9, 9, 9,10,10,
+ 10,10,10,11,11,11,12,12,13,13, 9, 9, 9, 9, 9,10,
+ 10,10,10,11,10,11,11,12,12,13,13,10,10,10,10,10,
+ 11,11,11,11,11,11,11,12,12,12,13,13,10,10,10,10,
+ 10,11,11,11,11,11,11,12,11,12,12,13,13,11,11,11,
+ 11,11,11,11,12,12,12,12,12,12,13,13,13,13,11,11,
+ 11,11,11,11,11,12,12,12,12,13,12,13,13,13,13,11,
+ 12,12,12,12,12,12,12,12,13,13,13,13,13,13,14,14,
+ 11,12,12,12,12,12,12,12,13,13,13,13,13,13,13,14,
+ 14,
+};
+
+static const static_codebook _16u2_p4_0 = {
+ 2, 289,
+ (char *)_vq_lengthlist__16u2_p4_0,
+ 1, -529530880, 1611661312, 5, 0,
+ (long *)_vq_quantlist__16u2_p4_0,
+ 0
+};
+
+static const long _vq_quantlist__16u2_p5_0[] = {
+ 1,
+ 0,
+ 2,
+};
+
+static const char _vq_lengthlist__16u2_p5_0[] = {
+ 1, 4, 4, 5, 7, 7, 5, 7, 7, 5, 8, 8, 7, 9, 9, 7,
+ 9,10, 5, 8, 8, 7,10, 9, 7,10, 9, 5, 8, 8, 8,11,
+ 10, 8,10,10, 7,10,10, 9, 9,12,10,12,12, 7,10,10,
+ 9,12,10,10,11,12, 5, 8, 8, 8,10,10, 8,11,11, 7,
+ 11,10,10,12,11, 9,10,12, 7,10,11,10,12,12, 9,12,
+ 9,
+};
+
+static const static_codebook _16u2_p5_0 = {
+ 4, 81,
+ (char *)_vq_lengthlist__16u2_p5_0,
+ 1, -529137664, 1618345984, 2, 0,
+ (long *)_vq_quantlist__16u2_p5_0,
+ 0
+};
+
+static const long _vq_quantlist__16u2_p5_1[] = {
+ 5,
+ 4,
+ 6,
+ 3,
+ 7,
+ 2,
+ 8,
+ 1,
+ 9,
+ 0,
+ 10,
+};
+
+static const char _vq_lengthlist__16u2_p5_1[] = {
+ 2, 5, 5, 6, 6, 7, 7, 8, 8, 8, 8, 5, 6, 6, 7, 7,
+ 7, 7, 8, 8, 8, 8, 5, 6, 6, 6, 7, 7, 7, 8, 8, 8,
+ 8, 6, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 6, 7, 7, 7,
+ 7, 8, 8, 8, 8, 8, 8, 7, 7, 7, 8, 8, 8, 8, 8, 8,
+ 8, 8, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8,
+ 8, 8, 8, 8, 8, 8, 9, 9, 8, 8, 8, 8, 8, 8, 8, 8,
+ 8, 9, 9, 8, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9, 8, 8,
+ 8, 8, 8, 8, 8, 9, 9, 9, 9,
+};
+
+static const static_codebook _16u2_p5_1 = {
+ 2, 121,
+ (char *)_vq_lengthlist__16u2_p5_1,
+ 1, -531365888, 1611661312, 4, 0,
+ (long *)_vq_quantlist__16u2_p5_1,
+ 0
+};
+
+static const long _vq_quantlist__16u2_p6_0[] = {
+ 6,
+ 5,
+ 7,
+ 4,
+ 8,
+ 3,
+ 9,
+ 2,
+ 10,
+ 1,
+ 11,
+ 0,
+ 12,
+};
+
+static const char _vq_lengthlist__16u2_p6_0[] = {
+ 1, 5, 4, 7, 7, 8, 8, 8, 8,10,10,11,11, 4, 6, 6,
+ 7, 7, 9, 9, 9, 9,10,10,11,11, 4, 6, 6, 7, 7, 9,
+ 9, 9, 9,10,10,11,11, 7, 8, 8, 9, 9, 9, 9,10,10,
+ 11,11,12,12, 7, 7, 7, 9, 8,10, 9,10,10,11,11,12,
+ 12, 8, 9, 9, 9,10,10,10,11,11,12,12,13,13, 8, 9,
+ 9,10, 9,10,10,11,11,12,12,13,13, 8, 9, 9,10,10,
+ 11,11,11,11,12,12,13,13, 8, 9, 9,10,10,11,11,12,
+ 11,12,12,13,13,10,10,10,11,11,12,12,12,12,13,13,
+ 14,14,10,10,10,11,11,12,12,12,12,13,13,14,14,11,
+ 11,11,12,12,13,13,13,13,14,14,14,14,11,11,11,12,
+ 12,13,13,13,13,14,14,14,14,
+};
+
+static const static_codebook _16u2_p6_0 = {
+ 2, 169,
+ (char *)_vq_lengthlist__16u2_p6_0,
+ 1, -526516224, 1616117760, 4, 0,
+ (long *)_vq_quantlist__16u2_p6_0,
+ 0
+};
+
+static const long _vq_quantlist__16u2_p6_1[] = {
+ 2,
+ 1,
+ 3,
+ 0,
+ 4,
+};
+
+static const char _vq_lengthlist__16u2_p6_1[] = {
+ 2, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
+ 5, 5, 5, 5, 5, 5, 5, 5, 5,
+};
+
+static const static_codebook _16u2_p6_1 = {
+ 2, 25,
+ (char *)_vq_lengthlist__16u2_p6_1,
+ 1, -533725184, 1611661312, 3, 0,
+ (long *)_vq_quantlist__16u2_p6_1,
+ 0
+};
+
+static const long _vq_quantlist__16u2_p7_0[] = {
+ 6,
+ 5,
+ 7,
+ 4,
+ 8,
+ 3,
+ 9,
+ 2,
+ 10,
+ 1,
+ 11,
+ 0,
+ 12,
+};
+
+static const char _vq_lengthlist__16u2_p7_0[] = {
+ 1, 4, 4, 7, 7, 8, 8, 8, 8, 9, 9,10,10, 4, 6, 6,
+ 8, 8, 9, 9, 9, 9,10,10,11,10, 4, 6, 6, 8, 8, 9,
+ 9, 9, 9,10,10,11,11, 7, 8, 8,10, 9,10,10,10,10,
+ 11,11,12,12, 7, 8, 8,10,10,10,10,10,10,11,11,12,
+ 12, 8, 9, 9,10,10,11,11,11,11,12,12,13,13, 8, 9,
+ 9,10,10,11,11,11,11,12,12,13,13, 8, 9, 9,11,10,
+ 11,11,12,12,13,13,14,13, 8, 9, 9,10,10,11,11,12,
+ 12,13,13,13,13, 9,10,10,11,11,12,12,13,13,13,13,
+ 14,14, 9,10,10,11,11,12,12,13,13,13,13,14,14,10,
+ 11,11,12,12,13,13,14,13,14,14,15,14,10,11,11,12,
+ 12,13,13,14,13,14,14,15,14,
+};
+
+static const static_codebook _16u2_p7_0 = {
+ 2, 169,
+ (char *)_vq_lengthlist__16u2_p7_0,
+ 1, -523206656, 1618345984, 4, 0,
+ (long *)_vq_quantlist__16u2_p7_0,
+ 0
+};
+
+static const long _vq_quantlist__16u2_p7_1[] = {
+ 5,
+ 4,
+ 6,
+ 3,
+ 7,
+ 2,
+ 8,
+ 1,
+ 9,
+ 0,
+ 10,
+};
+
+static const char _vq_lengthlist__16u2_p7_1[] = {
+ 2, 5, 5, 7, 7, 7, 7, 7, 7, 8, 8, 5, 6, 6, 7, 7,
+ 7, 7, 8, 8, 8, 8, 5, 6, 6, 7, 7, 7, 7, 8, 8, 8,
+ 8, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 7, 7, 7, 7,
+ 7, 8, 8, 8, 8, 8, 8, 7, 7, 7, 8, 8, 8, 8, 8, 8,
+ 8, 8, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8, 8, 7, 8, 8,
+ 8, 8, 8, 8, 8, 8, 8, 8, 7, 8, 8, 8, 8, 8, 8, 8,
+ 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8,
+ 8, 8, 8, 8, 8, 8, 8, 8, 8,
+};
+
+static const static_codebook _16u2_p7_1 = {
+ 2, 121,
+ (char *)_vq_lengthlist__16u2_p7_1,
+ 1, -531365888, 1611661312, 4, 0,
+ (long *)_vq_quantlist__16u2_p7_1,
+ 0
+};
+
+static const long _vq_quantlist__16u2_p8_0[] = {
+ 7,
+ 6,
+ 8,
+ 5,
+ 9,
+ 4,
+ 10,
+ 3,
+ 11,
+ 2,
+ 12,
+ 1,
+ 13,
+ 0,
+ 14,
+};
+
+static const char _vq_lengthlist__16u2_p8_0[] = {
+ 1, 4, 4, 7, 7, 8, 8, 7, 7, 9, 8,10, 9,11,11, 4,
+ 7, 6, 9, 8, 9, 9, 9, 9,10, 9,11, 9,12, 9, 4, 6,
+ 7, 8, 8, 9, 9, 9, 9,10,10,10,11,11,12, 7, 9, 8,
+ 10,10,11,11,10,10,11,11,12,12,13,12, 7, 8, 8,10,
+ 10,10,11,10,10,11,11,11,12,12,13, 8, 9, 9,11,11,
+ 11,11,11,11,12,12,13,13,13,13, 8, 9, 9,11,11,11,
+ 11,11,11,12,12,13,13,13,14, 8, 9, 9,10,10,11,11,
+ 12,11,13,13,14,13,14,14, 8, 9, 9,10,10,11,11,12,
+ 12,12,12,13,13,14,14, 9,10,10,11,11,12,12,13,12,
+ 13,13,14,14,15,15, 9,10,10,11,11,12,12,12,13,13,
+ 13,14,14,14,15,10,11,11,12,12,13,13,14,13,14,14,
+ 15,14,15,15,10,11,11,12,12,13,12,13,14,14,14,14,
+ 14,15,15,11,12,12,13,13,13,13,14,14,15,14,15,15,
+ 16,16,11,12,12,13,13,13,13,14,14,14,15,15,15,16,
+ 16,
+};
+
+static const static_codebook _16u2_p8_0 = {
+ 2, 225,
+ (char *)_vq_lengthlist__16u2_p8_0,
+ 1, -520986624, 1620377600, 4, 0,
+ (long *)_vq_quantlist__16u2_p8_0,
+ 0
+};
+
+static const long _vq_quantlist__16u2_p8_1[] = {
+ 10,
+ 9,
+ 11,
+ 8,
+ 12,
+ 7,
+ 13,
+ 6,
+ 14,
+ 5,
+ 15,
+ 4,
+ 16,
+ 3,
+ 17,
+ 2,
+ 18,
+ 1,
+ 19,
+ 0,
+ 20,
+};
+
+static const char _vq_lengthlist__16u2_p8_1[] = {
+ 3, 5, 5, 7, 7, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9,
+ 9, 9, 9, 9, 9, 5, 6, 6, 7, 7, 8, 8, 9, 9, 9, 9,
+ 9, 9, 9, 9, 9, 9,10,10,10,10, 5, 6, 6, 7, 7, 8,
+ 8, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 7,
+ 7, 7, 8, 8, 9, 8, 9, 9, 9, 9, 9, 9,10,10,10,10,
+ 10,10,10,10, 7, 7, 7, 8, 8, 9, 9, 9, 9, 9, 9, 9,
+ 9,10, 9,10,10,10, 9,10, 9, 8, 8, 8, 9, 8, 9, 9,
+ 9, 9,10, 9,10,10,10,10,10,10,10,10,10,10, 8, 8,
+ 8, 8, 9, 9, 9, 9, 9, 9, 9,10,10,10,10,10,10,10,
+ 10,10,10, 8, 9, 9, 9, 9, 9, 9, 9, 9,10,10,10,10,
+ 10,10,10,10,10,10,10,10, 8, 9, 9, 9, 9, 9, 9, 9,
+ 10,10,10,10,10,10,10,10,10,10,10,10,10, 9, 9, 9,
+ 9, 9, 9, 9,10,10,10,10,10,10,10,10,10,10,10,10,
+ 10,10, 9, 9, 9, 9, 9, 9, 9,10,10,10,10,10,10,10,
+ 10,10,10,10,10,10,10, 9, 9, 9, 9, 9,10,10,10,10,
+ 10,10,10,10,10,10,10,10,10,10,10,10, 9, 9, 9, 9,
+ 9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,
+ 10, 9, 9, 9,10,10,10,10,10,10,10,10,10,10,10,10,
+ 10,10,10,10,10,10, 9, 9, 9,10,10,10,10,10,10,10,
+ 10,10,10,10,10,10,10,10,10,10,10, 9, 9,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, 9,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, 9,
+ 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,
+};
+
+static const static_codebook _16u2_p8_1 = {
+ 2, 441,
+ (char *)_vq_lengthlist__16u2_p8_1,
+ 1, -529268736, 1611661312, 5, 0,
+ (long *)_vq_quantlist__16u2_p8_1,
+ 0
+};
+
+static const long _vq_quantlist__16u2_p9_0[] = {
+ 7,
+ 6,
+ 8,
+ 5,
+ 9,
+ 4,
+ 10,
+ 3,
+ 11,
+ 2,
+ 12,
+ 1,
+ 13,
+ 0,
+ 14,
+};
+
+static const char _vq_lengthlist__16u2_p9_0[] = {
+ 1, 5, 3, 9, 8, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 5,
+ 7, 8, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 5, 7,
+ 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,10,10,10,10,10,10,
+ 10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,
+ 10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,
+ 10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,
+ 10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,
+ 10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,
+ 10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,
+ 10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,
+ 10,10,10,10,10,10,10,10,10,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 const static_codebook _16u2_p9_0 = {
+ 2, 225,
+ (char *)_vq_lengthlist__16u2_p9_0,
+ 1, -510036736, 1631393792, 4, 0,
+ (long *)_vq_quantlist__16u2_p9_0,
+ 0
+};
+
+static const long _vq_quantlist__16u2_p9_1[] = {
+ 9,
+ 8,
+ 10,
+ 7,
+ 11,
+ 6,
+ 12,
+ 5,
+ 13,
+ 4,
+ 14,
+ 3,
+ 15,
+ 2,
+ 16,
+ 1,
+ 17,
+ 0,
+ 18,
+};
+
+static const char _vq_lengthlist__16u2_p9_1[] = {
+ 1, 4, 4, 7, 7, 7, 7, 7, 6, 9, 7,10, 8,12,12,13,
+ 13,14,14, 4, 7, 7, 9, 9, 9, 8, 9, 8,10, 9,11, 9,
+ 14, 9,14,10,13,11, 4, 7, 7, 9, 9, 9, 9, 8, 9,10,
+ 10,11,11,12,13,12,13,14,15, 7, 9, 9,10,11,10,10,
+ 10,10,11,12,13,13,13,14,17,14,15,16, 7, 9, 9,10,
+ 10,10,10,10,10,11,12,13,13,14,14,15,15,18,18, 8,
+ 9, 9,11,10,11,11,11,12,13,12,14,14,16,15,15,17,
+ 18,15, 8, 9, 9,10,10,11,11,11,11,13,13,14,14,15,
+ 15,15,16,16,18, 7, 9, 8,10,10,11,11,12,12,14,14,
+ 15,15,16,16,15,17,16,18, 8, 9, 9,10,10,11,12,12,
+ 12,13,13,16,15,17,16,17,18,17,18, 9,10,10,12,11,
+ 13,13,14,13,14,14,15,17,16,18,17,18,17,18, 9,10,
+ 10,12,11,12,13,13,14,15,16,14,15,16,18,18,18,18,
+ 17,11,11,11,13,13,14,14,16,15,15,15,16,15,15,18,
+ 18,18,17,16,11,11,12,13,13,15,14,15,16,16,16,17,
+ 16,15,18,17,18,16,18,12,13,13,15,15,15,16,18,16,
+ 17,16,17,16,17,17,17,18,18,17,13,13,13,15,13,16,
+ 15,17,16,16,16,18,18,18,18,16,17,17,18,13,15,14,
+ 15,15,18,17,18,18,18,16,18,17,18,17,18,16,17,17,
+ 14,14,14,15,16,17,16,18,18,18,17,18,17,18,18,18,
+ 16,16,16,14,17,16,17,15,16,18,18,17,18,17,18,17,
+ 18,18,18,17,18,17,15,16,15,18,15,18,17,16,18,18,
+ 18,18,18,18,17,18,16,18,17,
+};
+
+static const static_codebook _16u2_p9_1 = {
+ 2, 361,
+ (char *)_vq_lengthlist__16u2_p9_1,
+ 1, -518287360, 1622704128, 5, 0,
+ (long *)_vq_quantlist__16u2_p9_1,
+ 0
+};
+
+static const long _vq_quantlist__16u2_p9_2[] = {
+ 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 const char _vq_lengthlist__16u2_p9_2[] = {
+ 2, 3, 4, 4, 4, 5, 5, 6, 5, 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, 7, 8, 8, 8, 8, 8,
+ 8,
+};
+
+static const static_codebook _16u2_p9_2 = {
+ 1, 49,
+ (char *)_vq_lengthlist__16u2_p9_2,
+ 1, -526909440, 1611661312, 6, 0,
+ (long *)_vq_quantlist__16u2_p9_2,
+ 0
+};
+
+static const char _huff_lengthlist__16u2__short[] = {
+ 8,11,13,13,15,16,19,19,19,19,11, 8, 8, 9, 9,11,
+ 13,15,19,20,14, 8, 7, 7, 8, 9,12,13,15,20,15, 9,
+ 6, 5, 5, 7,10,12,14,18,14, 9, 7, 5, 3, 4, 7,10,
+ 12,16,13,10, 8, 6, 3, 3, 5, 8,11,14,11,10, 9, 7,
+ 5, 4, 4, 6,11,14,10,10,10, 8, 6, 5, 5, 6,10,14,
+ 10,10,10, 9, 8, 7, 7, 7,10,14,11,12,12,12,11,10,
+ 10,10,12,16,
+};
+
+static const static_codebook _huff_book__16u2__short = {
+ 2, 100,
+ (char *)_huff_lengthlist__16u2__short,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
+static const long _vq_quantlist__8u0__p1_0[] = {
+ 1,
+ 0,
+ 2,
+};
+
+static const char _vq_lengthlist__8u0__p1_0[] = {
+ 1, 4, 4, 5, 7, 7, 5, 7, 7, 5, 8, 8, 8,10,10, 7,
+ 10,10, 5, 8, 8, 7,10,10, 8,10,10, 4, 9, 8, 8,11,
+ 11, 8,11,11, 7,11,11,10,11,13,10,13,13, 7,11,11,
+ 10,13,12,10,13,13, 5, 9, 8, 8,11,11, 8,11,11, 7,
+ 11,11, 9,13,13,10,12,13, 7,11,11,10,13,13,10,13,
+ 11,
+};
+
+static const static_codebook _8u0__p1_0 = {
+ 4, 81,
+ (char *)_vq_lengthlist__8u0__p1_0,
+ 1, -535822336, 1611661312, 2, 0,
+ (long *)_vq_quantlist__8u0__p1_0,
+ 0
+};
+
+static const long _vq_quantlist__8u0__p2_0[] = {
+ 1,
+ 0,
+ 2,
+};
+
+static const char _vq_lengthlist__8u0__p2_0[] = {
+ 2, 4, 4, 5, 6, 6, 5, 6, 6, 5, 7, 7, 6, 7, 8, 6,
+ 7, 8, 5, 7, 7, 6, 8, 8, 7, 9, 7, 5, 7, 7, 7, 9,
+ 9, 7, 8, 8, 6, 9, 8, 7, 7,10, 8,10,10, 6, 8, 8,
+ 8,10, 8, 8,10,10, 5, 7, 7, 7, 8, 8, 7, 8, 9, 6,
+ 8, 8, 8,10,10, 8, 8,10, 6, 8, 9, 8,10,10, 7,10,
+ 8,
+};
+
+static const static_codebook _8u0__p2_0 = {
+ 4, 81,
+ (char *)_vq_lengthlist__8u0__p2_0,
+ 1, -535822336, 1611661312, 2, 0,
+ (long *)_vq_quantlist__8u0__p2_0,
+ 0
+};
+
+static const long _vq_quantlist__8u0__p3_0[] = {
+ 2,
+ 1,
+ 3,
+ 0,
+ 4,
+};
+
+static const char _vq_lengthlist__8u0__p3_0[] = {
+ 1, 5, 5, 7, 7, 6, 7, 7, 9, 9, 6, 7, 7, 9, 9, 8,
+ 10, 9,11,11, 8, 9, 9,11,11, 6, 8, 8,10,10, 8,10,
+ 10,11,11, 8,10,10,11,11,10,11,11,12,12,10,11,11,
+ 12,13, 6, 8, 8,10,10, 8,10,10,11,11, 8,10,10,11,
+ 11, 9,10,11,12,12,10,11,11,12,12, 8,11,11,14,13,
+ 10,12,11,15,13,10,12,11,14,14,12,13,12,16,14,12,
+ 14,12,16,15, 8,11,11,13,14,10,11,12,13,15,10,11,
+ 12,13,15,11,12,13,14,15,12,12,14,14,16, 5, 8, 8,
+ 11,11, 9,11,11,12,12, 8,10,11,12,12,11,12,12,15,
+ 14,11,12,12,14,14, 7,11,10,13,12,10,11,12,13,14,
+ 10,12,12,14,13,12,13,13,14,15,12,13,13,15,15, 7,
+ 10,11,12,13,10,12,11,14,13,10,12,13,13,15,12,13,
+ 12,14,14,11,13,13,15,16, 9,12,12,15,14,11,13,13,
+ 15,16,11,13,13,16,16,13,14,15,15,15,12,14,15,17,
+ 16, 9,12,12,14,15,11,13,13,15,16,11,13,13,16,18,
+ 13,14,14,17,16,13,15,15,17,18, 5, 8, 9,11,11, 8,
+ 11,11,12,12, 8,10,11,12,12,11,12,12,14,14,11,12,
+ 12,14,15, 7,11,10,12,13,10,12,12,14,13,10,11,12,
+ 13,14,11,13,13,15,14,12,13,13,14,15, 7,10,11,13,
+ 13,10,12,12,13,14,10,12,12,13,13,11,13,13,16,16,
+ 12,13,13,15,14, 9,12,12,16,15,10,13,13,15,15,11,
+ 13,13,17,15,12,15,15,18,17,13,14,14,15,16, 9,12,
+ 12,15,15,11,13,13,15,16,11,13,13,15,15,12,15,15,
+ 16,16,13,15,14,17,15, 7,11,11,15,15,10,13,13,16,
+ 15,10,13,13,15,16,14,15,15,17,19,13,15,14,15,18,
+ 9,12,12,16,16,11,13,14,17,16,11,13,13,17,16,15,
+ 15,16,17,19,13,15,16, 0,18, 9,12,12,16,15,11,14,
+ 13,17,17,11,13,14,16,16,15,16,16,19,18,13,15,15,
+ 17,19,11,14,14,19,16,12,14,15, 0,18,12,16,15,18,
+ 17,15,15,18,16,19,14,15,17,19,19,11,14,14,18,19,
+ 13,15,14,19,19,12,16,15,18,17,15,17,15, 0,16,14,
+ 17,16,19, 0, 7,11,11,14,14,10,12,12,15,15,10,13,
+ 13,16,15,13,15,15,17, 0,14,15,15,16,19, 9,12,12,
+ 16,16,11,14,14,16,16,11,13,13,16,16,14,17,16,19,
+ 0,14,18,17,17,19, 9,12,12,15,16,11,13,13,15,17,
+ 12,14,13,19,16,13,15,15,17,19,15,17,16,17,19,11,
+ 14,14,19,16,12,15,15,19,17,13,14,15,17,19,14,16,
+ 17,19,19,16,15,16,17,19,11,15,14,16,16,12,15,15,
+ 19, 0,12,14,15,19,19,14,16,16, 0,18,15,19,14,18,
+ 16,
+};
+
+static const static_codebook _8u0__p3_0 = {
+ 4, 625,
+ (char *)_vq_lengthlist__8u0__p3_0,
+ 1, -533725184, 1611661312, 3, 0,
+ (long *)_vq_quantlist__8u0__p3_0,
+ 0
+};
+
+static const long _vq_quantlist__8u0__p4_0[] = {
+ 2,
+ 1,
+ 3,
+ 0,
+ 4,
+};
+
+static const char _vq_lengthlist__8u0__p4_0[] = {
+ 3, 5, 5, 8, 8, 5, 6, 7, 9, 9, 6, 7, 6, 9, 9, 9,
+ 9, 9,10,11, 9, 9, 9,11,10, 6, 7, 7,10,10, 7, 7,
+ 8,10,10, 7, 8, 8,10,10,10,10,10,10,11, 9,10,10,
+ 11,12, 6, 7, 7,10,10, 7, 8, 8,10,10, 7, 8, 7,10,
+ 10, 9,10,10,12,11,10,10,10,11,10, 9,10,10,12,11,
+ 10,10,10,13,11, 9,10,10,12,12,11,11,12,12,13,11,
+ 11,11,12,13, 9,10,10,12,12,10,10,11,12,12,10,10,
+ 11,12,12,11,11,11,13,13,11,12,12,13,13, 5, 7, 7,
+ 10,10, 7, 8, 8,10,10, 7, 8, 8,10,10,10,11,11,12,
+ 12,10,11,10,12,12, 7, 8, 8,11,11, 7, 8, 9,10,11,
+ 8, 9, 9,11,11,11,10,11,10,12,10,11,11,12,13, 7,
+ 8, 8,10,11, 8, 9, 8,12,10, 8, 9, 9,11,12,10,11,
+ 10,13,11,10,11,11,13,12, 9,11,10,13,12,10,10,11,
+ 12,12,10,11,11,13,13,12,10,13,11,14,11,12,12,15,
+ 13, 9,11,11,13,13,10,11,11,13,12,10,11,11,12,14,
+ 12,13,11,14,12,12,12,12,14,14, 5, 7, 7,10,10, 7,
+ 8, 8,10,10, 7, 8, 8,11,10,10,11,11,12,12,10,11,
+ 10,12,12, 7, 8, 8,10,11, 8, 9, 9,12,11, 8, 8, 9,
+ 10,11,10,11,11,12,13,11,10,11,11,13, 6, 8, 8,10,
+ 11, 8, 9, 9,11,11, 7, 9, 7,11,10,10,11,11,12,12,
+ 10,11,10,13,10, 9,11,10,13,12,10,12,11,13,13,10,
+ 10,11,12,13,11,12,13,15,14,11,11,13,12,13, 9,10,
+ 11,12,13,10,11,11,12,13,10,11,10,13,12,12,13,13,
+ 13,14,12,12,11,14,11, 8,10,10,12,13,10,11,11,13,
+ 13,10,11,10,13,13,12,13,14,15,14,12,12,12,14,13,
+ 9,10,10,13,12,10,10,12,13,13,10,11,11,15,12,12,
+ 12,13,15,14,12,13,13,15,13, 9,10,11,12,13,10,12,
+ 10,13,12,10,11,11,12,13,12,14,12,15,13,12,12,12,
+ 15,14,11,12,11,14,13,11,11,12,14,14,12,13,13,14,
+ 13,13,11,15,11,15,14,14,14,16,15,11,12,12,13,14,
+ 11,13,11,14,14,12,12,13,14,15,12,14,12,15,12,13,
+ 15,14,16,15, 8,10,10,12,12,10,10,10,12,13,10,11,
+ 11,13,13,12,12,12,13,14,13,13,13,15,15, 9,10,10,
+ 12,12,10,11,11,13,12,10,10,11,13,13,12,12,12,14,
+ 14,12,12,13,15,14, 9,10,10,13,12,10,10,12,12,13,
+ 10,11,10,13,13,12,13,13,14,14,12,13,12,14,13,11,
+ 12,12,14,13,12,13,12,14,14,10,12,12,14,14,14,14,
+ 14,16,14,13,12,14,12,15,10,12,12,14,15,12,13,13,
+ 14,16,11,12,11,15,14,13,14,14,14,15,13,14,11,14,
+ 12,
+};
+
+static const static_codebook _8u0__p4_0 = {
+ 4, 625,
+ (char *)_vq_lengthlist__8u0__p4_0,
+ 1, -533725184, 1611661312, 3, 0,
+ (long *)_vq_quantlist__8u0__p4_0,
+ 0
+};
+
+static const long _vq_quantlist__8u0__p5_0[] = {
+ 4,
+ 3,
+ 5,
+ 2,
+ 6,
+ 1,
+ 7,
+ 0,
+ 8,
+};
+
+static const char _vq_lengthlist__8u0__p5_0[] = {
+ 1, 4, 4, 7, 7, 7, 7, 9, 9, 4, 6, 6, 8, 7, 8, 8,
+ 10,10, 4, 6, 6, 8, 8, 8, 8,10,10, 6, 8, 8, 9, 9,
+ 9, 9,11,11, 7, 8, 8, 9, 9, 9, 9,11,11, 7, 8, 8,
+ 9, 9,10,10,12,11, 7, 8, 8, 9, 9,10,10,11,11, 9,
+ 10,10,11,11,11,12,12,12, 9,10,10,11,11,12,12,12,
+ 12,
+};
+
+static const static_codebook _8u0__p5_0 = {
+ 2, 81,
+ (char *)_vq_lengthlist__8u0__p5_0,
+ 1, -531628032, 1611661312, 4, 0,
+ (long *)_vq_quantlist__8u0__p5_0,
+ 0
+};
+
+static const long _vq_quantlist__8u0__p6_0[] = {
+ 6,
+ 5,
+ 7,
+ 4,
+ 8,
+ 3,
+ 9,
+ 2,
+ 10,
+ 1,
+ 11,
+ 0,
+ 12,
+};
+
+static const char _vq_lengthlist__8u0__p6_0[] = {
+ 1, 4, 4, 7, 7, 9, 9,11,11,12,12,16,16, 3, 6, 6,
+ 9, 9,11,11,12,12,13,14,18,16, 3, 6, 7, 9, 9,11,
+ 11,13,12,14,14,17,16, 7, 9, 9,11,11,12,12,14,14,
+ 14,14,17,16, 7, 9, 9,11,11,13,12,13,13,14,14,17,
+ 0, 9,11,11,12,13,14,14,14,13,15,14,17,17, 9,11,
+ 11,12,12,14,14,13,14,14,15, 0, 0,11,12,12,15,14,
+ 15,14,15,14,15,16,17, 0,11,12,13,13,13,14,14,15,
+ 14,15,15, 0, 0,12,14,14,15,15,14,16,15,15,17,16,
+ 0,18,13,14,14,15,14,15,14,15,16,17,16, 0, 0,17,
+ 17,18, 0,16,18,16, 0, 0, 0,17, 0, 0,16, 0, 0,16,
+ 16, 0,15, 0,17, 0, 0, 0, 0,
+};
+
+static const static_codebook _8u0__p6_0 = {
+ 2, 169,
+ (char *)_vq_lengthlist__8u0__p6_0,
+ 1, -526516224, 1616117760, 4, 0,
+ (long *)_vq_quantlist__8u0__p6_0,
+ 0
+};
+
+static const long _vq_quantlist__8u0__p6_1[] = {
+ 2,
+ 1,
+ 3,
+ 0,
+ 4,
+};
+
+static const char _vq_lengthlist__8u0__p6_1[] = {
+ 1, 4, 4, 6, 6, 4, 6, 5, 7, 7, 4, 5, 6, 7, 7, 6,
+ 7, 7, 7, 7, 6, 7, 7, 7, 7,
+};
+
+static const static_codebook _8u0__p6_1 = {
+ 2, 25,
+ (char *)_vq_lengthlist__8u0__p6_1,
+ 1, -533725184, 1611661312, 3, 0,
+ (long *)_vq_quantlist__8u0__p6_1,
+ 0
+};
+
+static const long _vq_quantlist__8u0__p7_0[] = {
+ 1,
+ 0,
+ 2,
+};
+
+static const char _vq_lengthlist__8u0__p7_0[] = {
+ 1, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8,
+ 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8,
+ 8, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7,
+ 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7,
+ 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7,
+ 7,
+};
+
+static const static_codebook _8u0__p7_0 = {
+ 4, 81,
+ (char *)_vq_lengthlist__8u0__p7_0,
+ 1, -518803456, 1628680192, 2, 0,
+ (long *)_vq_quantlist__8u0__p7_0,
+ 0
+};
+
+static const long _vq_quantlist__8u0__p7_1[] = {
+ 7,
+ 6,
+ 8,
+ 5,
+ 9,
+ 4,
+ 10,
+ 3,
+ 11,
+ 2,
+ 12,
+ 1,
+ 13,
+ 0,
+ 14,
+};
+
+static const char _vq_lengthlist__8u0__p7_1[] = {
+ 1, 5, 5, 5, 5,10,10,11,11,11,11,11,11,11,11, 5,
+ 7, 6, 8, 8, 9,10,11,11,11,11,11,11,11,11, 6, 6,
+ 7, 9, 7,11,10,11,11,11,11,11,11,11,11, 5, 6, 6,
+ 11, 8,11,11,11,11,11,11,11,11,11,11, 5, 6, 6, 9,
+ 10,11,10,11,11,11,11,11,11,11,11, 7,10,10,11,11,
+ 11,11,11,11,11,11,11,11,11,11, 7,11, 8,11,11,11,
+ 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
+ 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
+ 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
+ 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
+ 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
+ 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
+ 11,11,11,11,11,11,11,11,11,11,11,10,10,10,10,10,
+ 10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,
+ 10,
+};
+
+static const static_codebook _8u0__p7_1 = {
+ 2, 225,
+ (char *)_vq_lengthlist__8u0__p7_1,
+ 1, -520986624, 1620377600, 4, 0,
+ (long *)_vq_quantlist__8u0__p7_1,
+ 0
+};
+
+static const long _vq_quantlist__8u0__p7_2[] = {
+ 10,
+ 9,
+ 11,
+ 8,
+ 12,
+ 7,
+ 13,
+ 6,
+ 14,
+ 5,
+ 15,
+ 4,
+ 16,
+ 3,
+ 17,
+ 2,
+ 18,
+ 1,
+ 19,
+ 0,
+ 20,
+};
+
+static const char _vq_lengthlist__8u0__p7_2[] = {
+ 1, 6, 5, 7, 7, 9, 9, 9, 9,10,12,12,10,11,11,10,
+ 11,11,11,10,11, 6, 8, 8, 9, 9,10,10, 9,10,11,11,
+ 10,11,11,11,11,10,11,11,11,11, 6, 7, 8, 9, 9, 9,
+ 10,11,10,11,12,11,10,11,11,11,11,11,11,12,10, 8,
+ 9, 9,10, 9,10,10, 9,10,10,10,10,10, 9,10,10,10,
+ 10, 9,10,10, 9, 9, 9, 9,10,10, 9, 9,10,10,11,10,
+ 9,12,10,11,10, 9,10,10,10, 8, 9, 9,10, 9,10, 9,
+ 9,10,10, 9,10, 9,11,10,10,10,10,10, 9,10, 8, 8,
+ 9, 9,10, 9,11, 9, 8, 9, 9,10,11,10,10,10,11,12,
+ 9, 9,11, 8, 9, 8,11,10,11,10,10, 9,11,10,10,10,
+ 10,10,10,10,11,11,11,11, 8, 9, 9, 9,10,10,10,11,
+ 11,12,11,12,11,10,10,10,12,11,11,11,10, 8,10, 9,
+ 11,10,10,11,12,10,11,12,11,11,12,11,12,12,10,11,
+ 11,10, 9, 9,10,11,12,10,10,10,11,10,11,11,10,12,
+ 12,10,11,10,11,12,10, 9,10,10,11,10,11,11,11,11,
+ 11,12,11,11,11, 9,11,10,11,10,11,10, 9, 9,10,11,
+ 11,11,10,10,11,12,12,11,12,11,11,11,12,12,12,12,
+ 11, 9,11,11,12,10,11,11,11,11,11,11,12,11,11,12,
+ 11,11,11,10,11,11, 9,11,10,11,11,11,10,10,10,11,
+ 11,11,12,10,11,10,11,11,11,11,12, 9,11,10,11,11,
+ 10,10,11,11, 9,11,11,12,10,10,10,10,10,11,11,10,
+ 9,10,11,11,12,11,10,10,12,11,11,12,11,12,11,11,
+ 10,10,11,11,10,12,11,10,11,10,11,10,10,10,11,11,
+ 10,10,11,11,11,11,10,10,10,12,11,11,11,11,10, 9,
+ 10,11,11,11,12,11,11,11,12,10,11,11,11, 9,10,11,
+ 11,11,11,11,11,10,10,11,11,12,11,10,11,12,11,10,
+ 10,11, 9,10,11,11,11,11,11,10,11,11,10,12,11,11,
+ 11,12,11,11,11,10,10,11,11,
+};
+
+static const static_codebook _8u0__p7_2 = {
+ 2, 441,
+ (char *)_vq_lengthlist__8u0__p7_2,
+ 1, -529268736, 1611661312, 5, 0,
+ (long *)_vq_quantlist__8u0__p7_2,
+ 0
+};
+
+static const char _huff_lengthlist__8u0__single[] = {
+ 4, 7,11, 9,12, 8, 7,10, 6, 4, 5, 5, 7, 5, 6,16,
+ 9, 5, 5, 6, 7, 7, 9,16, 7, 4, 6, 5, 7, 5, 7,17,
+ 10, 7, 7, 8, 7, 7, 8,18, 7, 5, 6, 4, 5, 4, 5,15,
+ 7, 6, 7, 5, 6, 4, 5,15,12,13,18,12,17,11, 9,17,
+};
+
+static const static_codebook _huff_book__8u0__single = {
+ 2, 64,
+ (char *)_huff_lengthlist__8u0__single,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
+static const long _vq_quantlist__8u1__p1_0[] = {
+ 1,
+ 0,
+ 2,
+};
+
+static const char _vq_lengthlist__8u1__p1_0[] = {
+ 1, 4, 4, 5, 7, 7, 5, 7, 7, 5, 8, 8, 7, 9,10, 7,
+ 9, 9, 5, 8, 8, 7,10, 9, 7, 9, 9, 5, 8, 8, 8,10,
+ 10, 8,10,10, 7,10,10, 9,10,12,10,12,12, 7,10,10,
+ 9,12,11,10,12,12, 5, 8, 8, 8,10,10, 8,10,10, 7,
+ 10,10,10,12,12, 9,11,12, 7,10,10,10,12,12, 9,12,
+ 10,
+};
+
+static const static_codebook _8u1__p1_0 = {
+ 4, 81,
+ (char *)_vq_lengthlist__8u1__p1_0,
+ 1, -535822336, 1611661312, 2, 0,
+ (long *)_vq_quantlist__8u1__p1_0,
+ 0
+};
+
+static const long _vq_quantlist__8u1__p2_0[] = {
+ 1,
+ 0,
+ 2,
+};
+
+static const char _vq_lengthlist__8u1__p2_0[] = {
+ 3, 4, 5, 5, 6, 6, 5, 6, 6, 5, 7, 6, 6, 7, 8, 6,
+ 7, 8, 5, 6, 6, 6, 8, 7, 6, 8, 7, 5, 6, 6, 7, 8,
+ 8, 6, 7, 7, 6, 8, 7, 7, 7, 9, 8, 9, 9, 6, 7, 8,
+ 7, 9, 7, 8, 9, 9, 5, 6, 6, 6, 7, 7, 7, 8, 8, 6,
+ 8, 7, 8, 9, 9, 7, 7, 9, 6, 7, 8, 8, 9, 9, 7, 9,
+ 7,
+};
+
+static const static_codebook _8u1__p2_0 = {
+ 4, 81,
+ (char *)_vq_lengthlist__8u1__p2_0,
+ 1, -535822336, 1611661312, 2, 0,
+ (long *)_vq_quantlist__8u1__p2_0,
+ 0
+};
+
+static const long _vq_quantlist__8u1__p3_0[] = {
+ 2,
+ 1,
+ 3,
+ 0,
+ 4,
+};
+
+static const char _vq_lengthlist__8u1__p3_0[] = {
+ 1, 5, 5, 7, 7, 6, 7, 7, 9, 9, 6, 7, 7, 9, 9, 8,
+ 10, 9,11,11, 9, 9, 9,11,11, 6, 8, 8,10,10, 8,10,
+ 10,11,11, 8, 9,10,11,11,10,11,11,12,12,10,11,11,
+ 12,13, 6, 8, 8,10,10, 8,10, 9,11,11, 8,10, 9,11,
+ 11,10,11,11,12,12,10,11,11,12,12, 9,11,11,14,13,
+ 10,12,11,14,14,10,12,11,14,13,12,13,13,15,14,12,
+ 13,13,15,14, 8,11,11,13,14,10,11,12,13,15,10,11,
+ 12,14,14,12,13,13,14,15,12,13,13,14,15, 5, 8, 8,
+ 11,11, 8,10,10,12,12, 8,10,10,12,12,11,12,12,14,
+ 13,11,12,12,13,14, 8,10,10,12,12, 9,11,12,13,14,
+ 10,12,12,13,13,12,12,13,14,14,11,13,13,15,15, 7,
+ 10,10,12,12, 9,12,11,14,12,10,11,12,13,14,12,13,
+ 12,14,14,12,13,13,15,16,10,12,12,15,14,11,12,13,
+ 15,15,11,13,13,15,16,14,14,15,15,16,13,14,15,17,
+ 15, 9,12,12,14,15,11,13,12,15,15,11,13,13,15,15,
+ 13,14,13,15,14,13,14,14,17, 0, 5, 8, 8,11,11, 8,
+ 10,10,12,12, 8,10,10,12,12,11,12,12,14,14,11,12,
+ 12,14,14, 7,10,10,12,12,10,12,12,13,13, 9,11,12,
+ 12,13,11,12,13,15,15,11,12,13,14,15, 8,10,10,12,
+ 12,10,12,11,13,13,10,12,11,13,13,11,13,13,15,14,
+ 12,13,12,15,13, 9,12,12,14,14,11,13,13,16,15,11,
+ 12,13,16,15,13,14,15,16,16,13,13,15,15,16,10,12,
+ 12,15,14,11,13,13,14,16,11,13,13,15,16,13,15,15,
+ 16,17,13,15,14,16,15, 8,11,11,14,15,10,12,12,15,
+ 15,10,12,12,15,16,14,15,15,16,17,13,14,14,16,16,
+ 9,12,12,15,15,11,13,14,15,17,11,13,13,15,16,14,
+ 15,16,19,17,13,15,15, 0,17, 9,12,12,15,15,11,14,
+ 13,16,15,11,13,13,15,16,15,15,15,18,17,13,15,15,
+ 17,17,11,15,14,18,16,12,14,15,17,17,12,15,15,18,
+ 18,15,15,16,15,19,14,16,16, 0, 0,11,14,14,16,17,
+ 12,15,14,18,17,12,15,15,18,18,15,17,15,18,16,14,
+ 16,16,18,18, 7,11,11,14,14,10,12,12,15,15,10,12,
+ 13,15,15,13,14,15,16,16,14,15,15,18,18, 9,12,12,
+ 15,15,11,13,13,16,15,11,12,13,16,16,14,15,15,17,
+ 16,15,16,16,17,17, 9,12,12,15,15,11,13,13,15,17,
+ 11,14,13,16,15,13,15,15,17,17,15,15,15,18,17,11,
+ 14,14,17,15,12,14,15,17,18,13,13,15,17,17,14,16,
+ 16,19,18,16,15,17,17, 0,11,14,14,17,17,12,15,15,
+ 18, 0,12,15,14,18,16,14,17,17,19, 0,16,18,15, 0,
+ 16,
+};
+
+static const static_codebook _8u1__p3_0 = {
+ 4, 625,
+ (char *)_vq_lengthlist__8u1__p3_0,
+ 1, -533725184, 1611661312, 3, 0,
+ (long *)_vq_quantlist__8u1__p3_0,
+ 0
+};
+
+static const long _vq_quantlist__8u1__p4_0[] = {
+ 2,
+ 1,
+ 3,
+ 0,
+ 4,
+};
+
+static const char _vq_lengthlist__8u1__p4_0[] = {
+ 4, 5, 5, 9, 9, 6, 7, 7, 9, 9, 6, 7, 7, 9, 9, 9,
+ 9, 9,11,11, 9, 9, 9,11,11, 6, 7, 7, 9, 9, 7, 7,
+ 8, 9,10, 7, 7, 8, 9,10, 9, 9,10,10,11, 9, 9,10,
+ 10,12, 6, 7, 7, 9, 9, 7, 8, 7,10, 9, 7, 8, 7,10,
+ 9, 9,10, 9,12,11,10,10, 9,12,10, 9,10,10,12,11,
+ 9,10,10,12,11, 9,10,10,12,12,11,11,12,12,13,11,
+ 11,12,12,13, 9, 9,10,12,11, 9,10,10,12,12,10,10,
+ 10,12,12,11,12,11,13,12,11,12,11,13,12, 6, 7, 7,
+ 9, 9, 7, 8, 8,10,10, 7, 8, 7,10, 9,10,10,10,12,
+ 12,10,10,10,12,11, 7, 8, 7,10,10, 7, 7, 9,10,11,
+ 8, 9, 9,11,10,10,10,11,10,12,10,10,11,12,12, 7,
+ 8, 8,10,10, 7, 9, 8,11,10, 8, 8, 9,11,11,10,11,
+ 10,12,11,10,11,11,12,12, 9,10,10,12,12, 9,10,10,
+ 12,12,10,11,11,13,12,11,10,12,10,14,12,12,12,13,
+ 14, 9,10,10,12,12, 9,11,10,12,12,10,11,11,12,12,
+ 11,12,11,14,12,12,12,12,14,14, 5, 7, 7, 9, 9, 7,
+ 7, 7, 9,10, 7, 8, 8,10,10,10,10,10,11,11,10,10,
+ 10,12,12, 7, 8, 8,10,10, 8, 9, 8,11,10, 7, 8, 9,
+ 10,11,10,10,10,11,12,10,10,11,11,13, 6, 7, 8,10,
+ 10, 8, 9, 9,10,10, 7, 9, 7,11,10,10,11,10,12,12,
+ 10,11,10,12,10, 9,10,10,12,12,10,11,11,13,12, 9,
+ 10,10,12,12,12,12,12,14,13,11,11,12,11,14, 9,10,
+ 10,11,12,10,11,11,12,13, 9,10,10,12,12,12,12,12,
+ 14,13,11,12,10,14,11, 9, 9,10,11,12, 9,10,10,12,
+ 12, 9,10,10,12,12,12,12,12,14,14,11,12,12,13,12,
+ 9,10, 9,12,12, 9,10,11,12,13,10,11,10,13,11,12,
+ 12,13,13,14,12,12,12,13,13, 9,10,10,12,12,10,11,
+ 10,13,12,10,10,11,12,13,12,13,12,14,13,12,12,12,
+ 13,14,11,12,11,14,13,10,10,11,13,13,12,12,12,14,
+ 13,12,10,14,10,15,13,14,14,14,14,11,11,12,13,14,
+ 10,12,11,13,13,12,12,12,13,15,12,13,11,15,12,13,
+ 13,14,14,14, 9,10, 9,12,12, 9,10,10,12,12,10,10,
+ 10,12,12,11,11,12,12,13,12,12,12,14,14, 9,10,10,
+ 12,12,10,11,10,13,12,10,10,11,12,13,12,12,12,14,
+ 13,12,12,13,13,14, 9,10,10,12,13,10,10,11,11,12,
+ 9,11,10,13,12,12,12,12,13,14,12,13,12,14,13,11,
+ 12,11,13,13,12,13,12,14,13,10,11,12,13,13,13,13,
+ 13,14,15,12,11,14,12,14,11,11,12,12,13,12,12,12,
+ 13,14,10,12,10,14,13,13,13,13,14,15,12,14,11,15,
+ 10,
+};
+
+static const static_codebook _8u1__p4_0 = {
+ 4, 625,
+ (char *)_vq_lengthlist__8u1__p4_0,
+ 1, -533725184, 1611661312, 3, 0,
+ (long *)_vq_quantlist__8u1__p4_0,
+ 0
+};
+
+static const long _vq_quantlist__8u1__p5_0[] = {
+ 4,
+ 3,
+ 5,
+ 2,
+ 6,
+ 1,
+ 7,
+ 0,
+ 8,
+};
+
+static const char _vq_lengthlist__8u1__p5_0[] = {
+ 1, 4, 4, 7, 7, 7, 7, 9, 9, 4, 6, 5, 8, 7, 8, 8,
+ 10,10, 4, 6, 6, 8, 8, 8, 8,10,10, 7, 8, 8, 9, 9,
+ 9, 9,11,11, 7, 8, 8, 9, 9, 9, 9,11,11, 8, 8, 8,
+ 9, 9,10,10,12,11, 8, 8, 8, 9, 9,10,10,11,11, 9,
+ 10,10,11,11,11,11,13,12, 9,10,10,11,11,12,12,12,
+ 13,
+};
+
+static const static_codebook _8u1__p5_0 = {
+ 2, 81,
+ (char *)_vq_lengthlist__8u1__p5_0,
+ 1, -531628032, 1611661312, 4, 0,
+ (long *)_vq_quantlist__8u1__p5_0,
+ 0
+};
+
+static const long _vq_quantlist__8u1__p6_0[] = {
+ 4,
+ 3,
+ 5,
+ 2,
+ 6,
+ 1,
+ 7,
+ 0,
+ 8,
+};
+
+static const char _vq_lengthlist__8u1__p6_0[] = {
+ 3, 4, 4, 6, 6, 7, 7, 9, 9, 4, 4, 5, 6, 6, 7, 7,
+ 9, 9, 4, 4, 4, 6, 6, 7, 7, 9, 9, 6, 6, 6, 7, 7,
+ 8, 8, 9, 9, 6, 6, 6, 7, 7, 8, 8, 9, 9, 7, 7, 7,
+ 8, 8, 8, 9,10,10, 7, 7, 7, 8, 8, 9, 8,10,10, 9,
+ 9, 9, 9, 9,10,10,10,10, 9, 9, 9, 9, 9,10,10,10,
+ 10,
+};
+
+static const static_codebook _8u1__p6_0 = {
+ 2, 81,
+ (char *)_vq_lengthlist__8u1__p6_0,
+ 1, -531628032, 1611661312, 4, 0,
+ (long *)_vq_quantlist__8u1__p6_0,
+ 0
+};
+
+static const long _vq_quantlist__8u1__p7_0[] = {
+ 1,
+ 0,
+ 2,
+};
+
+static const char _vq_lengthlist__8u1__p7_0[] = {
+ 1, 4, 4, 5, 7, 7, 5, 7, 7, 5, 9, 9, 8,10,10, 8,
+ 10,10, 5, 9, 9, 7,10,10, 8,10,10, 4,10,10, 9,12,
+ 12, 9,11,11, 7,12,11,10,11,13,10,13,13, 7,12,12,
+ 10,13,12,10,13,13, 4,10,10, 9,12,12, 9,12,12, 7,
+ 12,12,10,13,13,10,12,13, 7,11,12,10,13,13,10,13,
+ 11,
+};
+
+static const static_codebook _8u1__p7_0 = {
+ 4, 81,
+ (char *)_vq_lengthlist__8u1__p7_0,
+ 1, -529137664, 1618345984, 2, 0,
+ (long *)_vq_quantlist__8u1__p7_0,
+ 0
+};
+
+static const long _vq_quantlist__8u1__p7_1[] = {
+ 5,
+ 4,
+ 6,
+ 3,
+ 7,
+ 2,
+ 8,
+ 1,
+ 9,
+ 0,
+ 10,
+};
+
+static const char _vq_lengthlist__8u1__p7_1[] = {
+ 2, 4, 4, 6, 6, 7, 7, 8, 8, 8, 8, 4, 5, 5, 7, 7,
+ 8, 8, 9, 9, 9, 9, 4, 5, 5, 7, 7, 8, 8, 9, 9, 9,
+ 9, 6, 7, 7, 8, 8, 8, 8, 9, 9, 9, 9, 6, 7, 7, 8,
+ 8, 8, 8, 9, 9, 9, 9, 8, 8, 8, 8, 8, 9, 9, 9, 9,
+ 9, 9, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 8, 9, 9,
+ 9, 9, 9, 9,10,10,10,10, 8, 9, 9, 9, 9, 9, 9,10,
+ 10,10,10, 8, 9, 9, 9, 9, 9, 9,10,10,10,10, 8, 9,
+ 9, 9, 9, 9, 9,10,10,10,10,
+};
+
+static const static_codebook _8u1__p7_1 = {
+ 2, 121,
+ (char *)_vq_lengthlist__8u1__p7_1,
+ 1, -531365888, 1611661312, 4, 0,
+ (long *)_vq_quantlist__8u1__p7_1,
+ 0
+};
+
+static const long _vq_quantlist__8u1__p8_0[] = {
+ 5,
+ 4,
+ 6,
+ 3,
+ 7,
+ 2,
+ 8,
+ 1,
+ 9,
+ 0,
+ 10,
+};
+
+static const char _vq_lengthlist__8u1__p8_0[] = {
+ 1, 4, 4, 6, 6, 8, 8,10,10,11,11, 4, 6, 6, 7, 7,
+ 9, 9,11,11,13,12, 4, 6, 6, 7, 7, 9, 9,11,11,12,
+ 12, 6, 7, 7, 9, 9,11,11,12,12,13,13, 6, 7, 7, 9,
+ 9,11,11,12,12,13,13, 8, 9, 9,11,11,12,12,13,13,
+ 14,14, 8, 9, 9,11,11,12,12,13,13,14,14, 9,11,11,
+ 12,12,13,13,14,14,15,15, 9,11,11,12,12,13,13,14,
+ 14,15,14,11,12,12,13,13,14,14,15,15,16,16,11,12,
+ 12,13,13,14,14,15,15,15,15,
+};
+
+static const static_codebook _8u1__p8_0 = {
+ 2, 121,
+ (char *)_vq_lengthlist__8u1__p8_0,
+ 1, -524582912, 1618345984, 4, 0,
+ (long *)_vq_quantlist__8u1__p8_0,
+ 0
+};
+
+static const long _vq_quantlist__8u1__p8_1[] = {
+ 5,
+ 4,
+ 6,
+ 3,
+ 7,
+ 2,
+ 8,
+ 1,
+ 9,
+ 0,
+ 10,
+};
+
+static const char _vq_lengthlist__8u1__p8_1[] = {
+ 2, 5, 5, 6, 6, 7, 7, 7, 7, 8, 8, 5, 6, 6, 7, 7,
+ 7, 7, 8, 8, 8, 8, 5, 6, 6, 7, 7, 7, 7, 8, 8, 8,
+ 8, 6, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 6, 7, 7, 7,
+ 7, 8, 8, 8, 8, 8, 8, 7, 7, 7, 8, 8, 8, 8, 8, 8,
+ 8, 8, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8,
+ 8, 8, 8, 8, 9, 8, 9, 9, 7, 8, 8, 8, 8, 8, 8, 9,
+ 8, 9, 9, 8, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9, 8, 8,
+ 8, 8, 8, 8, 8, 9, 9, 9, 9,
+};
+
+static const static_codebook _8u1__p8_1 = {
+ 2, 121,
+ (char *)_vq_lengthlist__8u1__p8_1,
+ 1, -531365888, 1611661312, 4, 0,
+ (long *)_vq_quantlist__8u1__p8_1,
+ 0
+};
+
+static const long _vq_quantlist__8u1__p9_0[] = {
+ 7,
+ 6,
+ 8,
+ 5,
+ 9,
+ 4,
+ 10,
+ 3,
+ 11,
+ 2,
+ 12,
+ 1,
+ 13,
+ 0,
+ 14,
+};
+
+static const char _vq_lengthlist__8u1__p9_0[] = {
+ 1, 4, 4,11,11,11,11,11,11,11,11,11,11,11,11, 3,
+ 11, 8,11,11,11,11,11,11,11,11,11,11,11,11, 3, 9,
+ 9,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
+ 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
+ 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
+ 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
+ 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
+ 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
+ 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
+ 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
+ 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
+ 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
+ 11,11,11,11,11,11,11,11,11,11,10,10,10,10,10,10,
+ 10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,
+ 10,
+};
+
+static const static_codebook _8u1__p9_0 = {
+ 2, 225,
+ (char *)_vq_lengthlist__8u1__p9_0,
+ 1, -514071552, 1627381760, 4, 0,
+ (long *)_vq_quantlist__8u1__p9_0,
+ 0
+};
+
+static const long _vq_quantlist__8u1__p9_1[] = {
+ 7,
+ 6,
+ 8,
+ 5,
+ 9,
+ 4,
+ 10,
+ 3,
+ 11,
+ 2,
+ 12,
+ 1,
+ 13,
+ 0,
+ 14,
+};
+
+static const char _vq_lengthlist__8u1__p9_1[] = {
+ 1, 4, 4, 7, 7, 9, 9, 7, 7, 8, 8,10,10,11,11, 4,
+ 7, 7, 9, 9,10,10, 8, 8,10,10,10,11,10,11, 4, 7,
+ 7, 9, 9,10,10, 8, 8,10, 9,11,11,11,11, 7, 9, 9,
+ 12,12,11,12,10,10,11,10,12,11,11,11, 7, 9, 9,11,
+ 11,13,12, 9, 9,11,10,11,11,12,11, 9,10,10,12,12,
+ 14,14,10,10,11,12,12,11,11,11, 9,10,11,11,13,14,
+ 13,10,11,11,11,12,11,12,12, 7, 8, 8,10, 9,11,10,
+ 11,12,12,11,12,14,12,13, 7, 8, 8, 9,10,10,11,12,
+ 12,12,11,12,12,12,13, 9, 9, 9,11,11,13,12,12,12,
+ 12,11,12,12,13,12, 8,10,10,11,10,11,12,12,12,12,
+ 12,12,14,12,12, 9,11,11,11,12,12,12,12,13,13,12,
+ 12,13,13,12,10,11,11,12,11,12,12,12,11,12,13,12,
+ 12,12,13,11,11,12,12,12,13,12,12,11,12,13,13,12,
+ 12,13,12,11,12,12,13,13,12,13,12,13,13,13,13,14,
+ 13,
+};
+
+static const static_codebook _8u1__p9_1 = {
+ 2, 225,
+ (char *)_vq_lengthlist__8u1__p9_1,
+ 1, -522338304, 1620115456, 4, 0,
+ (long *)_vq_quantlist__8u1__p9_1,
+ 0
+};
+
+static const long _vq_quantlist__8u1__p9_2[] = {
+ 8,
+ 7,
+ 9,
+ 6,
+ 10,
+ 5,
+ 11,
+ 4,
+ 12,
+ 3,
+ 13,
+ 2,
+ 14,
+ 1,
+ 15,
+ 0,
+ 16,
+};
+
+static const char _vq_lengthlist__8u1__p9_2[] = {
+ 2, 5, 4, 6, 6, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9,
+ 9, 5, 6, 6, 7, 7, 8, 8, 9, 8, 9, 9, 9, 9, 9, 9,
+ 9, 9, 5, 6, 6, 7, 7, 8, 8, 8, 9, 9, 9, 9, 9, 9,
+ 9, 9, 9, 7, 7, 7, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9,
+ 9,10,10, 9, 7, 7, 7, 8, 8, 9, 9, 9, 9, 9, 9, 9,
+ 9, 9, 9,10,10, 8, 8, 8, 9, 9, 9, 9,10,10,10, 9,
+ 10,10,10,10,10,10, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9,
+ 10,10,10,10,10,10,10, 9, 9, 9, 9, 9, 9, 9, 9,10,
+ 10,10,10,10,10,10,10,10, 9, 9, 9, 9, 9,10,10,10,
+ 10,10,10,10,10,10,10,10,10, 9, 9, 9, 9, 9, 9,10,
+ 10,10,10,10,10,10,10,10,10,10, 9, 9, 9, 9, 9,10,
+ 10,10,10,10,10,10,10,10,10,10,10, 9, 9, 9, 9,10,
+ 10,10,10,10,10,10,10,10,10,10,10,10, 9, 9, 9, 9,
+ 9,10,10,10,10,10,10,10,10,10,10,10,10, 9, 9, 9,
+ 10,10,10,10,10,10,10,10,10,10,10,10,10,10, 9,10,
+ 9, 9, 9,10,10,10,10,10,10,10,10,10,10,10,10, 9,
+ 10, 9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,
+ 9, 9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,
+ 10,
+};
+
+static const static_codebook _8u1__p9_2 = {
+ 2, 289,
+ (char *)_vq_lengthlist__8u1__p9_2,
+ 1, -529530880, 1611661312, 5, 0,
+ (long *)_vq_quantlist__8u1__p9_2,
+ 0
+};
+
+static const char _huff_lengthlist__8u1__single[] = {
+ 4, 7,13, 9,15, 9,16, 8,10,13, 7, 5, 8, 6, 9, 7,
+ 10, 7,10,11,11, 6, 7, 8, 8, 9, 9, 9,12,16, 8, 5,
+ 8, 6, 8, 6, 9, 7,10,12,11, 7, 7, 7, 6, 7, 7, 7,
+ 11,15, 7, 5, 8, 6, 7, 5, 7, 6, 9,13,13, 9, 9, 8,
+ 6, 6, 5, 5, 9,14, 8, 6, 8, 6, 6, 4, 5, 3, 5,13,
+ 9, 9,11, 8,10, 7, 8, 4, 5,12,11,16,17,15,17,12,
+ 13, 8, 8,15,
+};
+
+static const static_codebook _huff_book__8u1__single = {
+ 2, 100,
+ (char *)_huff_lengthlist__8u1__single,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
+static const char _huff_lengthlist__44u0__long[] = {
+ 5, 8,13,10,17,11,11,15, 7, 2, 4, 5, 8, 7, 9,16,
+ 13, 4, 3, 5, 6, 8,11,20,10, 4, 5, 5, 7, 6, 8,18,
+ 15, 7, 6, 7, 8,10,14,20,10, 6, 7, 6, 9, 7, 8,17,
+ 9, 8,10, 8,10, 5, 4,11,12,17,19,14,16,10, 7,12,
+};
+
+static const static_codebook _huff_book__44u0__long = {
+ 2, 64,
+ (char *)_huff_lengthlist__44u0__long,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
+static const long _vq_quantlist__44u0__p1_0[] = {
+ 1,
+ 0,
+ 2,
+};
+
+static const char _vq_lengthlist__44u0__p1_0[] = {
+ 1, 4, 4, 5, 8, 7, 5, 7, 8, 5, 8, 8, 8,11,11, 8,
+ 10,10, 5, 8, 8, 8,11,10, 8,11,11, 4, 8, 8, 8,11,
+ 11, 8,11,11, 8,12,11,11,13,13,11,13,14, 7,11,11,
+ 10,13,12,11,13,14, 4, 8, 8, 8,11,11, 8,11,12, 8,
+ 11,11,11,13,13,10,12,13, 8,11,11,11,14,13,11,14,
+ 13,
+};
+
+static const static_codebook _44u0__p1_0 = {
+ 4, 81,
+ (char *)_vq_lengthlist__44u0__p1_0,
+ 1, -535822336, 1611661312, 2, 0,
+ (long *)_vq_quantlist__44u0__p1_0,
+ 0
+};
+
+static const long _vq_quantlist__44u0__p2_0[] = {
+ 1,
+ 0,
+ 2,
+};
+
+static const char _vq_lengthlist__44u0__p2_0[] = {
+ 2, 4, 4, 5, 6, 6, 5, 6, 6, 5, 7, 7, 7, 8, 8, 6,
+ 8, 8, 5, 7, 7, 6, 8, 8, 7, 8, 8, 4, 7, 7, 7, 8,
+ 8, 7, 8, 8, 7, 8, 8, 8, 9,10, 8,10,10, 6, 8, 8,
+ 8,10, 8, 8,10,10, 5, 7, 7, 7, 8, 8, 7, 8, 8, 6,
+ 8, 8, 8,10,10, 8, 8,10, 6, 8, 8, 8,10,10, 8,10,
+ 9,
+};
+
+static const static_codebook _44u0__p2_0 = {
+ 4, 81,
+ (char *)_vq_lengthlist__44u0__p2_0,
+ 1, -535822336, 1611661312, 2, 0,
+ (long *)_vq_quantlist__44u0__p2_0,
+ 0
+};
+
+static const long _vq_quantlist__44u0__p3_0[] = {
+ 2,
+ 1,
+ 3,
+ 0,
+ 4,
+};
+
+static const char _vq_lengthlist__44u0__p3_0[] = {
+ 1, 5, 5, 8, 8, 5, 8, 7, 9, 9, 5, 7, 8, 9, 9, 9,
+ 10, 9,12,12, 9, 9,10,12,12, 6, 8, 8,11,10, 8,10,
+ 10,11,11, 8, 9,10,11,11,10,11,11,14,13,10,11,11,
+ 13,13, 5, 8, 8,10,10, 8,10,10,11,11, 8,10,10,11,
+ 11,10,11,11,13,13,10,11,11,13,13, 9,11,11,15,14,
+ 10,12,12,15,14,10,12,11,15,14,13,14,14,16,16,12,
+ 14,13,17,15, 9,11,11,14,15,10,11,12,14,16,10,11,
+ 12,14,16,12,13,14,16,16,13,13,15,15,18, 5, 8, 8,
+ 11,11, 8,10,10,12,12, 8,10,10,12,13,11,12,12,14,
+ 14,11,12,12,15,15, 8,10,10,13,13,10,12,12,13,13,
+ 10,12,12,14,14,12,13,13,15,15,12,13,13,16,16, 7,
+ 10,10,12,12,10,12,11,13,13,10,12,12,13,14,12,13,
+ 12,15,14,12,13,13,16,16,10,12,12,17,16,12,13,13,
+ 16,15,11,13,13,17,17,15,15,15,16,17,14,15,15,19,
+ 19,10,12,12,15,16,11,13,12,15,18,11,13,13,16,16,
+ 14,15,15,17,17,14,15,15,17,19, 5, 8, 8,11,11, 8,
+ 10,10,12,12, 8,10,10,12,12,11,12,12,16,15,11,12,
+ 12,14,15, 7,10,10,13,13,10,12,12,14,13,10,11,12,
+ 13,13,12,13,13,16,16,12,12,13,15,15, 8,10,10,13,
+ 13,10,12,12,14,14,10,12,12,13,13,12,13,13,16,16,
+ 12,13,13,15,15,10,12,12,16,15,11,13,13,17,16,11,
+ 12,13,16,15,13,15,15,19,17,14,15,14,17,16,10,12,
+ 12,16,16,11,13,13,16,17,12,13,13,15,17,14,15,15,
+ 17,19,14,15,15,17,17, 8,11,11,16,16,10,13,12,17,
+ 17,10,12,13,16,16,15,17,16,20,19,14,15,17,18,19,
+ 9,12,12,16,17,11,13,14,17,18,11,13,13,19,18,16,
+ 17,18,19,19,15,16,16,19,19, 9,12,12,16,17,11,14,
+ 13,18,17,11,13,13,17,17,16,17,16,20,19,14,16,16,
+ 18,18,12,15,15,19,17,14,15,16, 0,20,13,15,16,20,
+ 17,18,16,20, 0, 0,15,16,19,20, 0,12,15,14,18,19,
+ 13,16,15,20,19,13,16,15,20,18,17,18,17, 0,20,16,
+ 17,16, 0, 0, 8,11,11,16,15,10,12,12,17,17,10,13,
+ 13,17,16,14,16,15,18,20,15,16,16,19,19, 9,12,12,
+ 16,16,11,13,13,17,16,11,13,14,17,18,15,15,16,20,
+ 20,16,16,17,19,19, 9,13,12,16,17,11,14,13,17,17,
+ 11,14,14,18,17,14,16,15,18,19,16,17,18,18,19,12,
+ 14,15,19,18,13,15,16,18, 0,13,14,15, 0, 0,16,16,
+ 17,20, 0,17,17,20,20, 0,12,15,15,19,20,13,15,15,
+ 0, 0,14,16,15, 0, 0,15,18,16, 0, 0,17,18,16, 0,
+ 19,
+};
+
+static const static_codebook _44u0__p3_0 = {
+ 4, 625,
+ (char *)_vq_lengthlist__44u0__p3_0,
+ 1, -533725184, 1611661312, 3, 0,
+ (long *)_vq_quantlist__44u0__p3_0,
+ 0
+};
+
+static const long _vq_quantlist__44u0__p4_0[] = {
+ 2,
+ 1,
+ 3,
+ 0,
+ 4,
+};
+
+static const char _vq_lengthlist__44u0__p4_0[] = {
+ 4, 5, 5, 9, 9, 5, 6, 6, 9, 9, 5, 6, 6, 9, 9, 9,
+ 10, 9,12,12, 9, 9,10,12,12, 5, 7, 7,10,10, 7, 7,
+ 8,10,10, 6, 7, 8,10,10,10,10,10,11,13,10, 9,10,
+ 12,13, 5, 7, 7,10,10, 6, 8, 7,10,10, 7, 8, 7,10,
+ 10, 9,10,10,12,12,10,10,10,13,11, 9,10,10,13,13,
+ 10,11,10,13,13,10,10,10,13,13,12,12,13,14,14,12,
+ 12,13,14,14, 9,10,10,13,13,10,10,10,13,13,10,10,
+ 10,13,13,12,13,12,15,14,12,13,12,15,15, 5, 7, 6,
+ 10,10, 7, 8, 8,10,10, 7, 8, 8,10,10,10,11,10,13,
+ 13,10,10,10,12,12, 7, 8, 8,11,10, 8, 8, 9,10,11,
+ 8, 9, 9,11,11,11,10,11,11,14,11,11,11,13,13, 6,
+ 8, 8,10,10, 7, 9, 8,11,10, 8, 9, 9,11,11,10,11,
+ 10,14,11,10,11,11,13,13,10,11,11,14,13,10,10,11,
+ 14,13,10,11,11,14,14,12,11,13,12,16,13,14,14,15,
+ 15,10,10,11,13,14,10,11,10,14,13,10,11,11,14,14,
+ 12,13,12,15,13,13,13,14,15,16, 5, 7, 7,10,10, 7,
+ 8, 8,10,10, 7, 8, 8,10,10,10,10,10,13,13,10,10,
+ 11,12,13, 6, 8, 8,11,10, 8, 9, 9,11,11, 7, 8, 9,
+ 10,11,10,11,11,13,13,10,10,11,11,13, 6, 8, 8,10,
+ 11, 8, 9, 9,11,11, 8, 9, 8,12,10,10,11,11,13,13,
+ 10,11,10,14,11,10,10,10,14,13,10,11,11,14,13,10,
+ 10,11,13,13,12,14,14,16,16,12,12,13,13,15,10,11,
+ 11,13,14,10,11,11,14,15,10,11,10,13,13,13,14,13,
+ 16,16,12,13,11,15,12, 9,10,10,13,13,10,11,11,14,
+ 13,10,10,11,13,14,13,14,13,16,16,13,13,13,15,16,
+ 9,10,10,13,13,10,10,11,13,14,10,11,11,15,13,13,
+ 13,14,14,18,13,13,14,16,15, 9,10,10,13,14,10,11,
+ 10,14,13,10,11,11,13,14,13,14,13,16,15,13,13,14,
+ 15,16,12,13,12,16,14,11,11,13,15,15,13,14,13,16,
+ 15,15,12,16,12,17,14,15,15,17,17,12,13,13,14,16,
+ 11,13,11,16,15,12,13,14,15,16,14,15,13, 0,14,14,
+ 16,16, 0, 0, 9,10,10,13,13,10,11,10,14,14,10,11,
+ 11,13,13,12,13,13,14,16,13,14,14,16,16, 9,10,10,
+ 14,14,11,11,11,14,13,10,10,11,14,14,13,13,13,16,
+ 16,13,13,14,14,17, 9,10,10,13,14,10,11,11,13,15,
+ 10,11,10,14,14,13,13,13,14,17,13,14,13,17,14,12,
+ 13,13,16,14,13,14,13,16,15,12,12,13,15,16,15,15,
+ 16,18,16,15,13,15,14, 0,12,12,13,14,16,13,13,14,
+ 15,16,11,12,11,16,14,15,16,16,17,17,14,15,12,17,
+ 12,
+};
+
+static const static_codebook _44u0__p4_0 = {
+ 4, 625,
+ (char *)_vq_lengthlist__44u0__p4_0,
+ 1, -533725184, 1611661312, 3, 0,
+ (long *)_vq_quantlist__44u0__p4_0,
+ 0
+};
+
+static const long _vq_quantlist__44u0__p5_0[] = {
+ 4,
+ 3,
+ 5,
+ 2,
+ 6,
+ 1,
+ 7,
+ 0,
+ 8,
+};
+
+static const char _vq_lengthlist__44u0__p5_0[] = {
+ 1, 4, 4, 7, 7, 7, 7, 9, 9, 4, 6, 6, 8, 8, 8, 8,
+ 9, 9, 4, 6, 6, 8, 8, 8, 8, 9, 9, 7, 8, 8, 9, 9,
+ 9, 9,11,10, 7, 8, 8, 9, 9, 9, 9,10,10, 7, 8, 8,
+ 9, 9,10,10,11,11, 7, 8, 8, 9, 9,10,10,11,11, 9,
+ 9, 9,10,10,11,11,12,12, 9, 9, 9,10,11,11,11,12,
+ 12,
+};
+
+static const static_codebook _44u0__p5_0 = {
+ 2, 81,
+ (char *)_vq_lengthlist__44u0__p5_0,
+ 1, -531628032, 1611661312, 4, 0,
+ (long *)_vq_quantlist__44u0__p5_0,
+ 0
+};
+
+static const long _vq_quantlist__44u0__p6_0[] = {
+ 6,
+ 5,
+ 7,
+ 4,
+ 8,
+ 3,
+ 9,
+ 2,
+ 10,
+ 1,
+ 11,
+ 0,
+ 12,
+};
+
+static const char _vq_lengthlist__44u0__p6_0[] = {
+ 1, 4, 4, 6, 6, 8, 8,10, 9,11,10,14,13, 4, 6, 5,
+ 8, 8, 9, 9,11,10,11,11,14,14, 4, 5, 6, 8, 8, 9,
+ 9,10,10,11,11,14,14, 6, 8, 8, 9, 9,10,10,11,11,
+ 12,12,16,15, 7, 8, 8, 9, 9,10,10,11,11,12,12,15,
+ 15, 9,10,10,10,10,11,11,12,12,12,12,15,15, 9,10,
+ 9,10,11,11,11,12,12,12,13,15,15,10,10,11,11,11,
+ 12,12,13,12,13,13,16,15,10,11,11,11,11,12,12,13,
+ 12,13,13,16,17,11,11,12,12,12,13,13,13,14,14,15,
+ 17,17,11,11,12,12,12,13,13,13,14,14,14,16,18,14,
+ 15,15,15,15,16,16,16,16,17,18, 0, 0,14,15,15,15,
+ 15,17,16,17,18,17,17,18, 0,
+};
+
+static const static_codebook _44u0__p6_0 = {
+ 2, 169,
+ (char *)_vq_lengthlist__44u0__p6_0,
+ 1, -526516224, 1616117760, 4, 0,
+ (long *)_vq_quantlist__44u0__p6_0,
+ 0
+};
+
+static const long _vq_quantlist__44u0__p6_1[] = {
+ 2,
+ 1,
+ 3,
+ 0,
+ 4,
+};
+
+static const char _vq_lengthlist__44u0__p6_1[] = {
+ 2, 4, 4, 5, 5, 4, 5, 5, 5, 5, 4, 5, 5, 5, 5, 5,
+ 6, 6, 6, 6, 5, 6, 6, 6, 6,
+};
+
+static const static_codebook _44u0__p6_1 = {
+ 2, 25,
+ (char *)_vq_lengthlist__44u0__p6_1,
+ 1, -533725184, 1611661312, 3, 0,
+ (long *)_vq_quantlist__44u0__p6_1,
+ 0
+};
+
+static const long _vq_quantlist__44u0__p7_0[] = {
+ 2,
+ 1,
+ 3,
+ 0,
+ 4,
+};
+
+static const char _vq_lengthlist__44u0__p7_0[] = {
+ 1, 4, 4,11,11, 9,11,11,11,11,11,11,11,11,11,11,
+ 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
+ 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
+ 11,11, 9,11,11,11,11,11,11,11,11,11,11,11,11,11,
+ 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
+ 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
+ 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
+ 11,11,11,11,11,11,11,11,11,11,11,11,11,10,11,11,
+ 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
+ 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
+ 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
+ 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
+ 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
+ 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
+ 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
+ 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
+ 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
+ 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
+ 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
+ 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
+ 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
+ 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
+ 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
+ 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
+ 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
+ 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
+ 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
+ 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
+ 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
+ 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
+ 11,11,11,11,11,11,10,10,10,10,10,10,10,10,10,10,
+ 10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,
+ 10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,
+ 10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,
+ 10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,
+ 10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,
+ 10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,
+ 10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,
+ 10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,
+ 10,
+};
+
+static const static_codebook _44u0__p7_0 = {
+ 4, 625,
+ (char *)_vq_lengthlist__44u0__p7_0,
+ 1, -518709248, 1626677248, 3, 0,
+ (long *)_vq_quantlist__44u0__p7_0,
+ 0
+};
+
+static const long _vq_quantlist__44u0__p7_1[] = {
+ 6,
+ 5,
+ 7,
+ 4,
+ 8,
+ 3,
+ 9,
+ 2,
+ 10,
+ 1,
+ 11,
+ 0,
+ 12,
+};
+
+static const char _vq_lengthlist__44u0__p7_1[] = {
+ 1, 4, 4, 6, 6, 6, 6, 7, 7, 8, 8, 9, 9, 5, 7, 7,
+ 8, 7, 7, 7, 9, 8,10, 9,10,11, 5, 7, 7, 8, 8, 7,
+ 7, 8, 9,10,10,11,11, 6, 8, 8, 9, 9, 9, 9,11,10,
+ 12,12,15,12, 6, 8, 8, 9, 9, 9, 9,11,11,12,11,14,
+ 12, 7, 8, 8,10,10,12,12,13,13,13,15,13,13, 7, 8,
+ 8,10,10,11,11,13,12,14,15,15,15, 9,10,10,11,12,
+ 13,13,14,15,14,15,14,15, 8,10,10,12,12,14,14,15,
+ 14,14,15,15,14,10,12,12,14,14,15,14,15,15,15,14,
+ 15,15,10,12,12,13,14,15,14,15,15,14,15,15,15,12,
+ 15,13,15,14,15,15,15,15,15,15,15,15,13,13,15,15,
+ 15,15,15,15,15,15,15,15,15,
+};
+
+static const static_codebook _44u0__p7_1 = {
+ 2, 169,
+ (char *)_vq_lengthlist__44u0__p7_1,
+ 1, -523010048, 1618608128, 4, 0,
+ (long *)_vq_quantlist__44u0__p7_1,
+ 0
+};
+
+static const long _vq_quantlist__44u0__p7_2[] = {
+ 6,
+ 5,
+ 7,
+ 4,
+ 8,
+ 3,
+ 9,
+ 2,
+ 10,
+ 1,
+ 11,
+ 0,
+ 12,
+};
+
+static const char _vq_lengthlist__44u0__p7_2[] = {
+ 2, 5, 4, 6, 6, 7, 7, 8, 8, 8, 8, 9, 8, 5, 5, 6,
+ 7, 7, 8, 8, 8, 8, 9, 9, 9, 9, 5, 6, 5, 7, 7, 8,
+ 8, 8, 8, 9, 9, 9, 9, 6, 7, 7, 8, 8, 8, 8, 9, 8,
+ 9, 9, 9, 9, 6, 7, 7, 8, 7, 8, 8, 9, 9, 9, 9, 9,
+ 9, 7, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9, 7, 8,
+ 8, 9, 8, 9, 8, 9, 9, 9, 9, 9, 9, 8, 9, 8, 9, 9,
+ 9, 9, 9, 9, 9, 9,10,10, 8, 8, 9, 9, 9, 9, 9, 9,
+ 9, 9,10, 9,10, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9,
+ 9, 9, 8, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9,
+ 9, 9, 9, 9, 9, 9, 9, 9,10,10,10, 9, 9, 9, 9, 9,
+ 9, 9, 9,10, 9, 9,10,10, 9,
+};
+
+static const static_codebook _44u0__p7_2 = {
+ 2, 169,
+ (char *)_vq_lengthlist__44u0__p7_2,
+ 1, -531103744, 1611661312, 4, 0,
+ (long *)_vq_quantlist__44u0__p7_2,
+ 0
+};
+
+static const char _huff_lengthlist__44u0__short[] = {
+ 12,13,14,13,17,12,15,17, 5, 5, 6,10,10,11,15,16,
+ 4, 3, 3, 7, 5, 7,10,16, 7, 7, 7,10, 9,11,12,16,
+ 6, 5, 5, 9, 5, 6,10,16, 8, 7, 7, 9, 6, 7, 9,16,
+ 11, 7, 3, 6, 4, 5, 8,16,12, 9, 4, 8, 5, 7, 9,16,
+};
+
+static const static_codebook _huff_book__44u0__short = {
+ 2, 64,
+ (char *)_huff_lengthlist__44u0__short,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
+static const char _huff_lengthlist__44u1__long[] = {
+ 5, 8,13,10,17,11,11,15, 7, 2, 4, 5, 8, 7, 9,16,
+ 13, 4, 3, 5, 6, 8,11,20,10, 4, 5, 5, 7, 6, 8,18,
+ 15, 7, 6, 7, 8,10,14,20,10, 6, 7, 6, 9, 7, 8,17,
+ 9, 8,10, 8,10, 5, 4,11,12,17,19,14,16,10, 7,12,
+};
+
+static const static_codebook _huff_book__44u1__long = {
+ 2, 64,
+ (char *)_huff_lengthlist__44u1__long,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
+static const long _vq_quantlist__44u1__p1_0[] = {
+ 1,
+ 0,
+ 2,
+};
+
+static const char _vq_lengthlist__44u1__p1_0[] = {
+ 1, 4, 4, 5, 8, 7, 5, 7, 8, 5, 8, 8, 8,11,11, 8,
+ 10,10, 5, 8, 8, 8,11,10, 8,11,11, 4, 8, 8, 8,11,
+ 11, 8,11,11, 8,12,11,11,13,13,11,13,14, 7,11,11,
+ 10,13,12,11,13,14, 4, 8, 8, 8,11,11, 8,11,12, 8,
+ 11,11,11,13,13,10,12,13, 8,11,11,11,14,13,11,14,
+ 13,
+};
+
+static const static_codebook _44u1__p1_0 = {
+ 4, 81,
+ (char *)_vq_lengthlist__44u1__p1_0,
+ 1, -535822336, 1611661312, 2, 0,
+ (long *)_vq_quantlist__44u1__p1_0,
+ 0
+};
+
+static const long _vq_quantlist__44u1__p2_0[] = {
+ 1,
+ 0,
+ 2,
+};
+
+static const char _vq_lengthlist__44u1__p2_0[] = {
+ 2, 4, 4, 5, 6, 6, 5, 6, 6, 5, 7, 7, 7, 8, 8, 6,
+ 8, 8, 5, 7, 7, 6, 8, 8, 7, 8, 8, 4, 7, 7, 7, 8,
+ 8, 7, 8, 8, 7, 8, 8, 8, 9,10, 8,10,10, 6, 8, 8,
+ 8,10, 8, 8,10,10, 5, 7, 7, 7, 8, 8, 7, 8, 8, 6,
+ 8, 8, 8,10,10, 8, 8,10, 6, 8, 8, 8,10,10, 8,10,
+ 9,
+};
+
+static const static_codebook _44u1__p2_0 = {
+ 4, 81,
+ (char *)_vq_lengthlist__44u1__p2_0,
+ 1, -535822336, 1611661312, 2, 0,
+ (long *)_vq_quantlist__44u1__p2_0,
+ 0
+};
+
+static const long _vq_quantlist__44u1__p3_0[] = {
+ 2,
+ 1,
+ 3,
+ 0,
+ 4,
+};
+
+static const char _vq_lengthlist__44u1__p3_0[] = {
+ 1, 5, 5, 8, 8, 5, 8, 7, 9, 9, 5, 7, 8, 9, 9, 9,
+ 10, 9,12,12, 9, 9,10,12,12, 6, 8, 8,11,10, 8,10,
+ 10,11,11, 8, 9,10,11,11,10,11,11,14,13,10,11,11,
+ 13,13, 5, 8, 8,10,10, 8,10,10,11,11, 8,10,10,11,
+ 11,10,11,11,13,13,10,11,11,13,13, 9,11,11,15,14,
+ 10,12,12,15,14,10,12,11,15,14,13,14,14,16,16,12,
+ 14,13,17,15, 9,11,11,14,15,10,11,12,14,16,10,11,
+ 12,14,16,12,13,14,16,16,13,13,15,15,18, 5, 8, 8,
+ 11,11, 8,10,10,12,12, 8,10,10,12,13,11,12,12,14,
+ 14,11,12,12,15,15, 8,10,10,13,13,10,12,12,13,13,
+ 10,12,12,14,14,12,13,13,15,15,12,13,13,16,16, 7,
+ 10,10,12,12,10,12,11,13,13,10,12,12,13,14,12,13,
+ 12,15,14,12,13,13,16,16,10,12,12,17,16,12,13,13,
+ 16,15,11,13,13,17,17,15,15,15,16,17,14,15,15,19,
+ 19,10,12,12,15,16,11,13,12,15,18,11,13,13,16,16,
+ 14,15,15,17,17,14,15,15,17,19, 5, 8, 8,11,11, 8,
+ 10,10,12,12, 8,10,10,12,12,11,12,12,16,15,11,12,
+ 12,14,15, 7,10,10,13,13,10,12,12,14,13,10,11,12,
+ 13,13,12,13,13,16,16,12,12,13,15,15, 8,10,10,13,
+ 13,10,12,12,14,14,10,12,12,13,13,12,13,13,16,16,
+ 12,13,13,15,15,10,12,12,16,15,11,13,13,17,16,11,
+ 12,13,16,15,13,15,15,19,17,14,15,14,17,16,10,12,
+ 12,16,16,11,13,13,16,17,12,13,13,15,17,14,15,15,
+ 17,19,14,15,15,17,17, 8,11,11,16,16,10,13,12,17,
+ 17,10,12,13,16,16,15,17,16,20,19,14,15,17,18,19,
+ 9,12,12,16,17,11,13,14,17,18,11,13,13,19,18,16,
+ 17,18,19,19,15,16,16,19,19, 9,12,12,16,17,11,14,
+ 13,18,17,11,13,13,17,17,16,17,16,20,19,14,16,16,
+ 18,18,12,15,15,19,17,14,15,16, 0,20,13,15,16,20,
+ 17,18,16,20, 0, 0,15,16,19,20, 0,12,15,14,18,19,
+ 13,16,15,20,19,13,16,15,20,18,17,18,17, 0,20,16,
+ 17,16, 0, 0, 8,11,11,16,15,10,12,12,17,17,10,13,
+ 13,17,16,14,16,15,18,20,15,16,16,19,19, 9,12,12,
+ 16,16,11,13,13,17,16,11,13,14,17,18,15,15,16,20,
+ 20,16,16,17,19,19, 9,13,12,16,17,11,14,13,17,17,
+ 11,14,14,18,17,14,16,15,18,19,16,17,18,18,19,12,
+ 14,15,19,18,13,15,16,18, 0,13,14,15, 0, 0,16,16,
+ 17,20, 0,17,17,20,20, 0,12,15,15,19,20,13,15,15,
+ 0, 0,14,16,15, 0, 0,15,18,16, 0, 0,17,18,16, 0,
+ 19,
+};
+
+static const static_codebook _44u1__p3_0 = {
+ 4, 625,
+ (char *)_vq_lengthlist__44u1__p3_0,
+ 1, -533725184, 1611661312, 3, 0,
+ (long *)_vq_quantlist__44u1__p3_0,
+ 0
+};
+
+static const long _vq_quantlist__44u1__p4_0[] = {
+ 2,
+ 1,
+ 3,
+ 0,
+ 4,
+};
+
+static const char _vq_lengthlist__44u1__p4_0[] = {
+ 4, 5, 5, 9, 9, 5, 6, 6, 9, 9, 5, 6, 6, 9, 9, 9,
+ 10, 9,12,12, 9, 9,10,12,12, 5, 7, 7,10,10, 7, 7,
+ 8,10,10, 6, 7, 8,10,10,10,10,10,11,13,10, 9,10,
+ 12,13, 5, 7, 7,10,10, 6, 8, 7,10,10, 7, 8, 7,10,
+ 10, 9,10,10,12,12,10,10,10,13,11, 9,10,10,13,13,
+ 10,11,10,13,13,10,10,10,13,13,12,12,13,14,14,12,
+ 12,13,14,14, 9,10,10,13,13,10,10,10,13,13,10,10,
+ 10,13,13,12,13,12,15,14,12,13,12,15,15, 5, 7, 6,
+ 10,10, 7, 8, 8,10,10, 7, 8, 8,10,10,10,11,10,13,
+ 13,10,10,10,12,12, 7, 8, 8,11,10, 8, 8, 9,10,11,
+ 8, 9, 9,11,11,11,10,11,11,14,11,11,11,13,13, 6,
+ 8, 8,10,10, 7, 9, 8,11,10, 8, 9, 9,11,11,10,11,
+ 10,14,11,10,11,11,13,13,10,11,11,14,13,10,10,11,
+ 14,13,10,11,11,14,14,12,11,13,12,16,13,14,14,15,
+ 15,10,10,11,13,14,10,11,10,14,13,10,11,11,14,14,
+ 12,13,12,15,13,13,13,14,15,16, 5, 7, 7,10,10, 7,
+ 8, 8,10,10, 7, 8, 8,10,10,10,10,10,13,13,10,10,
+ 11,12,13, 6, 8, 8,11,10, 8, 9, 9,11,11, 7, 8, 9,
+ 10,11,10,11,11,13,13,10,10,11,11,13, 6, 8, 8,10,
+ 11, 8, 9, 9,11,11, 8, 9, 8,12,10,10,11,11,13,13,
+ 10,11,10,14,11,10,10,10,14,13,10,11,11,14,13,10,
+ 10,11,13,13,12,14,14,16,16,12,12,13,13,15,10,11,
+ 11,13,14,10,11,11,14,15,10,11,10,13,13,13,14,13,
+ 16,16,12,13,11,15,12, 9,10,10,13,13,10,11,11,14,
+ 13,10,10,11,13,14,13,14,13,16,16,13,13,13,15,16,
+ 9,10,10,13,13,10,10,11,13,14,10,11,11,15,13,13,
+ 13,14,14,18,13,13,14,16,15, 9,10,10,13,14,10,11,
+ 10,14,13,10,11,11,13,14,13,14,13,16,15,13,13,14,
+ 15,16,12,13,12,16,14,11,11,13,15,15,13,14,13,16,
+ 15,15,12,16,12,17,14,15,15,17,17,12,13,13,14,16,
+ 11,13,11,16,15,12,13,14,15,16,14,15,13, 0,14,14,
+ 16,16, 0, 0, 9,10,10,13,13,10,11,10,14,14,10,11,
+ 11,13,13,12,13,13,14,16,13,14,14,16,16, 9,10,10,
+ 14,14,11,11,11,14,13,10,10,11,14,14,13,13,13,16,
+ 16,13,13,14,14,17, 9,10,10,13,14,10,11,11,13,15,
+ 10,11,10,14,14,13,13,13,14,17,13,14,13,17,14,12,
+ 13,13,16,14,13,14,13,16,15,12,12,13,15,16,15,15,
+ 16,18,16,15,13,15,14, 0,12,12,13,14,16,13,13,14,
+ 15,16,11,12,11,16,14,15,16,16,17,17,14,15,12,17,
+ 12,
+};
+
+static const static_codebook _44u1__p4_0 = {
+ 4, 625,
+ (char *)_vq_lengthlist__44u1__p4_0,
+ 1, -533725184, 1611661312, 3, 0,
+ (long *)_vq_quantlist__44u1__p4_0,
+ 0
+};
+
+static const long _vq_quantlist__44u1__p5_0[] = {
+ 4,
+ 3,
+ 5,
+ 2,
+ 6,
+ 1,
+ 7,
+ 0,
+ 8,
+};
+
+static const char _vq_lengthlist__44u1__p5_0[] = {
+ 1, 4, 4, 7, 7, 7, 7, 9, 9, 4, 6, 6, 8, 8, 8, 8,
+ 9, 9, 4, 6, 6, 8, 8, 8, 8, 9, 9, 7, 8, 8, 9, 9,
+ 9, 9,11,10, 7, 8, 8, 9, 9, 9, 9,10,10, 7, 8, 8,
+ 9, 9,10,10,11,11, 7, 8, 8, 9, 9,10,10,11,11, 9,
+ 9, 9,10,10,11,11,12,12, 9, 9, 9,10,11,11,11,12,
+ 12,
+};
+
+static const static_codebook _44u1__p5_0 = {
+ 2, 81,
+ (char *)_vq_lengthlist__44u1__p5_0,
+ 1, -531628032, 1611661312, 4, 0,
+ (long *)_vq_quantlist__44u1__p5_0,
+ 0
+};
+
+static const long _vq_quantlist__44u1__p6_0[] = {
+ 6,
+ 5,
+ 7,
+ 4,
+ 8,
+ 3,
+ 9,
+ 2,
+ 10,
+ 1,
+ 11,
+ 0,
+ 12,
+};
+
+static const char _vq_lengthlist__44u1__p6_0[] = {
+ 1, 4, 4, 6, 6, 8, 8,10, 9,11,10,14,13, 4, 6, 5,
+ 8, 8, 9, 9,11,10,11,11,14,14, 4, 5, 6, 8, 8, 9,
+ 9,10,10,11,11,14,14, 6, 8, 8, 9, 9,10,10,11,11,
+ 12,12,16,15, 7, 8, 8, 9, 9,10,10,11,11,12,12,15,
+ 15, 9,10,10,10,10,11,11,12,12,12,12,15,15, 9,10,
+ 9,10,11,11,11,12,12,12,13,15,15,10,10,11,11,11,
+ 12,12,13,12,13,13,16,15,10,11,11,11,11,12,12,13,
+ 12,13,13,16,17,11,11,12,12,12,13,13,13,14,14,15,
+ 17,17,11,11,12,12,12,13,13,13,14,14,14,16,18,14,
+ 15,15,15,15,16,16,16,16,17,18, 0, 0,14,15,15,15,
+ 15,17,16,17,18,17,17,18, 0,
+};
+
+static const static_codebook _44u1__p6_0 = {
+ 2, 169,
+ (char *)_vq_lengthlist__44u1__p6_0,
+ 1, -526516224, 1616117760, 4, 0,
+ (long *)_vq_quantlist__44u1__p6_0,
+ 0
+};
+
+static const long _vq_quantlist__44u1__p6_1[] = {
+ 2,
+ 1,
+ 3,
+ 0,
+ 4,
+};
+
+static const char _vq_lengthlist__44u1__p6_1[] = {
+ 2, 4, 4, 5, 5, 4, 5, 5, 5, 5, 4, 5, 5, 5, 5, 5,
+ 6, 6, 6, 6, 5, 6, 6, 6, 6,
+};
+
+static const static_codebook _44u1__p6_1 = {
+ 2, 25,
+ (char *)_vq_lengthlist__44u1__p6_1,
+ 1, -533725184, 1611661312, 3, 0,
+ (long *)_vq_quantlist__44u1__p6_1,
+ 0
+};
+
+static const long _vq_quantlist__44u1__p7_0[] = {
+ 3,
+ 2,
+ 4,
+ 1,
+ 5,
+ 0,
+ 6,
+};
+
+static const char _vq_lengthlist__44u1__p7_0[] = {
+ 1, 3, 2, 9, 9, 7, 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,
+ 9, 9, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8,
+ 8,
+};
+
+static const static_codebook _44u1__p7_0 = {
+ 2, 49,
+ (char *)_vq_lengthlist__44u1__p7_0,
+ 1, -518017024, 1626677248, 3, 0,
+ (long *)_vq_quantlist__44u1__p7_0,
+ 0
+};
+
+static const long _vq_quantlist__44u1__p7_1[] = {
+ 6,
+ 5,
+ 7,
+ 4,
+ 8,
+ 3,
+ 9,
+ 2,
+ 10,
+ 1,
+ 11,
+ 0,
+ 12,
+};
+
+static const char _vq_lengthlist__44u1__p7_1[] = {
+ 1, 4, 4, 6, 6, 6, 6, 7, 7, 8, 8, 9, 9, 5, 7, 7,
+ 8, 7, 7, 7, 9, 8,10, 9,10,11, 5, 7, 7, 8, 8, 7,
+ 7, 8, 9,10,10,11,11, 6, 8, 8, 9, 9, 9, 9,11,10,
+ 12,12,15,12, 6, 8, 8, 9, 9, 9, 9,11,11,12,11,14,
+ 12, 7, 8, 8,10,10,12,12,13,13,13,15,13,13, 7, 8,
+ 8,10,10,11,11,13,12,14,15,15,15, 9,10,10,11,12,
+ 13,13,14,15,14,15,14,15, 8,10,10,12,12,14,14,15,
+ 14,14,15,15,14,10,12,12,14,14,15,14,15,15,15,14,
+ 15,15,10,12,12,13,14,15,14,15,15,14,15,15,15,12,
+ 15,13,15,14,15,15,15,15,15,15,15,15,13,13,15,15,
+ 15,15,15,15,15,15,15,15,15,
+};
+
+static const static_codebook _44u1__p7_1 = {
+ 2, 169,
+ (char *)_vq_lengthlist__44u1__p7_1,
+ 1, -523010048, 1618608128, 4, 0,
+ (long *)_vq_quantlist__44u1__p7_1,
+ 0
+};
+
+static const long _vq_quantlist__44u1__p7_2[] = {
+ 6,
+ 5,
+ 7,
+ 4,
+ 8,
+ 3,
+ 9,
+ 2,
+ 10,
+ 1,
+ 11,
+ 0,
+ 12,
+};
+
+static const char _vq_lengthlist__44u1__p7_2[] = {
+ 2, 5, 4, 6, 6, 7, 7, 8, 8, 8, 8, 9, 8, 5, 5, 6,
+ 7, 7, 8, 8, 8, 8, 9, 9, 9, 9, 5, 6, 5, 7, 7, 8,
+ 8, 8, 8, 9, 9, 9, 9, 6, 7, 7, 8, 8, 8, 8, 9, 8,
+ 9, 9, 9, 9, 6, 7, 7, 8, 7, 8, 8, 9, 9, 9, 9, 9,
+ 9, 7, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9, 7, 8,
+ 8, 9, 8, 9, 8, 9, 9, 9, 9, 9, 9, 8, 9, 8, 9, 9,
+ 9, 9, 9, 9, 9, 9,10,10, 8, 8, 9, 9, 9, 9, 9, 9,
+ 9, 9,10, 9,10, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9,
+ 9, 9, 8, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9,
+ 9, 9, 9, 9, 9, 9, 9, 9,10,10,10, 9, 9, 9, 9, 9,
+ 9, 9, 9,10, 9, 9,10,10, 9,
+};
+
+static const static_codebook _44u1__p7_2 = {
+ 2, 169,
+ (char *)_vq_lengthlist__44u1__p7_2,
+ 1, -531103744, 1611661312, 4, 0,
+ (long *)_vq_quantlist__44u1__p7_2,
+ 0
+};
+
+static const char _huff_lengthlist__44u1__short[] = {
+ 12,13,14,13,17,12,15,17, 5, 5, 6,10,10,11,15,16,
+ 4, 3, 3, 7, 5, 7,10,16, 7, 7, 7,10, 9,11,12,16,
+ 6, 5, 5, 9, 5, 6,10,16, 8, 7, 7, 9, 6, 7, 9,16,
+ 11, 7, 3, 6, 4, 5, 8,16,12, 9, 4, 8, 5, 7, 9,16,
+};
+
+static const static_codebook _huff_book__44u1__short = {
+ 2, 64,
+ (char *)_huff_lengthlist__44u1__short,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
+static const char _huff_lengthlist__44u2__long[] = {
+ 5, 9,14,12,15,13,10,13, 7, 4, 5, 6, 8, 7, 8,12,
+ 13, 4, 3, 5, 5, 6, 9,15,12, 6, 5, 6, 6, 6, 7,14,
+ 14, 7, 4, 6, 4, 6, 8,15,12, 6, 6, 5, 5, 5, 6,14,
+ 9, 7, 8, 6, 7, 5, 4,10,10,13,14,14,15,10, 6, 8,
+};
+
+static const static_codebook _huff_book__44u2__long = {
+ 2, 64,
+ (char *)_huff_lengthlist__44u2__long,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
+static const long _vq_quantlist__44u2__p1_0[] = {
+ 1,
+ 0,
+ 2,
+};
+
+static const char _vq_lengthlist__44u2__p1_0[] = {
+ 1, 4, 4, 5, 8, 7, 5, 7, 8, 5, 8, 8, 8,11,11, 8,
+ 10,11, 5, 8, 8, 8,11,10, 8,11,11, 4, 8, 8, 8,11,
+ 11, 8,11,11, 8,11,11,11,13,14,11,13,13, 7,11,11,
+ 10,13,12,11,14,14, 4, 8, 8, 8,11,11, 8,11,11, 8,
+ 11,11,11,14,13,10,12,13, 8,11,11,11,13,13,11,13,
+ 13,
+};
+
+static const static_codebook _44u2__p1_0 = {
+ 4, 81,
+ (char *)_vq_lengthlist__44u2__p1_0,
+ 1, -535822336, 1611661312, 2, 0,
+ (long *)_vq_quantlist__44u2__p1_0,
+ 0
+};
+
+static const long _vq_quantlist__44u2__p2_0[] = {
+ 1,
+ 0,
+ 2,
+};
+
+static const char _vq_lengthlist__44u2__p2_0[] = {
+ 2, 5, 5, 5, 6, 6, 5, 6, 6, 5, 6, 6, 7, 8, 8, 6,
+ 8, 8, 5, 6, 6, 6, 8, 7, 7, 8, 8, 5, 6, 6, 7, 8,
+ 8, 6, 8, 8, 6, 8, 8, 8, 9,10, 8,10,10, 6, 8, 8,
+ 7,10, 8, 8,10,10, 5, 6, 6, 6, 8, 8, 7, 8, 8, 6,
+ 8, 8, 8,10,10, 8, 8,10, 6, 8, 8, 8,10,10, 8,10,
+ 9,
+};
+
+static const static_codebook _44u2__p2_0 = {
+ 4, 81,
+ (char *)_vq_lengthlist__44u2__p2_0,
+ 1, -535822336, 1611661312, 2, 0,
+ (long *)_vq_quantlist__44u2__p2_0,
+ 0
+};
+
+static const long _vq_quantlist__44u2__p3_0[] = {
+ 2,
+ 1,
+ 3,
+ 0,
+ 4,
+};
+
+static const char _vq_lengthlist__44u2__p3_0[] = {
+ 2, 4, 4, 7, 8, 5, 7, 7, 9, 9, 5, 7, 7, 9, 9, 8,
+ 9, 9,12,11, 8, 9, 9,11,12, 5, 7, 7,10,10, 7, 9,
+ 9,11,11, 7, 9, 9,10,11,10,11,11,13,13, 9,10,11,
+ 12,13, 5, 7, 7,10,10, 7, 9, 9,11,10, 7, 9, 9,11,
+ 11, 9,11,10,13,13,10,11,11,13,13, 8,10,10,14,13,
+ 10,11,11,15,14, 9,11,11,15,14,13,14,13,16,14,12,
+ 13,13,15,16, 8,10,10,13,14, 9,11,11,14,15,10,11,
+ 11,14,15,12,13,13,15,15,12,13,14,15,16, 5, 7, 7,
+ 10,10, 7, 9, 9,11,11, 7, 9, 9,11,12,10,11,11,14,
+ 13,10,11,11,14,14, 7, 9, 9,12,12, 9,11,11,13,13,
+ 9,11,11,13,13,12,13,12,14,14,11,12,13,15,15, 7,
+ 9, 9,12,12, 8,11,10,13,12, 9,11,11,13,13,11,13,
+ 12,15,13,11,13,13,15,16, 9,12,11,15,15,11,12,12,
+ 16,15,11,12,13,16,16,13,14,15,16,15,13,15,15,17,
+ 17, 9,11,11,14,15,10,12,12,15,15,11,13,12,15,16,
+ 13,15,14,16,16,13,15,15,17,19, 5, 7, 7,10,10, 7,
+ 9, 9,12,11, 7, 9, 9,11,11,10,11,11,14,14,10,11,
+ 11,13,14, 7, 9, 9,12,12, 9,11,11,13,13, 9,10,11,
+ 12,13,11,13,12,16,15,11,12,12,14,15, 7, 9, 9,12,
+ 12, 9,11,11,13,13, 9,11,11,13,12,11,13,12,15,16,
+ 12,13,13,15,14, 9,11,11,15,14,11,13,12,16,15,10,
+ 11,12,15,15,13,14,14,18,17,13,14,14,15,17,10,11,
+ 11,14,15,11,13,12,15,17,11,13,12,15,16,13,15,14,
+ 18,17,14,15,15,16,18, 7,10,10,14,14,10,12,12,15,
+ 15,10,12,12,15,15,14,15,15,18,17,13,15,15,16,16,
+ 9,11,11,16,15,11,13,13,16,18,11,13,13,16,16,15,
+ 16,16, 0, 0,14,15,16,18,17, 9,11,11,15,15,10,13,
+ 12,17,16,11,12,13,16,17,14,15,16,19,19,14,15,15,
+ 0,20,12,14,14, 0, 0,13,14,16,19,18,13,15,16,20,
+ 17,16,18, 0, 0, 0,15,16,17,18,19,11,14,14, 0,19,
+ 12,15,14,17,17,13,15,15, 0, 0,16,17,15,20,19,15,
+ 17,16,19, 0, 8,10,10,14,15,10,12,11,15,15,10,11,
+ 12,16,15,13,14,14,19,17,14,15,15, 0, 0, 9,11,11,
+ 16,15,11,13,13,17,16,10,12,13,16,17,14,15,15,18,
+ 18,14,15,16,20,19, 9,12,12, 0,15,11,13,13,16,17,
+ 11,13,13,19,17,14,16,16,18,17,15,16,16,17,19,11,
+ 14,14,18,18,13,14,15, 0, 0,12,14,15,19,18,15,16,
+ 19, 0,19,15,16,19,19,17,12,14,14,16,19,13,15,15,
+ 0,17,13,15,14,18,18,15,16,15, 0,18,16,17,17, 0,
+ 0,
+};
+
+static const static_codebook _44u2__p3_0 = {
+ 4, 625,
+ (char *)_vq_lengthlist__44u2__p3_0,
+ 1, -533725184, 1611661312, 3, 0,
+ (long *)_vq_quantlist__44u2__p3_0,
+ 0
+};
+
+static const long _vq_quantlist__44u2__p4_0[] = {
+ 2,
+ 1,
+ 3,
+ 0,
+ 4,
+};
+
+static const char _vq_lengthlist__44u2__p4_0[] = {
+ 4, 5, 5, 8, 8, 5, 7, 6, 9, 9, 5, 6, 7, 9, 9, 9,
+ 9, 9,11,11, 9, 9, 9,11,11, 5, 7, 7, 9, 9, 7, 8,
+ 8,10,10, 7, 7, 8,10,10,10,10,10,11,12, 9,10,10,
+ 11,12, 5, 7, 7, 9, 9, 6, 8, 7,10,10, 7, 8, 8,10,
+ 10, 9,10,10,12,11, 9,10,10,12,11, 9,10,10,12,12,
+ 10,10,10,13,12, 9,10,10,12,13,12,12,12,14,14,11,
+ 12,12,13,14, 9,10,10,12,12, 9,10,10,12,13,10,10,
+ 10,12,13,11,12,12,14,13,12,12,12,14,13, 5, 7, 7,
+ 10, 9, 7, 8, 8,10,10, 7, 8, 8,10,10,10,10,10,12,
+ 12,10,10,10,12,12, 7, 8, 8,11,10, 8, 8, 9,11,11,
+ 8, 9, 9,11,11,10,11,11,12,13,10,11,11,13,13, 6,
+ 8, 8,10,10, 7, 9, 8,11,10, 8, 9, 9,11,11,10,11,
+ 10,13,11,10,11,11,13,13, 9,10,10,13,13,10,11,11,
+ 13,13,10,11,11,14,13,12,11,13,12,15,12,13,13,15,
+ 15, 9,10,10,12,13,10,11,10,13,13,10,11,11,13,13,
+ 12,13,11,15,13,12,13,13,15,15, 5, 7, 7, 9,10, 7,
+ 8, 8,10,10, 7, 8, 8,10,10,10,10,10,12,12,10,10,
+ 11,12,12, 6, 8, 8,10,10, 8, 9, 9,11,11, 7, 8, 9,
+ 10,11,10,11,11,13,13,10,10,11,11,13, 7, 8, 8,10,
+ 11, 8, 9, 9,11,11, 8, 9, 8,11,11,10,11,11,13,13,
+ 10,11,11,13,12, 9,10,10,13,12,10,11,11,14,13,10,
+ 10,11,13,13,12,13,13,15,15,12,11,13,12,14, 9,10,
+ 10,12,13,10,11,11,13,14,10,11,11,13,13,12,13,13,
+ 15,15,12,13,12,15,12, 8, 9, 9,12,12, 9,11,10,13,
+ 13, 9,10,10,13,13,12,13,13,15,15,12,12,12,14,14,
+ 9,10,10,13,13,10,11,11,13,14,10,11,11,14,12,13,
+ 13,14,14,16,12,13,13,15,14, 9,10,10,13,13,10,11,
+ 10,14,13,10,11,11,13,14,12,14,13,16,14,13,13,13,
+ 14,15,11,13,12,15,14,11,12,13,14,15,12,13,13,16,
+ 15,14,12,15,12,16,14,15,15,17,16,11,12,12,14,15,
+ 11,13,11,15,14,12,13,13,15,16,13,15,12,17,13,14,
+ 15,15,16,16, 8, 9, 9,12,12, 9,10,10,13,13, 9,10,
+ 10,13,13,12,13,12,14,14,12,13,13,15,15, 9,10,10,
+ 13,13,10,11,11,14,13,10,10,11,13,14,12,13,13,15,
+ 14,12,12,14,14,16, 9,10,10,13,13,10,11,11,13,14,
+ 10,11,11,14,13,13,13,13,15,15,13,14,13,16,14,11,
+ 12,12,14,14,12,13,13,16,15,11,12,13,14,15,14,15,
+ 15,16,16,14,13,15,13,17,11,12,12,14,15,12,13,13,
+ 15,16,11,13,12,15,15,14,15,14,16,16,14,15,12,17,
+ 13,
+};
+
+static const static_codebook _44u2__p4_0 = {
+ 4, 625,
+ (char *)_vq_lengthlist__44u2__p4_0,
+ 1, -533725184, 1611661312, 3, 0,
+ (long *)_vq_quantlist__44u2__p4_0,
+ 0
+};
+
+static const long _vq_quantlist__44u2__p5_0[] = {
+ 4,
+ 3,
+ 5,
+ 2,
+ 6,
+ 1,
+ 7,
+ 0,
+ 8,
+};
+
+static const char _vq_lengthlist__44u2__p5_0[] = {
+ 1, 4, 4, 7, 7, 8, 8, 9, 9, 4, 6, 5, 8, 8, 8, 8,
+ 10,10, 4, 5, 6, 8, 8, 8, 8,10,10, 7, 8, 8, 9, 9,
+ 9, 9,11,11, 7, 8, 8, 9, 9, 9, 9,11,11, 8, 8, 8,
+ 9, 9,10,11,12,12, 8, 8, 8, 9, 9,10,10,12,12,10,
+ 10,10,11,11,12,12,13,13,10,10,10,11,11,12,12,13,
+ 13,
+};
+
+static const static_codebook _44u2__p5_0 = {
+ 2, 81,
+ (char *)_vq_lengthlist__44u2__p5_0,
+ 1, -531628032, 1611661312, 4, 0,
+ (long *)_vq_quantlist__44u2__p5_0,
+ 0
+};
+
+static const long _vq_quantlist__44u2__p6_0[] = {
+ 6,
+ 5,
+ 7,
+ 4,
+ 8,
+ 3,
+ 9,
+ 2,
+ 10,
+ 1,
+ 11,
+ 0,
+ 12,
+};
+
+static const char _vq_lengthlist__44u2__p6_0[] = {
+ 1, 4, 4, 6, 6, 8, 8,10,10,11,11,14,13, 4, 6, 5,
+ 8, 8, 9, 9,11,10,12,11,15,14, 4, 5, 6, 8, 8, 9,
+ 9,11,11,11,11,14,14, 6, 8, 8,10, 9,11,11,11,11,
+ 12,12,15,15, 6, 8, 8, 9, 9,11,11,11,12,12,12,15,
+ 15, 8,10,10,11,11,11,11,12,12,13,13,15,16, 8,10,
+ 10,11,11,11,11,12,12,13,13,16,16,10,11,11,12,12,
+ 12,12,13,13,13,13,17,16,10,11,11,12,12,12,12,13,
+ 13,13,14,16,17,11,12,12,13,13,13,13,14,14,15,14,
+ 18,17,11,12,12,13,13,13,13,14,14,14,15,19,18,14,
+ 15,15,15,15,16,16,18,19,18,18, 0, 0,14,15,15,16,
+ 15,17,17,16,18,17,18, 0, 0,
+};
+
+static const static_codebook _44u2__p6_0 = {
+ 2, 169,
+ (char *)_vq_lengthlist__44u2__p6_0,
+ 1, -526516224, 1616117760, 4, 0,
+ (long *)_vq_quantlist__44u2__p6_0,
+ 0
+};
+
+static const long _vq_quantlist__44u2__p6_1[] = {
+ 2,
+ 1,
+ 3,
+ 0,
+ 4,
+};
+
+static const char _vq_lengthlist__44u2__p6_1[] = {
+ 2, 4, 4, 5, 5, 4, 5, 5, 6, 5, 4, 5, 5, 5, 6, 5,
+ 6, 5, 6, 6, 5, 5, 6, 6, 6,
+};
+
+static const static_codebook _44u2__p6_1 = {
+ 2, 25,
+ (char *)_vq_lengthlist__44u2__p6_1,
+ 1, -533725184, 1611661312, 3, 0,
+ (long *)_vq_quantlist__44u2__p6_1,
+ 0
+};
+
+static const long _vq_quantlist__44u2__p7_0[] = {
+ 4,
+ 3,
+ 5,
+ 2,
+ 6,
+ 1,
+ 7,
+ 0,
+ 8,
+};
+
+static const char _vq_lengthlist__44u2__p7_0[] = {
+ 1, 3, 2,12,12,12,12,12,12, 4,12,12,12,12,12,12,
+ 12,12, 5,12,12,12,12,12,12,12,12,12,12,11,11,11,
+ 11,11,11,11,11,11,11,11,11,11,11,11,11,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,
+};
+
+static const static_codebook _44u2__p7_0 = {
+ 2, 81,
+ (char *)_vq_lengthlist__44u2__p7_0,
+ 1, -516612096, 1626677248, 4, 0,
+ (long *)_vq_quantlist__44u2__p7_0,
+ 0
+};
+
+static const long _vq_quantlist__44u2__p7_1[] = {
+ 6,
+ 5,
+ 7,
+ 4,
+ 8,
+ 3,
+ 9,
+ 2,
+ 10,
+ 1,
+ 11,
+ 0,
+ 12,
+};
+
+static const char _vq_lengthlist__44u2__p7_1[] = {
+ 1, 4, 4, 7, 6, 7, 6, 8, 7, 9, 7, 9, 8, 4, 7, 6,
+ 8, 8, 9, 8,10, 9,10,10,11,11, 4, 7, 7, 8, 8, 8,
+ 8, 9,10,11,11,11,11, 6, 8, 8,10,10,10,10,11,11,
+ 12,12,12,12, 7, 8, 8,10,10,10,10,11,11,12,12,13,
+ 13, 7, 9, 9,11,10,12,12,13,13,14,13,14,14, 7, 9,
+ 9,10,11,11,12,13,13,13,13,16,14, 9,10,10,12,12,
+ 13,13,14,14,15,16,15,16, 9,10,10,12,12,12,13,14,
+ 14,14,15,16,15,10,12,12,13,13,15,13,16,16,15,17,
+ 17,17,10,11,11,12,14,14,14,15,15,17,17,15,17,11,
+ 12,12,14,14,14,15,15,15,17,16,17,17,10,12,12,13,
+ 14,14,14,17,15,17,17,17,17,
+};
+
+static const static_codebook _44u2__p7_1 = {
+ 2, 169,
+ (char *)_vq_lengthlist__44u2__p7_1,
+ 1, -523010048, 1618608128, 4, 0,
+ (long *)_vq_quantlist__44u2__p7_1,
+ 0
+};
+
+static const long _vq_quantlist__44u2__p7_2[] = {
+ 6,
+ 5,
+ 7,
+ 4,
+ 8,
+ 3,
+ 9,
+ 2,
+ 10,
+ 1,
+ 11,
+ 0,
+ 12,
+};
+
+static const char _vq_lengthlist__44u2__p7_2[] = {
+ 2, 5, 5, 6, 6, 7, 7, 8, 7, 8, 8, 8, 8, 5, 6, 6,
+ 7, 7, 8, 8, 8, 8, 8, 8, 8, 8, 5, 6, 6, 7, 7, 8,
+ 7, 8, 8, 8, 8, 8, 8, 6, 7, 7, 7, 8, 8, 8, 8, 8,
+ 9, 9, 9, 9, 6, 7, 7, 8, 7, 8, 8, 9, 9, 9, 9, 9,
+ 9, 7, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 7, 8,
+ 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 8, 8, 8, 8, 9,
+ 9, 9, 9, 9, 9, 9, 9, 9, 8, 8, 8, 9, 9, 9, 9, 9,
+ 9, 9, 9, 9, 9, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9, 9,
+ 9, 9, 8, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 8,
+ 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 8, 9, 9, 9,
+ 9, 9, 9, 9, 9, 9, 9, 9, 9,
+};
+
+static const static_codebook _44u2__p7_2 = {
+ 2, 169,
+ (char *)_vq_lengthlist__44u2__p7_2,
+ 1, -531103744, 1611661312, 4, 0,
+ (long *)_vq_quantlist__44u2__p7_2,
+ 0
+};
+
+static const char _huff_lengthlist__44u2__short[] = {
+ 13,15,17,17,15,15,12,17,11, 9, 7,10,10, 9,12,17,
+ 10, 6, 3, 6, 5, 7,10,17,15,10, 6, 9, 8, 9,11,17,
+ 15, 8, 4, 7, 3, 5, 9,16,16,10, 5, 8, 4, 5, 8,16,
+ 13,11, 5, 8, 3, 3, 5,14,13,12, 7,10, 5, 5, 7,14,
+};
+
+static const static_codebook _huff_book__44u2__short = {
+ 2, 64,
+ (char *)_huff_lengthlist__44u2__short,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
+static const char _huff_lengthlist__44u3__long[] = {
+ 6, 9,13,12,14,11,10,13, 8, 4, 5, 7, 8, 7, 8,12,
+ 11, 4, 3, 5, 5, 7, 9,14,11, 6, 5, 6, 6, 6, 7,13,
+ 13, 7, 5, 6, 4, 5, 7,14,11, 7, 6, 6, 5, 5, 6,13,
+ 9, 7, 8, 6, 7, 5, 3, 9, 9,12,13,12,14,10, 6, 7,
+};
+
+static const static_codebook _huff_book__44u3__long = {
+ 2, 64,
+ (char *)_huff_lengthlist__44u3__long,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
+static const long _vq_quantlist__44u3__p1_0[] = {
+ 1,
+ 0,
+ 2,
+};
+
+static const char _vq_lengthlist__44u3__p1_0[] = {
+ 1, 4, 4, 5, 8, 7, 5, 7, 8, 5, 8, 8, 8,10,11, 8,
+ 10,11, 5, 8, 8, 8,11,10, 8,11,11, 4, 8, 8, 8,11,
+ 11, 8,11,11, 8,11,11,11,13,14,11,14,14, 8,11,11,
+ 10,14,12,11,14,14, 4, 8, 8, 8,11,11, 8,11,11, 7,
+ 11,11,11,14,14,10,12,14, 8,11,11,11,14,14,11,14,
+ 13,
+};
+
+static const static_codebook _44u3__p1_0 = {
+ 4, 81,
+ (char *)_vq_lengthlist__44u3__p1_0,
+ 1, -535822336, 1611661312, 2, 0,
+ (long *)_vq_quantlist__44u3__p1_0,
+ 0
+};
+
+static const long _vq_quantlist__44u3__p2_0[] = {
+ 1,
+ 0,
+ 2,
+};
+
+static const char _vq_lengthlist__44u3__p2_0[] = {
+ 2, 5, 4, 5, 6, 6, 5, 6, 6, 5, 6, 6, 7, 8, 8, 6,
+ 8, 8, 5, 6, 6, 6, 8, 8, 7, 8, 8, 5, 7, 6, 7, 8,
+ 8, 6, 8, 8, 7, 8, 8, 8, 9,10, 8,10,10, 6, 8, 8,
+ 8,10, 8, 8,10,10, 5, 6, 6, 6, 8, 8, 7, 8, 8, 6,
+ 8, 8, 8,10,10, 8, 8,10, 7, 8, 8, 8,10,10, 8,10,
+ 9,
+};
+
+static const static_codebook _44u3__p2_0 = {
+ 4, 81,
+ (char *)_vq_lengthlist__44u3__p2_0,
+ 1, -535822336, 1611661312, 2, 0,
+ (long *)_vq_quantlist__44u3__p2_0,
+ 0
+};
+
+static const long _vq_quantlist__44u3__p3_0[] = {
+ 2,
+ 1,
+ 3,
+ 0,
+ 4,
+};
+
+static const char _vq_lengthlist__44u3__p3_0[] = {
+ 2, 4, 4, 7, 7, 5, 7, 7, 9, 9, 5, 7, 7, 9, 9, 8,
+ 9, 9,12,12, 8, 9, 9,11,12, 5, 7, 7,10,10, 7, 9,
+ 9,11,11, 7, 9, 9,10,11,10,11,11,13,13, 9,10,11,
+ 13,13, 5, 7, 7,10,10, 7, 9, 9,11,10, 7, 9, 9,11,
+ 11, 9,11,10,13,13,10,11,11,14,13, 8,10,10,14,13,
+ 10,11,11,15,14, 9,11,11,14,14,13,14,13,16,16,12,
+ 13,13,15,15, 8,10,10,13,14, 9,11,11,14,14,10,11,
+ 11,14,15,12,13,13,15,15,13,14,14,15,16, 5, 7, 7,
+ 10,10, 7, 9, 9,11,11, 7, 9, 9,11,12,10,11,11,14,
+ 14,10,11,11,14,14, 7, 9, 9,12,12, 9,11,11,13,13,
+ 9,11,11,13,13,12,12,13,15,15,11,12,13,15,16, 7,
+ 9, 9,11,11, 8,11,10,13,12, 9,11,11,13,13,11,13,
+ 12,15,13,11,13,13,15,16, 9,12,11,15,14,11,12,13,
+ 16,15,11,13,13,15,16,14,14,15,17,16,13,15,16, 0,
+ 17, 9,11,11,15,15,10,13,12,15,15,11,13,13,15,16,
+ 13,15,13,16,15,14,16,15, 0,19, 5, 7, 7,10,10, 7,
+ 9, 9,11,11, 7, 9, 9,11,11,10,12,11,14,14,10,11,
+ 12,14,14, 7, 9, 9,12,12, 9,11,11,14,13, 9,10,11,
+ 12,13,11,13,13,16,16,11,12,13,13,16, 7, 9, 9,12,
+ 12, 9,11,11,13,13, 9,11,11,13,13,11,13,13,15,15,
+ 12,13,12,15,14, 9,11,11,15,14,11,13,12,16,16,10,
+ 12,12,15,15,13,15,15,17,19,13,14,15,16,17,10,12,
+ 12,15,15,11,13,13,16,16,11,13,13,15,16,13,15,15,
+ 0, 0,14,15,15,16,16, 8,10,10,14,14,10,12,12,15,
+ 15,10,12,11,15,16,14,15,15,19,20,13,14,14,18,16,
+ 9,11,11,15,15,11,13,13,17,16,11,13,13,16,16,15,
+ 17,17,20,20,14,15,16,17,20, 9,11,11,15,15,10,13,
+ 12,16,15,11,13,13,15,17,14,16,15,18, 0,14,16,15,
+ 18,20,12,14,14, 0, 0,14,14,16, 0, 0,13,16,15, 0,
+ 0,17,17,18, 0, 0,16,17,19,19, 0,12,14,14,18, 0,
+ 12,16,14, 0,17,13,15,15,18, 0,16,18,17, 0,17,16,
+ 18,17, 0, 0, 7,10,10,14,14,10,12,11,15,15,10,12,
+ 12,16,15,13,15,15,18, 0,14,15,15,17, 0, 9,11,11,
+ 15,15,11,13,13,16,16,11,12,13,16,16,14,15,16,17,
+ 17,14,16,16,16,18, 9,11,12,16,16,11,13,13,17,17,
+ 11,14,13,20,17,15,16,16,19, 0,15,16,17, 0,19,11,
+ 13,14,17,16,14,15,15,20,18,13,14,15,17,19,16,18,
+ 18, 0,20,16,16,19,17, 0,12,15,14,17, 0,14,15,15,
+ 18,19,13,16,15,19,20,15,18,18, 0,20,17, 0,16, 0,
+ 0,
+};
+
+static const static_codebook _44u3__p3_0 = {
+ 4, 625,
+ (char *)_vq_lengthlist__44u3__p3_0,
+ 1, -533725184, 1611661312, 3, 0,
+ (long *)_vq_quantlist__44u3__p3_0,
+ 0
+};
+
+static const long _vq_quantlist__44u3__p4_0[] = {
+ 2,
+ 1,
+ 3,
+ 0,
+ 4,
+};
+
+static const char _vq_lengthlist__44u3__p4_0[] = {
+ 4, 5, 5, 8, 8, 5, 7, 6, 9, 9, 5, 6, 7, 9, 9, 9,
+ 9, 9,11,11, 9, 9, 9,11,11, 5, 7, 7, 9, 9, 7, 8,
+ 8,10,10, 7, 7, 8,10,10, 9,10,10,11,12, 9,10,10,
+ 11,12, 5, 7, 7, 9, 9, 7, 8, 7,10,10, 7, 8, 8,10,
+ 10, 9,10, 9,12,11, 9,10,10,12,11, 9,10, 9,12,12,
+ 9,10,10,13,12, 9,10,10,12,13,12,12,12,14,14,11,
+ 12,12,13,14, 9, 9,10,12,12, 9,10,10,12,12, 9,10,
+ 10,12,13,11,12,11,14,13,12,12,12,14,13, 5, 7, 7,
+ 9, 9, 7, 8, 8,10,10, 7, 8, 8,10,10,10,10,10,12,
+ 12, 9,10,10,12,12, 7, 8, 8,11,10, 8, 8, 9,11,11,
+ 8, 9, 9,11,11,11,11,11,12,13,10,11,11,13,13, 6,
+ 8, 8,10,10, 7, 9, 8,11,10, 8, 9, 9,11,11,10,11,
+ 10,13,11,10,11,11,13,13, 9,11,10,13,12,10,11,11,
+ 13,13,10,11,11,13,13,12,12,13,12,15,12,13,13,15,
+ 15, 9,10,10,12,13,10,11,10,13,12,10,11,11,13,14,
+ 12,13,11,15,13,12,13,13,15,15, 5, 7, 7, 9, 9, 7,
+ 8, 8,10,10, 7, 8, 8,10,10, 9,10,10,12,12,10,10,
+ 11,12,12, 6, 8, 8,10,10, 8, 9, 9,11,11, 7, 8, 9,
+ 10,11,10,11,11,13,13,10,10,11,11,13, 7, 8, 8,10,
+ 10, 8, 9, 9,11,11, 8, 9, 9,11,11,10,11,11,13,13,
+ 11,11,11,13,12, 9,10,10,13,12,10,11,11,14,13,10,
+ 10,11,12,13,12,13,13,15,15,12,11,13,13,14, 9,10,
+ 11,12,13,10,11,11,13,13,10,11,11,13,13,12,13,13,
+ 15,15,12,13,12,15,12, 8, 9, 9,12,12, 9,11,10,13,
+ 13, 9,10,10,13,13,12,13,13,15,14,12,12,12,14,13,
+ 9,10,10,13,12,10,11,11,13,13,10,11,11,14,12,13,
+ 13,14,14,16,12,13,13,15,15, 9,10,10,13,13,10,11,
+ 10,14,13,10,11,11,13,14,12,14,13,15,14,13,13,13,
+ 15,15,11,13,12,15,14,11,12,13,14,15,12,13,13,16,
+ 14,14,12,15,12,16,14,15,15,17,15,11,12,12,14,14,
+ 11,13,11,15,14,12,13,13,15,15,13,15,12,17,13,14,
+ 15,15,16,16, 8, 9, 9,12,12, 9,10,10,12,13, 9,10,
+ 10,13,13,12,12,12,14,14,12,13,13,15,15, 9,10,10,
+ 13,12,10,11,11,14,13,10,10,11,13,14,12,13,13,15,
+ 15,12,12,13,14,16, 9,10,10,13,13,10,11,11,13,14,
+ 10,11,11,14,13,12,13,13,14,15,13,14,13,16,14,11,
+ 12,12,14,14,12,13,13,15,14,11,12,13,14,15,14,15,
+ 15,16,16,13,13,15,13,16,11,12,12,14,15,12,13,13,
+ 14,15,11,13,12,15,14,14,15,15,16,16,14,15,12,16,
+ 13,
+};
+
+static const static_codebook _44u3__p4_0 = {
+ 4, 625,
+ (char *)_vq_lengthlist__44u3__p4_0,
+ 1, -533725184, 1611661312, 3, 0,
+ (long *)_vq_quantlist__44u3__p4_0,
+ 0
+};
+
+static const long _vq_quantlist__44u3__p5_0[] = {
+ 4,
+ 3,
+ 5,
+ 2,
+ 6,
+ 1,
+ 7,
+ 0,
+ 8,
+};
+
+static const char _vq_lengthlist__44u3__p5_0[] = {
+ 2, 3, 3, 6, 6, 7, 7, 9, 9, 4, 5, 5, 7, 7, 8, 8,
+ 10,10, 4, 5, 5, 7, 7, 8, 8,10,10, 6, 7, 7, 8, 8,
+ 9, 9,11,10, 6, 7, 7, 8, 8, 9, 9,10,10, 7, 8, 8,
+ 9, 9,10,10,11,11, 7, 8, 8, 9, 9,10,10,11,11, 9,
+ 10,10,11,10,11,11,12,12, 9,10,10,10,10,11,11,12,
+ 12,
+};
+
+static const static_codebook _44u3__p5_0 = {
+ 2, 81,
+ (char *)_vq_lengthlist__44u3__p5_0,
+ 1, -531628032, 1611661312, 4, 0,
+ (long *)_vq_quantlist__44u3__p5_0,
+ 0
+};
+
+static const long _vq_quantlist__44u3__p6_0[] = {
+ 6,
+ 5,
+ 7,
+ 4,
+ 8,
+ 3,
+ 9,
+ 2,
+ 10,
+ 1,
+ 11,
+ 0,
+ 12,
+};
+
+static const char _vq_lengthlist__44u3__p6_0[] = {
+ 1, 4, 4, 6, 6, 8, 8, 9, 9,10,11,13,14, 4, 6, 5,
+ 8, 8, 9, 9,10,10,11,11,14,14, 4, 6, 6, 8, 8, 9,
+ 9,10,10,11,11,14,14, 6, 8, 8, 9, 9,10,10,11,11,
+ 12,12,15,15, 6, 8, 8, 9, 9,10,11,11,11,12,12,15,
+ 15, 8, 9, 9,11,10,11,11,12,12,13,13,15,16, 8, 9,
+ 9,10,11,11,11,12,12,13,13,16,16,10,10,11,11,11,
+ 12,12,13,13,13,14,17,16, 9,10,11,12,11,12,12,13,
+ 13,13,13,16,18,11,12,11,12,12,13,13,13,14,15,14,
+ 17,17,11,11,12,12,12,13,13,13,14,14,15,18,17,14,
+ 15,15,15,15,16,16,17,17,19,18, 0,20,14,15,14,15,
+ 15,16,16,16,17,18,16,20,18,
+};
+
+static const static_codebook _44u3__p6_0 = {
+ 2, 169,
+ (char *)_vq_lengthlist__44u3__p6_0,
+ 1, -526516224, 1616117760, 4, 0,
+ (long *)_vq_quantlist__44u3__p6_0,
+ 0
+};
+
+static const long _vq_quantlist__44u3__p6_1[] = {
+ 2,
+ 1,
+ 3,
+ 0,
+ 4,
+};
+
+static const char _vq_lengthlist__44u3__p6_1[] = {
+ 2, 4, 4, 5, 5, 4, 5, 5, 6, 5, 4, 5, 5, 5, 6, 5,
+ 6, 5, 6, 6, 5, 5, 6, 6, 6,
+};
+
+static const static_codebook _44u3__p6_1 = {
+ 2, 25,
+ (char *)_vq_lengthlist__44u3__p6_1,
+ 1, -533725184, 1611661312, 3, 0,
+ (long *)_vq_quantlist__44u3__p6_1,
+ 0
+};
+
+static const long _vq_quantlist__44u3__p7_0[] = {
+ 4,
+ 3,
+ 5,
+ 2,
+ 6,
+ 1,
+ 7,
+ 0,
+ 8,
+};
+
+static const char _vq_lengthlist__44u3__p7_0[] = {
+ 1, 3, 3,10,10,10,10,10,10, 4,10,10,10,10,10,10,
+ 10,10, 4,10,10,10,10,10,10,10,10,10,10, 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, 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,
+};
+
+static const static_codebook _44u3__p7_0 = {
+ 2, 81,
+ (char *)_vq_lengthlist__44u3__p7_0,
+ 1, -515907584, 1627381760, 4, 0,
+ (long *)_vq_quantlist__44u3__p7_0,
+ 0
+};
+
+static const long _vq_quantlist__44u3__p7_1[] = {
+ 7,
+ 6,
+ 8,
+ 5,
+ 9,
+ 4,
+ 10,
+ 3,
+ 11,
+ 2,
+ 12,
+ 1,
+ 13,
+ 0,
+ 14,
+};
+
+static const char _vq_lengthlist__44u3__p7_1[] = {
+ 1, 4, 4, 6, 6, 7, 6, 8, 7, 9, 8,10, 9,11,11, 4,
+ 7, 7, 8, 7, 9, 9,10,10,11,11,11,11,12,12, 4, 7,
+ 7, 7, 7, 9, 9,10,10,11,11,12,12,12,11, 6, 8, 8,
+ 9, 9,10,10,11,11,12,12,13,12,13,13, 6, 8, 8, 9,
+ 9,10,11,11,11,12,12,13,14,13,13, 8, 9, 9,11,11,
+ 12,12,12,13,14,13,14,14,14,15, 8, 9, 9,11,11,11,
+ 12,13,14,13,14,15,17,14,15, 9,10,10,12,12,13,13,
+ 13,14,15,15,15,16,16,16, 9,11,11,12,12,13,13,14,
+ 14,14,15,16,16,16,16,10,12,12,13,13,14,14,15,15,
+ 15,16,17,17,17,17,10,12,11,13,13,15,14,15,14,16,
+ 17,16,16,16,16,11,13,12,14,14,14,14,15,16,17,16,
+ 17,17,17,17,11,13,12,14,14,14,15,17,16,17,17,17,
+ 17,17,17,12,13,13,15,16,15,16,17,17,16,16,17,17,
+ 17,17,12,13,13,15,15,15,16,17,17,17,16,17,16,17,
+ 17,
+};
+
+static const static_codebook _44u3__p7_1 = {
+ 2, 225,
+ (char *)_vq_lengthlist__44u3__p7_1,
+ 1, -522338304, 1620115456, 4, 0,
+ (long *)_vq_quantlist__44u3__p7_1,
+ 0
+};
+
+static const long _vq_quantlist__44u3__p7_2[] = {
+ 8,
+ 7,
+ 9,
+ 6,
+ 10,
+ 5,
+ 11,
+ 4,
+ 12,
+ 3,
+ 13,
+ 2,
+ 14,
+ 1,
+ 15,
+ 0,
+ 16,
+};
+
+static const char _vq_lengthlist__44u3__p7_2[] = {
+ 2, 5, 5, 7, 6, 7, 7, 8, 8, 8, 8, 9, 9, 9, 9, 9,
+ 9, 5, 6, 6, 7, 7, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9,
+ 10,10, 5, 6, 6, 7, 7, 8, 8, 8, 8, 9, 8, 9, 9, 9,
+ 9,10, 9, 7, 7, 7, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9,
+ 10,10,10,10, 7, 7, 7, 8, 8, 8, 8, 9, 9, 9, 9,10,
+ 9,10,10,10,10, 7, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9,
+ 10,10,10,10,10,10, 7, 8, 8, 9, 8, 9, 9, 9, 9,10,
+ 9,10,10,10,10,10,10, 8, 8, 8, 9, 9, 9, 9, 9, 9,
+ 9,10,10,10,10,10,10,10, 8, 9, 8, 9, 9, 9, 9,10,
+ 9,10,10,10,10,10,10,10,10, 9, 9, 9, 9, 9, 9,10,
+ 9,10,10,10,10,10,10,10,10,10, 9, 9, 9, 9, 9,10,
+ 9,10,10,10,10,10,10,10,10,10,10, 9, 9, 9,10, 9,
+ 10,10,10,10,10,10,10,10,10,10,10,10, 9, 9, 9,10,
+ 10,10,10,10,10,10,10,10,10,10,10,10,10, 9, 9, 9,
+ 10,10,10,10,10,10,10,10,10,10,10,10,10,11, 9,10,
+ 10,10,10,10,10,10,10,10,10,10,10,10,10,10,11, 9,
+ 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,11,11,11,10,
+ 11,
+};
+
+static const static_codebook _44u3__p7_2 = {
+ 2, 289,
+ (char *)_vq_lengthlist__44u3__p7_2,
+ 1, -529530880, 1611661312, 5, 0,
+ (long *)_vq_quantlist__44u3__p7_2,
+ 0
+};
+
+static const char _huff_lengthlist__44u3__short[] = {
+ 14,14,14,15,13,15,12,16,10, 8, 7, 9, 9, 8,12,16,
+ 10, 5, 4, 6, 5, 6, 9,16,14, 8, 6, 8, 7, 8,10,16,
+ 14, 7, 4, 6, 3, 5, 8,16,15, 9, 5, 7, 4, 4, 7,16,
+ 13,10, 6, 7, 4, 3, 4,13,13,12, 7, 9, 5, 5, 6,12,
+};
+
+static const static_codebook _huff_book__44u3__short = {
+ 2, 64,
+ (char *)_huff_lengthlist__44u3__short,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
+static const char _huff_lengthlist__44u4__long[] = {
+ 3, 8,12,12,13,12,11,13, 5, 4, 6, 7, 8, 8, 9,13,
+ 9, 5, 4, 5, 5, 7, 9,13, 9, 6, 5, 6, 6, 7, 8,12,
+ 12, 7, 5, 6, 4, 5, 8,13,11, 7, 6, 6, 5, 5, 6,12,
+ 10, 8, 8, 7, 7, 5, 3, 8,10,12,13,12,12, 9, 6, 7,
+};
+
+static const static_codebook _huff_book__44u4__long = {
+ 2, 64,
+ (char *)_huff_lengthlist__44u4__long,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
+static const long _vq_quantlist__44u4__p1_0[] = {
+ 1,
+ 0,
+ 2,
+};
+
+static const char _vq_lengthlist__44u4__p1_0[] = {
+ 1, 4, 4, 5, 8, 7, 5, 7, 8, 5, 8, 8, 8,10,11, 8,
+ 10,11, 5, 8, 8, 8,11,10, 8,11,11, 4, 8, 8, 8,11,
+ 11, 8,11,11, 8,11,11,11,13,14,11,15,14, 8,11,11,
+ 10,13,12,11,14,14, 4, 8, 8, 8,11,11, 8,11,11, 7,
+ 11,11,11,15,14,10,12,14, 8,11,11,11,14,14,11,14,
+ 13,
+};
+
+static const static_codebook _44u4__p1_0 = {
+ 4, 81,
+ (char *)_vq_lengthlist__44u4__p1_0,
+ 1, -535822336, 1611661312, 2, 0,
+ (long *)_vq_quantlist__44u4__p1_0,
+ 0
+};
+
+static const long _vq_quantlist__44u4__p2_0[] = {
+ 1,
+ 0,
+ 2,
+};
+
+static const char _vq_lengthlist__44u4__p2_0[] = {
+ 2, 5, 5, 5, 6, 6, 5, 6, 6, 5, 6, 6, 7, 8, 8, 6,
+ 8, 8, 5, 6, 6, 6, 8, 8, 7, 8, 8, 5, 7, 6, 6, 8,
+ 8, 6, 8, 8, 6, 8, 8, 8, 9,10, 8,10,10, 6, 8, 8,
+ 8,10, 8, 8,10,10, 5, 6, 6, 6, 8, 8, 6, 8, 8, 6,
+ 8, 8, 8,10,10, 8, 8,10, 6, 8, 8, 8,10,10, 8,10,
+ 9,
+};
+
+static const static_codebook _44u4__p2_0 = {
+ 4, 81,
+ (char *)_vq_lengthlist__44u4__p2_0,
+ 1, -535822336, 1611661312, 2, 0,
+ (long *)_vq_quantlist__44u4__p2_0,
+ 0
+};
+
+static const long _vq_quantlist__44u4__p3_0[] = {
+ 2,
+ 1,
+ 3,
+ 0,
+ 4,
+};
+
+static const char _vq_lengthlist__44u4__p3_0[] = {
+ 2, 4, 4, 8, 8, 5, 7, 7, 9, 9, 5, 7, 7, 9, 9, 8,
+ 10, 9,12,12, 8, 9,10,12,12, 5, 7, 7,10,10, 7, 9,
+ 9,11,11, 7, 9, 9,11,11,10,12,11,14,14, 9,10,11,
+ 13,14, 5, 7, 7,10,10, 7, 9, 9,11,11, 7, 9, 9,11,
+ 11, 9,11,10,14,13,10,11,11,14,14, 8,10,10,14,13,
+ 10,12,12,15,14, 9,11,11,15,14,13,14,14,17,17,12,
+ 14,14,16,16, 8,10,10,14,14, 9,11,11,14,15,10,12,
+ 12,14,15,12,14,13,16,16,13,14,15,15,18, 4, 7, 7,
+ 10,10, 7, 9, 9,12,11, 7, 9, 9,11,12,10,12,11,15,
+ 14,10,11,12,14,15, 7, 9, 9,12,12, 9,11,12,13,13,
+ 9,11,12,13,13,12,13,13,15,16,11,13,13,15,16, 7,
+ 9, 9,12,12, 9,11,10,13,12, 9,11,12,13,14,11,13,
+ 12,16,14,12,13,13,15,16,10,12,12,16,15,11,13,13,
+ 17,16,11,13,13,17,16,14,15,15,17,17,14,16,16,18,
+ 20, 9,11,11,15,16,11,13,12,16,16,11,13,13,16,17,
+ 14,15,14,18,16,14,16,16,17,20, 5, 7, 7,10,10, 7,
+ 9, 9,12,11, 7, 9,10,11,12,10,12,11,15,15,10,12,
+ 12,14,14, 7, 9, 9,12,12, 9,12,11,14,13, 9,10,11,
+ 12,13,12,13,14,16,16,11,12,13,14,16, 7, 9, 9,12,
+ 12, 9,12,11,13,13, 9,12,11,13,13,11,13,13,16,16,
+ 12,13,13,16,15, 9,11,11,16,14,11,13,13,16,16,11,
+ 12,13,16,16,14,16,16,17,17,13,14,15,16,17,10,12,
+ 12,15,15,11,13,13,16,17,11,13,13,16,16,14,16,15,
+ 19,19,14,15,15,17,18, 8,10,10,14,14,10,12,12,15,
+ 15,10,12,12,16,16,14,16,15,20,19,13,15,15,17,16,
+ 9,12,12,16,16,11,13,13,16,18,11,14,13,16,17,16,
+ 17,16,20, 0,15,16,18,18,20, 9,11,11,15,15,11,14,
+ 12,17,16,11,13,13,17,17,15,17,15,20,20,14,16,16,
+ 17, 0,13,15,14,18,16,14,15,16, 0,18,14,16,16, 0,
+ 0,18,16, 0, 0,20,16,18,18, 0, 0,12,14,14,17,18,
+ 13,15,14,20,18,14,16,15,19,19,16,20,16, 0,18,16,
+ 19,17,19, 0, 8,10,10,14,14,10,12,12,16,15,10,12,
+ 12,16,16,13,15,15,18,17,14,16,16,19, 0, 9,11,11,
+ 16,15,11,14,13,18,17,11,12,13,17,18,14,17,16,18,
+ 18,15,16,17,18,18, 9,12,12,16,16,11,13,13,16,18,
+ 11,14,13,17,17,15,16,16,18,20,16,17,17,20,20,12,
+ 14,14,18,17,14,16,16, 0,19,13,14,15,18, 0,16, 0,
+ 0, 0, 0,16,16, 0,19,20,13,15,14, 0, 0,14,16,16,
+ 18,19,14,16,15, 0,20,16,20,18, 0,20,17,20,17, 0,
+ 0,
+};
+
+static const static_codebook _44u4__p3_0 = {
+ 4, 625,
+ (char *)_vq_lengthlist__44u4__p3_0,
+ 1, -533725184, 1611661312, 3, 0,
+ (long *)_vq_quantlist__44u4__p3_0,
+ 0
+};
+
+static const long _vq_quantlist__44u4__p4_0[] = {
+ 2,
+ 1,
+ 3,
+ 0,
+ 4,
+};
+
+static const char _vq_lengthlist__44u4__p4_0[] = {
+ 4, 5, 5, 8, 8, 5, 7, 6, 9, 9, 5, 6, 7, 9, 9, 9,
+ 9, 9,11,11, 8, 9, 9,11,11, 5, 7, 7, 9, 9, 7, 8,
+ 8,10,10, 7, 7, 8,10,10, 9,10,10,11,12, 9,10,10,
+ 11,12, 5, 7, 7, 9, 9, 7, 8, 7,10,10, 7, 8, 8,10,
+ 10, 9,10,10,12,11, 9,10,10,12,11, 9,10, 9,12,12,
+ 9,10,10,13,12, 9,10,10,12,12,12,12,12,14,14,11,
+ 12,12,13,14, 9, 9,10,12,12, 9,10,10,13,13, 9,10,
+ 10,12,13,11,12,12,14,13,11,12,12,14,14, 5, 7, 7,
+ 9, 9, 7, 8, 8,10,10, 7, 8, 8,10,10,10,10,10,12,
+ 12, 9,10,10,12,12, 7, 8, 8,11,10, 8, 8, 9,11,11,
+ 8, 9, 9,11,11,11,11,11,12,13,10,11,11,13,13, 6,
+ 8, 8,10,10, 7, 9, 8,11,10, 8, 9, 9,11,11,10,11,
+ 10,13,11,10,11,11,13,13, 9,11,10,13,12,10,11,11,
+ 13,14,10,11,11,14,13,12,12,13,12,15,12,13,13,15,
+ 15, 9,10,10,12,13,10,11,10,13,12,10,11,11,13,14,
+ 12,13,11,15,13,13,13,13,15,15, 5, 7, 7, 9, 9, 7,
+ 8, 8,10,10, 7, 8, 8,10,10, 9,10,10,12,12,10,10,
+ 11,12,13, 6, 8, 8,10,10, 8, 9, 9,11,11, 7, 8, 9,
+ 10,11,10,11,11,13,13,10,10,11,11,13, 7, 8, 8,10,
+ 11, 8, 9, 9,11,11, 8, 9, 8,11,11,10,11,11,13,13,
+ 11,12,11,13,12, 9,10,10,13,12,10,11,11,14,13,10,
+ 10,11,12,13,12,13,13,15,15,12,11,13,13,14, 9,10,
+ 11,12,13,10,11,11,13,14,10,11,11,13,13,12,13,13,
+ 15,15,12,13,12,15,12, 8, 9, 9,12,12, 9,11,10,13,
+ 13, 9,10,10,13,13,12,13,13,15,15,12,12,12,14,14,
+ 9,10,10,13,13,10,11,11,13,14,10,11,11,14,13,13,
+ 13,14,14,16,13,13,13,15,15, 9,10,10,13,13,10,11,
+ 10,14,13,10,11,11,13,14,12,14,13,16,14,12,13,13,
+ 14,15,11,12,12,15,14,11,12,13,14,15,12,13,13,16,
+ 15,14,12,15,12,16,14,15,15,16,16,11,12,12,14,14,
+ 11,13,12,15,14,12,13,13,15,16,13,15,13,17,13,14,
+ 15,15,16,17, 8, 9, 9,12,12, 9,10,10,12,13, 9,10,
+ 10,13,13,12,12,12,14,14,12,13,13,15,15, 9,10,10,
+ 13,12,10,11,11,14,13,10,10,11,13,14,13,13,13,15,
+ 15,12,13,14,14,16, 9,10,10,13,13,10,11,11,13,14,
+ 10,11,11,14,14,13,13,13,15,15,13,14,13,16,14,11,
+ 12,12,15,14,12,13,13,16,15,11,12,13,14,15,14,15,
+ 15,17,16,13,13,15,13,16,11,12,13,14,15,13,13,13,
+ 15,16,11,13,12,15,14,14,15,15,16,16,14,15,12,17,
+ 13,
+};
+
+static const static_codebook _44u4__p4_0 = {
+ 4, 625,
+ (char *)_vq_lengthlist__44u4__p4_0,
+ 1, -533725184, 1611661312, 3, 0,
+ (long *)_vq_quantlist__44u4__p4_0,
+ 0
+};
+
+static const long _vq_quantlist__44u4__p5_0[] = {
+ 4,
+ 3,
+ 5,
+ 2,
+ 6,
+ 1,
+ 7,
+ 0,
+ 8,
+};
+
+static const char _vq_lengthlist__44u4__p5_0[] = {
+ 2, 3, 3, 6, 6, 7, 7, 9, 9, 4, 5, 5, 7, 7, 8, 8,
+ 10, 9, 4, 5, 5, 7, 7, 8, 8,10,10, 6, 7, 7, 8, 8,
+ 9, 9,11,10, 6, 7, 7, 8, 8, 9, 9,10,11, 7, 8, 8,
+ 9, 9,10,10,11,11, 7, 8, 8, 9, 9,10,10,11,11, 9,
+ 10,10,11,10,11,11,12,12, 9,10,10,10,11,11,11,12,
+ 12,
+};
+
+static const static_codebook _44u4__p5_0 = {
+ 2, 81,
+ (char *)_vq_lengthlist__44u4__p5_0,
+ 1, -531628032, 1611661312, 4, 0,
+ (long *)_vq_quantlist__44u4__p5_0,
+ 0
+};
+
+static const long _vq_quantlist__44u4__p6_0[] = {
+ 6,
+ 5,
+ 7,
+ 4,
+ 8,
+ 3,
+ 9,
+ 2,
+ 10,
+ 1,
+ 11,
+ 0,
+ 12,
+};
+
+static const char _vq_lengthlist__44u4__p6_0[] = {
+ 1, 4, 4, 6, 6, 8, 8, 9, 9,11,10,13,13, 4, 6, 5,
+ 8, 8, 9, 9,10,10,11,11,14,14, 4, 6, 6, 8, 8, 9,
+ 9,10,10,11,11,14,14, 6, 8, 8, 9, 9,10,10,11,11,
+ 12,12,15,15, 6, 8, 8, 9, 9,10,11,11,11,12,12,15,
+ 15, 8, 9, 9,11,10,11,11,12,12,13,13,16,16, 8, 9,
+ 9,10,10,11,11,12,12,13,13,16,16,10,10,10,12,11,
+ 12,12,13,13,14,14,16,16,10,10,10,11,12,12,12,13,
+ 13,13,14,16,17,11,12,11,12,12,13,13,14,14,15,14,
+ 18,17,11,11,12,12,12,13,13,14,14,14,15,19,18,14,
+ 15,14,15,15,17,16,17,17,17,17,21, 0,14,15,15,16,
+ 16,16,16,17,17,18,17,20,21,
+};
+
+static const static_codebook _44u4__p6_0 = {
+ 2, 169,
+ (char *)_vq_lengthlist__44u4__p6_0,
+ 1, -526516224, 1616117760, 4, 0,
+ (long *)_vq_quantlist__44u4__p6_0,
+ 0
+};
+
+static const long _vq_quantlist__44u4__p6_1[] = {
+ 2,
+ 1,
+ 3,
+ 0,
+ 4,
+};
+
+static const char _vq_lengthlist__44u4__p6_1[] = {
+ 2, 4, 4, 5, 5, 4, 5, 5, 6, 5, 4, 5, 5, 5, 6, 5,
+ 6, 5, 6, 6, 5, 5, 6, 6, 6,
+};
+
+static const static_codebook _44u4__p6_1 = {
+ 2, 25,
+ (char *)_vq_lengthlist__44u4__p6_1,
+ 1, -533725184, 1611661312, 3, 0,
+ (long *)_vq_quantlist__44u4__p6_1,
+ 0
+};
+
+static const long _vq_quantlist__44u4__p7_0[] = {
+ 6,
+ 5,
+ 7,
+ 4,
+ 8,
+ 3,
+ 9,
+ 2,
+ 10,
+ 1,
+ 11,
+ 0,
+ 12,
+};
+
+static const char _vq_lengthlist__44u4__p7_0[] = {
+ 1, 3, 3,12,12,12,12,12,12,12,12,12,12, 3,12,11,
+ 12,12,12,12,12,12,12,12,12,12, 4,11,10,12,12,12,
+ 12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,
+ 12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,
+ 12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,
+ 12,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
+ 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
+ 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
+ 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
+ 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
+ 11,11,11,11,11,11,11,11,11,
+};
+
+static const static_codebook _44u4__p7_0 = {
+ 2, 169,
+ (char *)_vq_lengthlist__44u4__p7_0,
+ 1, -514332672, 1627381760, 4, 0,
+ (long *)_vq_quantlist__44u4__p7_0,
+ 0
+};
+
+static const long _vq_quantlist__44u4__p7_1[] = {
+ 7,
+ 6,
+ 8,
+ 5,
+ 9,
+ 4,
+ 10,
+ 3,
+ 11,
+ 2,
+ 12,
+ 1,
+ 13,
+ 0,
+ 14,
+};
+
+static const char _vq_lengthlist__44u4__p7_1[] = {
+ 1, 4, 4, 6, 6, 7, 7, 9, 8,10, 8,10, 9,11,11, 4,
+ 7, 6, 8, 7, 9, 9,10,10,11,10,11,10,12,10, 4, 6,
+ 7, 8, 8, 9, 9,10,10,11,11,11,11,12,12, 6, 8, 8,
+ 10, 9,11,10,12,11,12,12,12,12,13,13, 6, 8, 8,10,
+ 10,10,11,11,11,12,12,13,12,13,13, 8, 9, 9,11,11,
+ 12,11,12,12,13,13,13,13,13,13, 8, 9, 9,11,11,11,
+ 12,12,12,13,13,13,13,13,13, 9,10,10,12,11,13,13,
+ 13,13,14,13,13,14,14,14, 9,10,11,11,12,12,13,13,
+ 13,13,13,14,15,14,14,10,11,11,12,12,13,13,14,14,
+ 14,14,14,15,16,16,10,11,11,12,13,13,13,13,15,14,
+ 14,15,16,15,16,10,12,12,13,13,14,14,14,15,15,15,
+ 15,15,15,16,11,12,12,13,13,14,14,14,15,15,15,16,
+ 15,17,16,11,12,12,13,13,13,15,15,14,16,16,16,16,
+ 16,17,11,12,12,13,13,14,14,15,14,15,15,17,17,16,
+ 16,
+};
+
+static const static_codebook _44u4__p7_1 = {
+ 2, 225,
+ (char *)_vq_lengthlist__44u4__p7_1,
+ 1, -522338304, 1620115456, 4, 0,
+ (long *)_vq_quantlist__44u4__p7_1,
+ 0
+};
+
+static const long _vq_quantlist__44u4__p7_2[] = {
+ 8,
+ 7,
+ 9,
+ 6,
+ 10,
+ 5,
+ 11,
+ 4,
+ 12,
+ 3,
+ 13,
+ 2,
+ 14,
+ 1,
+ 15,
+ 0,
+ 16,
+};
+
+static const char _vq_lengthlist__44u4__p7_2[] = {
+ 2, 5, 5, 7, 7, 7, 7, 8, 8, 8, 8, 9, 9, 9, 9, 9,
+ 9, 5, 6, 6, 7, 7, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9,
+ 9, 9, 5, 6, 6, 7, 7, 8, 8, 8, 8, 9, 9, 9, 9, 9,
+ 9, 9, 9, 7, 7, 7, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9,
+ 10,10,10,10, 7, 7, 7, 8, 8, 8, 8, 9, 9, 9, 9,10,
+ 9,10, 9,10,10, 7, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9,
+ 10,10,10,10,10,10, 7, 8, 8, 8, 8, 9, 9, 9, 9, 9,
+ 9,10,10,10,10,10,10, 8, 9, 8, 9, 9, 9, 9, 9, 9,
+ 10,10,10,10,10,10,10,10, 8, 8, 8, 9, 9, 9, 9, 9,
+ 10,10,10,10,10,10,10,10,10, 9, 9, 9, 9, 9,10,10,
+ 10,10,10,10,10,10,10,10,10,10, 9, 9, 9, 9, 9,10,
+ 10,10,10,10,10,10,10,10,10,10,10, 9, 9, 9, 9,10,
+ 10,10,10,10,10,10,10,10,10,10,10,10, 9, 9, 9, 9,
+ 10,10,10,10,10,10,10,10,10,11,10,10,10, 9, 9, 9,
+ 10,10,10,10,10,10,10,10,10,10,10,10,10,10, 9, 9,
+ 9,10,10,10,10,10,10,10,10,10,10,10,10,10,10, 9,
+ 10, 9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,
+ 9,10, 9,10,10,10,10,10,10,10,10,10,10,11,10,10,
+ 10,
+};
+
+static const static_codebook _44u4__p7_2 = {
+ 2, 289,
+ (char *)_vq_lengthlist__44u4__p7_2,
+ 1, -529530880, 1611661312, 5, 0,
+ (long *)_vq_quantlist__44u4__p7_2,
+ 0
+};
+
+static const char _huff_lengthlist__44u4__short[] = {
+ 14,17,15,17,16,14,13,16,10, 7, 7,10,13,10,15,16,
+ 9, 4, 4, 6, 5, 7, 9,16,12, 8, 7, 8, 8, 8,11,16,
+ 14, 7, 4, 6, 3, 5, 8,15,13, 8, 5, 7, 4, 5, 7,16,
+ 12, 9, 6, 8, 3, 3, 5,16,14,13, 7,10, 5, 5, 7,15,
+};
+
+static const static_codebook _huff_book__44u4__short = {
+ 2, 64,
+ (char *)_huff_lengthlist__44u4__short,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
+static const char _huff_lengthlist__44u5__long[] = {
+ 3, 8,13,12,14,12,16,11,13,14, 5, 4, 5, 6, 7, 8,
+ 10, 9,12,15,10, 5, 5, 5, 6, 8, 9, 9,13,15,10, 5,
+ 5, 6, 6, 7, 8, 8,11,13,12, 7, 5, 6, 4, 6, 7, 7,
+ 11,14,11, 7, 7, 6, 6, 6, 7, 6,10,14,14, 9, 8, 8,
+ 6, 7, 7, 7,11,16,11, 8, 8, 7, 6, 6, 7, 4, 7,12,
+ 10,10,12,10,10, 9,10, 5, 6, 9,10,12,15,13,14,14,
+ 14, 8, 7, 8,
+};
+
+static const static_codebook _huff_book__44u5__long = {
+ 2, 100,
+ (char *)_huff_lengthlist__44u5__long,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
+static const long _vq_quantlist__44u5__p1_0[] = {
+ 1,
+ 0,
+ 2,
+};
+
+static const char _vq_lengthlist__44u5__p1_0[] = {
+ 1, 4, 4, 5, 8, 7, 5, 7, 7, 5, 8, 8, 8,10,10, 7,
+ 9,10, 5, 8, 8, 7,10, 9, 8,10,10, 5, 8, 8, 8,10,
+ 10, 8,10,10, 8,10,10,10,12,13,10,13,13, 7,10,10,
+ 10,13,11,10,13,13, 4, 8, 8, 8,11,10, 8,10,10, 7,
+ 10,10,10,13,13,10,11,13, 8,10,11,10,13,13,10,13,
+ 12,
+};
+
+static const static_codebook _44u5__p1_0 = {
+ 4, 81,
+ (char *)_vq_lengthlist__44u5__p1_0,
+ 1, -535822336, 1611661312, 2, 0,
+ (long *)_vq_quantlist__44u5__p1_0,
+ 0
+};
+
+static const long _vq_quantlist__44u5__p2_0[] = {
+ 1,
+ 0,
+ 2,
+};
+
+static const char _vq_lengthlist__44u5__p2_0[] = {
+ 3, 4, 4, 5, 6, 6, 5, 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, 9, 8, 9, 9, 6, 8, 7,
+ 7, 9, 8, 8, 9, 9, 5, 6, 6, 6, 8, 7, 6, 8, 8, 6,
+ 8, 7, 8, 9, 9, 7, 8, 9, 6, 8, 8, 8, 9, 9, 8, 9,
+ 9,
+};
+
+static const static_codebook _44u5__p2_0 = {
+ 4, 81,
+ (char *)_vq_lengthlist__44u5__p2_0,
+ 1, -535822336, 1611661312, 2, 0,
+ (long *)_vq_quantlist__44u5__p2_0,
+ 0
+};
+
+static const long _vq_quantlist__44u5__p3_0[] = {
+ 2,
+ 1,
+ 3,
+ 0,
+ 4,
+};
+
+static const char _vq_lengthlist__44u5__p3_0[] = {
+ 2, 4, 5, 8, 8, 5, 7, 6, 9, 9, 5, 6, 7, 9, 9, 8,
+ 10, 9,13,12, 8, 9,10,12,12, 5, 7, 7,10,10, 7, 9,
+ 9,11,11, 6, 8, 9,11,11,10,11,11,14,14, 9,10,11,
+ 13,14, 5, 7, 7, 9,10, 7, 9, 8,11,11, 7, 9, 9,11,
+ 11, 9,11,10,14,13,10,11,11,14,14, 8,10,10,13,13,
+ 10,11,11,15,14, 9,11,11,14,14,13,14,14,17,16,12,
+ 13,13,15,16, 8,10,10,13,13, 9,11,11,14,15,10,11,
+ 11,14,15,12,14,13,16,16,13,15,14,15,17, 5, 7, 7,
+ 10,10, 7, 9, 9,11,11, 7, 9, 9,11,11,10,11,11,14,
+ 14,10,11,12,14,14, 7, 9, 9,12,11, 9,11,11,13,13,
+ 9,11,11,13,13,12,13,13,15,16,11,12,13,15,16, 6,
+ 9, 9,11,11, 8,11,10,13,12, 9,11,11,13,14,11,13,
+ 12,16,14,11,13,13,16,17,10,12,11,15,15,11,13,13,
+ 16,16,11,13,13,17,16,14,15,15,17,17,14,16,16,17,
+ 18, 9,11,11,14,15,10,12,12,15,15,11,13,13,16,17,
+ 13,15,13,17,15,14,15,16,18, 0, 5, 7, 7,10,10, 7,
+ 9, 9,11,11, 7, 9, 9,11,11,10,11,11,14,14,10,11,
+ 12,14,15, 6, 9, 9,12,11, 9,11,11,13,13, 8,10,11,
+ 12,13,11,13,13,16,15,11,12,13,14,15, 7, 9, 9,11,
+ 12, 9,11,11,13,13, 9,11,11,13,13,11,13,13,15,16,
+ 11,13,13,15,14, 9,11,11,15,14,11,13,13,17,15,10,
+ 12,12,15,15,14,16,16,17,17,13,13,15,15,17,10,11,
+ 12,15,15,11,13,13,16,16,11,13,13,15,15,14,15,15,
+ 18,18,14,15,15,17,17, 8,10,10,13,13,10,12,11,15,
+ 15,10,11,12,15,15,14,15,15,18,18,13,14,14,18,18,
+ 9,11,11,15,16,11,13,13,17,17,11,13,13,16,16,15,
+ 15,16,17, 0,14,15,17, 0, 0, 9,11,11,15,15,10,13,
+ 12,18,16,11,13,13,15,16,14,16,15,20,20,14,15,16,
+ 17, 0,13,14,14,20,16,14,15,16,19,18,14,15,15,19,
+ 0,18,16, 0,20,20,16,18,18, 0, 0,12,14,14,18,18,
+ 13,15,14,18,16,14,15,16,18,20,16,19,16, 0,17,17,
+ 18,18,19, 0, 8,10,10,14,14,10,11,11,14,15,10,11,
+ 12,15,15,13,15,14,19,17,13,15,15,17, 0, 9,11,11,
+ 16,15,11,13,13,16,16,10,12,13,15,17,14,16,16,18,
+ 18,14,15,15,18, 0, 9,11,11,15,15,11,13,13,16,17,
+ 11,13,13,18,17,14,18,16,18,18,15,17,17,18, 0,12,
+ 14,14,18,18,14,15,15,20, 0,13,14,15,17, 0,16,18,
+ 17, 0, 0,16,16, 0,17,20,12,14,14,18,18,14,16,15,
+ 0,18,14,16,15,18, 0,16,19,17, 0, 0,17,18,16, 0,
+ 0,
+};
+
+static const static_codebook _44u5__p3_0 = {
+ 4, 625,
+ (char *)_vq_lengthlist__44u5__p3_0,
+ 1, -533725184, 1611661312, 3, 0,
+ (long *)_vq_quantlist__44u5__p3_0,
+ 0
+};
+
+static const long _vq_quantlist__44u5__p4_0[] = {
+ 2,
+ 1,
+ 3,
+ 0,
+ 4,
+};
+
+static const char _vq_lengthlist__44u5__p4_0[] = {
+ 4, 5, 5, 8, 8, 6, 7, 6, 9, 9, 6, 6, 7, 9, 9, 8,
+ 9, 9,11,11, 8, 9, 9,11,11, 6, 7, 7, 9, 9, 7, 8,
+ 8,10,10, 6, 7, 8, 9,10, 9,10,10,11,12, 9, 9,10,
+ 11,12, 6, 7, 7, 9, 9, 6, 8, 7,10, 9, 7, 8, 8,10,
+ 10, 9,10, 9,12,11, 9,10,10,12,11, 8, 9, 9,12,11,
+ 9,10,10,12,12, 9,10,10,12,12,11,12,12,13,14,11,
+ 11,12,13,14, 8, 9, 9,11,12, 9,10,10,12,12, 9,10,
+ 10,12,12,11,12,11,14,13,11,12,12,13,13, 5, 7, 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,10,10, 8, 8, 9,10,11,
+ 8, 9, 9,11,11,10,10,11,11,13,10,11,11,12,13, 6,
+ 7, 8,10,10, 7, 9, 8,11,10, 8, 9, 9,11,11,10,11,
+ 10,13,11,10,11,11,12,12, 9,10,10,12,12,10,10,11,
+ 12,13,10,11,11,13,13,12,11,13,12,15,12,13,13,14,
+ 15, 9,10,10,12,12, 9,11,10,13,12,10,11,11,13,13,
+ 11,13,11,14,12,12,13,13,14,15, 5, 7, 7, 9, 9, 7,
+ 8, 8,10,10, 7, 8, 8,10,10, 9,10,10,12,12, 9,10,
+ 10,12,12, 6, 8, 7,10,10, 8, 9, 9,11,11, 7, 8, 9,
+ 10,11,10,11,11,12,12,10,10,11,11,13, 7, 8, 8,10,
+ 10, 8, 9, 9,11,11, 8, 9, 8,11,10,10,11,11,13,12,
+ 10,11,10,13,11, 9,10,10,12,12,10,11,11,13,12, 9,
+ 10,10,12,13,12,13,13,14,15,11,11,13,12,14, 9,10,
+ 10,12,12,10,11,11,13,13,10,11,10,13,12,12,13,13,
+ 14,14,12,13,11,14,12, 8, 9, 9,12,12, 9,10,10,12,
+ 12, 9,10,10,12,12,12,12,12,14,14,11,12,12,14,13,
+ 9,10,10,12,12,10,11,11,13,13,10,11,11,13,12,12,
+ 12,13,14,15,12,13,13,15,14, 9,10,10,12,12,10,11,
+ 10,13,12,10,11,11,12,13,12,13,12,15,13,12,13,13,
+ 14,15,11,12,12,14,13,11,12,12,14,15,12,13,13,15,
+ 14,13,12,14,12,16,13,14,14,15,15,11,11,12,14,14,
+ 11,12,11,14,13,12,13,13,14,15,13,14,12,16,12,14,
+ 14,15,16,16, 8, 9, 9,11,12, 9,10,10,12,12, 9,10,
+ 10,12,13,11,12,12,13,13,12,12,13,14,14, 9,10,10,
+ 12,12,10,11,10,13,12,10,10,11,12,13,12,13,13,15,
+ 14,12,12,13,13,15, 9,10,10,12,13,10,11,11,12,13,
+ 10,11,11,13,13,12,13,13,14,15,12,13,12,15,14,11,
+ 12,11,14,13,12,13,13,15,14,11,11,12,13,14,14,15,
+ 14,16,15,13,12,14,13,16,11,12,12,13,14,12,13,13,
+ 14,15,11,12,11,14,14,14,14,14,15,16,13,15,12,16,
+ 12,
+};
+
+static const static_codebook _44u5__p4_0 = {
+ 4, 625,
+ (char *)_vq_lengthlist__44u5__p4_0,
+ 1, -533725184, 1611661312, 3, 0,
+ (long *)_vq_quantlist__44u5__p4_0,
+ 0
+};
+
+static const long _vq_quantlist__44u5__p5_0[] = {
+ 4,
+ 3,
+ 5,
+ 2,
+ 6,
+ 1,
+ 7,
+ 0,
+ 8,
+};
+
+static const char _vq_lengthlist__44u5__p5_0[] = {
+ 2, 3, 3, 6, 6, 8, 8,10,10, 4, 5, 5, 8, 7, 8, 8,
+ 11,10, 3, 5, 5, 7, 8, 8, 8,10,11, 6, 8, 7,10, 9,
+ 10,10,11,11, 6, 7, 8, 9, 9, 9,10,11,12, 8, 8, 8,
+ 10,10,11,11,13,12, 8, 8, 9, 9,10,11,11,12,13,10,
+ 11,10,12,11,13,12,14,14,10,10,11,11,12,12,13,14,
+ 14,
+};
+
+static const static_codebook _44u5__p5_0 = {
+ 2, 81,
+ (char *)_vq_lengthlist__44u5__p5_0,
+ 1, -531628032, 1611661312, 4, 0,
+ (long *)_vq_quantlist__44u5__p5_0,
+ 0
+};
+
+static const long _vq_quantlist__44u5__p6_0[] = {
+ 4,
+ 3,
+ 5,
+ 2,
+ 6,
+ 1,
+ 7,
+ 0,
+ 8,
+};
+
+static const char _vq_lengthlist__44u5__p6_0[] = {
+ 3, 4, 4, 5, 5, 7, 7, 9, 9, 4, 5, 4, 6, 6, 7, 7,
+ 9, 9, 4, 4, 5, 6, 6, 7, 7, 9, 9, 5, 6, 6, 7, 7,
+ 8, 8,10,10, 6, 6, 6, 7, 7, 8, 8,10,10, 7, 7, 7,
+ 8, 8, 9, 9,11,10, 7, 7, 7, 8, 8, 9, 9,10,11, 9,
+ 9, 9,10,10,11,10,11,11, 9, 9, 9,10,10,11,10,11,
+ 11,
+};
+
+static const static_codebook _44u5__p6_0 = {
+ 2, 81,
+ (char *)_vq_lengthlist__44u5__p6_0,
+ 1, -531628032, 1611661312, 4, 0,
+ (long *)_vq_quantlist__44u5__p6_0,
+ 0
+};
+
+static const long _vq_quantlist__44u5__p7_0[] = {
+ 1,
+ 0,
+ 2,
+};
+
+static const char _vq_lengthlist__44u5__p7_0[] = {
+ 1, 4, 4, 5, 7, 7, 5, 7, 7, 5, 9, 9, 8,11,10, 7,
+ 11,10, 5, 9, 9, 7,10,10, 8,10,11, 4, 9, 9, 9,12,
+ 12, 9,12,12, 8,12,12,11,12,12,10,12,13, 7,12,12,
+ 11,12,12,10,12,13, 4, 9, 9, 9,12,12, 9,12,12, 7,
+ 12,11,10,13,13,11,12,12, 7,12,12,10,13,13,11,12,
+ 12,
+};
+
+static const static_codebook _44u5__p7_0 = {
+ 4, 81,
+ (char *)_vq_lengthlist__44u5__p7_0,
+ 1, -529137664, 1618345984, 2, 0,
+ (long *)_vq_quantlist__44u5__p7_0,
+ 0
+};
+
+static const long _vq_quantlist__44u5__p7_1[] = {
+ 5,
+ 4,
+ 6,
+ 3,
+ 7,
+ 2,
+ 8,
+ 1,
+ 9,
+ 0,
+ 10,
+};
+
+static const char _vq_lengthlist__44u5__p7_1[] = {
+ 2, 4, 4, 6, 6, 7, 7, 8, 8, 8, 8, 4, 5, 5, 7, 7,
+ 8, 8, 9, 8, 8, 9, 4, 5, 5, 7, 7, 8, 8, 9, 9, 8,
+ 9, 6, 7, 7, 8, 8, 9, 8, 9, 9, 9, 9, 6, 7, 7, 8,
+ 8, 9, 9, 9, 9, 9, 9, 7, 8, 8, 9, 9, 9, 9, 9, 9,
+ 9, 9, 7, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9, 8, 9, 9,
+ 9, 9, 9, 9,10,10,10,10, 8, 9, 9, 9, 9, 9, 9,10,
+ 10,10,10, 8, 9, 9, 9, 9, 9, 9,10,10,10,10, 8, 9,
+ 9, 9, 9, 9, 9,10,10,10,10,
+};
+
+static const static_codebook _44u5__p7_1 = {
+ 2, 121,
+ (char *)_vq_lengthlist__44u5__p7_1,
+ 1, -531365888, 1611661312, 4, 0,
+ (long *)_vq_quantlist__44u5__p7_1,
+ 0
+};
+
+static const long _vq_quantlist__44u5__p8_0[] = {
+ 5,
+ 4,
+ 6,
+ 3,
+ 7,
+ 2,
+ 8,
+ 1,
+ 9,
+ 0,
+ 10,
+};
+
+static const char _vq_lengthlist__44u5__p8_0[] = {
+ 1, 4, 4, 6, 6, 8, 8, 9, 9,10,10, 4, 6, 6, 7, 7,
+ 9, 9,10,10,11,11, 4, 6, 6, 7, 7, 9, 9,10,10,11,
+ 11, 6, 8, 7, 9, 9,10,10,11,11,13,12, 6, 8, 8, 9,
+ 9,10,10,11,11,12,13, 8, 9, 9,10,10,12,12,13,12,
+ 14,13, 8, 9, 9,10,10,12,12,13,13,14,14, 9,11,11,
+ 12,12,13,13,14,14,15,14, 9,11,11,12,12,13,13,14,
+ 14,15,14,11,12,12,13,13,14,14,15,14,15,14,11,11,
+ 12,13,13,14,14,14,14,15,15,
+};
+
+static const static_codebook _44u5__p8_0 = {
+ 2, 121,
+ (char *)_vq_lengthlist__44u5__p8_0,
+ 1, -524582912, 1618345984, 4, 0,
+ (long *)_vq_quantlist__44u5__p8_0,
+ 0
+};
+
+static const long _vq_quantlist__44u5__p8_1[] = {
+ 5,
+ 4,
+ 6,
+ 3,
+ 7,
+ 2,
+ 8,
+ 1,
+ 9,
+ 0,
+ 10,
+};
+
+static const char _vq_lengthlist__44u5__p8_1[] = {
+ 3, 5, 5, 6, 6, 7, 7, 7, 7, 7, 7, 5, 6, 5, 7, 6,
+ 7, 7, 8, 8, 8, 8, 5, 5, 5, 6, 6, 7, 7, 8, 8, 8,
+ 8, 6, 7, 6, 7, 7, 8, 8, 8, 8, 8, 8, 6, 6, 7, 7,
+ 7, 8, 8, 8, 8, 8, 8, 7, 7, 7, 8, 8, 8, 8, 8, 8,
+ 8, 8, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8, 8, 7, 8, 8,
+ 8, 8, 8, 8, 8, 8, 8, 8, 7, 8, 8, 8, 8, 8, 8, 8,
+ 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8,
+ 8, 8, 8, 8, 8, 8, 8, 8, 8,
+};
+
+static const static_codebook _44u5__p8_1 = {
+ 2, 121,
+ (char *)_vq_lengthlist__44u5__p8_1,
+ 1, -531365888, 1611661312, 4, 0,
+ (long *)_vq_quantlist__44u5__p8_1,
+ 0
+};
+
+static const long _vq_quantlist__44u5__p9_0[] = {
+ 6,
+ 5,
+ 7,
+ 4,
+ 8,
+ 3,
+ 9,
+ 2,
+ 10,
+ 1,
+ 11,
+ 0,
+ 12,
+};
+
+static const char _vq_lengthlist__44u5__p9_0[] = {
+ 1, 3, 2,12,10,13,13,13,13,13,13,13,13, 4, 9, 9,
+ 13,13,13,13,13,13,13,13,13,13, 5,10, 9,13,13,13,
+ 13,13,13,13,13,13,13,12,13,13,13,13,13,13,13,13,
+ 13,13,13,13,11,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
+ 13,13,13,13,13,13,13,13,13,13,13,13,13,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,
+};
+
+static const static_codebook _44u5__p9_0 = {
+ 2, 169,
+ (char *)_vq_lengthlist__44u5__p9_0,
+ 1, -514332672, 1627381760, 4, 0,
+ (long *)_vq_quantlist__44u5__p9_0,
+ 0
+};
+
+static const long _vq_quantlist__44u5__p9_1[] = {
+ 7,
+ 6,
+ 8,
+ 5,
+ 9,
+ 4,
+ 10,
+ 3,
+ 11,
+ 2,
+ 12,
+ 1,
+ 13,
+ 0,
+ 14,
+};
+
+static const char _vq_lengthlist__44u5__p9_1[] = {
+ 1, 4, 4, 7, 7, 8, 8, 8, 7, 8, 7, 9, 8, 9, 9, 4,
+ 7, 6, 9, 8,10,10, 9, 8, 9, 9, 9, 9, 9, 8, 5, 6,
+ 6, 8, 9,10,10, 9, 9, 9,10,10,10,10,11, 7, 8, 8,
+ 10,10,11,11,10,10,11,11,11,12,11,11, 7, 8, 8,10,
+ 10,11,11,10,10,11,11,12,11,11,11, 8, 9, 9,11,11,
+ 12,12,11,11,12,11,12,12,12,12, 8, 9,10,11,11,12,
+ 12,11,11,12,12,12,12,12,12, 8, 9, 9,10,10,12,11,
+ 12,12,12,12,12,12,12,13, 8, 9, 9,11,11,11,11,12,
+ 12,12,12,13,12,13,13, 9,10,10,11,11,12,12,12,13,
+ 12,13,13,13,14,13, 9,10,10,11,11,12,12,12,13,13,
+ 12,13,13,14,13, 9,11,10,12,11,13,12,12,13,13,13,
+ 13,13,13,14, 9,10,10,12,12,12,12,12,13,13,13,13,
+ 13,14,14,10,11,11,12,12,12,13,13,13,14,14,13,14,
+ 14,14,10,11,11,12,12,12,12,13,12,13,14,13,14,14,
+ 14,
+};
+
+static const static_codebook _44u5__p9_1 = {
+ 2, 225,
+ (char *)_vq_lengthlist__44u5__p9_1,
+ 1, -522338304, 1620115456, 4, 0,
+ (long *)_vq_quantlist__44u5__p9_1,
+ 0
+};
+
+static const long _vq_quantlist__44u5__p9_2[] = {
+ 8,
+ 7,
+ 9,
+ 6,
+ 10,
+ 5,
+ 11,
+ 4,
+ 12,
+ 3,
+ 13,
+ 2,
+ 14,
+ 1,
+ 15,
+ 0,
+ 16,
+};
+
+static const char _vq_lengthlist__44u5__p9_2[] = {
+ 2, 5, 5, 7, 7, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9,
+ 9, 5, 6, 6, 7, 7, 8, 8, 9, 8, 9, 9, 9, 9, 9, 9,
+ 9, 9, 5, 6, 6, 7, 7, 8, 8, 9, 8, 9, 9, 9, 9, 9,
+ 9, 9, 9, 7, 7, 7, 8, 8, 9, 8, 9, 9, 9, 9, 9, 9,
+ 9, 9, 9, 9, 7, 7, 7, 8, 8, 9, 8, 9, 9, 9, 9, 9,
+ 9, 9, 9, 9, 9, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9,
+ 9,10, 9,10,10,10, 8, 8, 8, 9, 8, 9, 9, 9, 9, 9,
+ 9, 9,10, 9,10, 9,10, 8, 9, 9, 9, 9, 9, 9, 9, 9,
+ 9,10, 9,10,10,10,10,10, 8, 9, 9, 9, 9, 9, 9,10,
+ 9,10, 9,10,10,10,10,10,10, 9, 9, 9, 9, 9,10, 9,
+ 10,10,10,10,10,10,10,10,10,10, 9, 9, 9, 9, 9, 9,
+ 9,10, 9,10, 9,10,10,10,10,10,10, 9, 9, 9, 9, 9,
+ 10,10,10,10,10,10,10,10,10,10,10,10, 9, 9, 9, 9,
+ 9, 9,10,10,10,10,10,10,10,10,10,10,10, 9, 9, 9,
+ 9,10,10, 9,10,10,10,10,10,10,10,10,10,10, 9, 9,
+ 9, 9, 9,10,10,10,10,10,10,10,10,10,10,10,10, 9,
+ 9, 9, 9, 9,10,10,10,10,10,10,10,10,10,10,10,10,
+ 9, 9, 9,10, 9,10,10,10,10,10,10,10,10,10,10,10,
+ 10,
+};
+
+static const static_codebook _44u5__p9_2 = {
+ 2, 289,
+ (char *)_vq_lengthlist__44u5__p9_2,
+ 1, -529530880, 1611661312, 5, 0,
+ (long *)_vq_quantlist__44u5__p9_2,
+ 0
+};
+
+static const char _huff_lengthlist__44u5__short[] = {
+ 4,10,17,13,17,13,17,17,17,17, 3, 6, 8, 9,11, 9,
+ 15,12,16,17, 6, 5, 5, 7, 7, 8,10,11,17,17, 7, 8,
+ 7, 9, 9,10,13,13,17,17, 8, 6, 5, 7, 4, 7, 5, 8,
+ 14,17, 9, 9, 8, 9, 7, 9, 8,10,16,17,12,10, 7, 8,
+ 4, 7, 4, 7,16,17,12,11, 9,10, 6, 9, 5, 7,14,17,
+ 14,13,10,15, 4, 8, 3, 5,14,17,17,14,11,15, 6,10,
+ 6, 8,15,17,
+};
+
+static const static_codebook _huff_book__44u5__short = {
+ 2, 100,
+ (char *)_huff_lengthlist__44u5__short,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
+static const char _huff_lengthlist__44u6__long[] = {
+ 3, 9,14,13,14,13,16,12,13,14, 5, 4, 6, 6, 8, 9,
+ 11,10,12,15,10, 5, 5, 6, 6, 8,10,10,13,16,10, 6,
+ 6, 6, 6, 8, 9, 9,12,14,13, 7, 6, 6, 4, 6, 6, 7,
+ 11,14,10, 7, 7, 7, 6, 6, 6, 7,10,13,15,10, 9, 8,
+ 5, 6, 5, 6,10,14,10, 9, 8, 8, 6, 6, 5, 4, 6,11,
+ 11,11,12,11,10, 9, 9, 5, 5, 9,10,12,15,13,13,13,
+ 13, 8, 7, 7,
+};
+
+static const static_codebook _huff_book__44u6__long = {
+ 2, 100,
+ (char *)_huff_lengthlist__44u6__long,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
+static const long _vq_quantlist__44u6__p1_0[] = {
+ 1,
+ 0,
+ 2,
+};
+
+static const char _vq_lengthlist__44u6__p1_0[] = {
+ 1, 4, 4, 4, 8, 7, 5, 7, 7, 5, 8, 8, 8,10,10, 7,
+ 9,10, 5, 8, 8, 7,10, 9, 8,10,10, 5, 8, 8, 8,10,
+ 10, 8,10,10, 8,10,10,10,12,13,10,13,13, 7,10,10,
+ 10,13,11,10,13,13, 5, 8, 8, 8,11,10, 8,10,10, 7,
+ 10,10,10,13,13,10,11,13, 8,10,11,10,13,13,10,13,
+ 12,
+};
+
+static const static_codebook _44u6__p1_0 = {
+ 4, 81,
+ (char *)_vq_lengthlist__44u6__p1_0,
+ 1, -535822336, 1611661312, 2, 0,
+ (long *)_vq_quantlist__44u6__p1_0,
+ 0
+};
+
+static const long _vq_quantlist__44u6__p2_0[] = {
+ 1,
+ 0,
+ 2,
+};
+
+static const char _vq_lengthlist__44u6__p2_0[] = {
+ 3, 4, 4, 5, 6, 6, 5, 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, 9, 8, 9, 9, 6, 7, 7,
+ 7, 9, 8, 8, 9, 9, 5, 6, 6, 6, 8, 7, 6, 8, 8, 6,
+ 8, 8, 8, 9, 9, 7, 8, 9, 6, 8, 8, 8, 9, 9, 8, 9,
+ 9,
+};
+
+static const static_codebook _44u6__p2_0 = {
+ 4, 81,
+ (char *)_vq_lengthlist__44u6__p2_0,
+ 1, -535822336, 1611661312, 2, 0,
+ (long *)_vq_quantlist__44u6__p2_0,
+ 0
+};
+
+static const long _vq_quantlist__44u6__p3_0[] = {
+ 2,
+ 1,
+ 3,
+ 0,
+ 4,
+};
+
+static const char _vq_lengthlist__44u6__p3_0[] = {
+ 2, 5, 4, 8, 8, 5, 7, 6, 9, 9, 5, 6, 7, 9, 9, 8,
+ 9, 9,13,12, 8, 9,10,12,13, 5, 7, 7,10, 9, 7, 9,
+ 9,11,11, 7, 8, 9,11,11,10,11,11,14,14, 9,10,11,
+ 13,14, 5, 7, 7, 9,10, 6, 9, 8,11,11, 7, 9, 9,11,
+ 11, 9,11,10,14,13,10,11,11,14,13, 8,10,10,13,13,
+ 10,11,11,15,15, 9,11,11,14,14,13,14,14,17,16,12,
+ 13,14,16,16, 8,10,10,13,14, 9,11,11,14,15,10,11,
+ 12,14,15,12,14,13,16,15,13,14,14,15,17, 5, 7, 7,
+ 10,10, 7, 9, 9,11,11, 7, 9, 9,11,11,10,12,11,14,
+ 14,10,11,11,14,14, 7, 9, 9,12,11, 9,11,11,13,13,
+ 9,11,11,13,13,11,13,13,14,15,11,12,13,15,16, 6,
+ 9, 9,11,12, 8,11,10,13,12, 9,11,11,13,14,11,13,
+ 12,16,14,11,13,13,15,16,10,12,11,14,15,11,13,13,
+ 15,17,11,13,13,17,16,15,15,16,17,16,14,15,16,18,
+ 0, 9,11,11,14,15,10,12,12,16,15,11,13,13,16,16,
+ 13,15,14,18,15,14,16,16, 0, 0, 5, 7, 7,10,10, 7,
+ 9, 9,11,11, 7, 9, 9,11,11,10,11,11,14,14,10,11,
+ 12,14,14, 6, 9, 9,11,11, 9,11,11,13,13, 8,10,11,
+ 12,13,11,13,13,16,15,11,12,13,14,16, 7, 9, 9,11,
+ 12, 9,11,11,13,13, 9,11,11,13,13,11,13,13,16,15,
+ 11,13,12,15,15, 9,11,11,15,14,11,13,13,17,16,10,
+ 12,13,15,16,14,16,16, 0,18,14,14,15,15,17,10,11,
+ 12,15,15,11,13,13,16,16,11,13,13,16,16,14,16,16,
+ 19,17,14,15,15,17,17, 8,10,10,14,14,10,12,11,15,
+ 15,10,11,12,16,15,14,15,15,18,20,13,14,16,17,18,
+ 9,11,11,15,16,11,13,13,17,17,11,13,13,17,16,15,
+ 16,16, 0, 0,15,16,16, 0, 0, 9,11,11,15,15,10,13,
+ 12,17,15,11,13,13,17,16,15,17,15,20,19,15,16,16,
+ 19, 0,13,15,14, 0,17,14,15,16, 0,20,15,16,16, 0,
+ 19,17,18, 0, 0, 0,16,17,18, 0, 0,12,14,14,19,18,
+ 13,15,14, 0,17,14,15,16,19,19,16,18,16, 0,19,19,
+ 20,17,20, 0, 8,10,10,13,14,10,11,11,15,15,10,12,
+ 12,15,16,14,15,14,19,16,14,15,15, 0,18, 9,11,11,
+ 16,15,11,13,13, 0,16,11,12,13,16,17,14,16,17, 0,
+ 19,15,16,16,18, 0, 9,11,11,15,16,11,13,13,16,16,
+ 11,14,13,18,17,15,16,16,18,20,15,17,19, 0, 0,12,
+ 14,14,17,17,14,16,15, 0, 0,13,14,15,19, 0,16,18,
+ 20, 0, 0,16,16,18,18, 0,12,14,14,17,20,14,16,16,
+ 19, 0,14,16,14, 0,20,16,20,17, 0, 0,17, 0,15, 0,
+ 19,
+};
+
+static const static_codebook _44u6__p3_0 = {
+ 4, 625,
+ (char *)_vq_lengthlist__44u6__p3_0,
+ 1, -533725184, 1611661312, 3, 0,
+ (long *)_vq_quantlist__44u6__p3_0,
+ 0
+};
+
+static const long _vq_quantlist__44u6__p4_0[] = {
+ 2,
+ 1,
+ 3,
+ 0,
+ 4,
+};
+
+static const char _vq_lengthlist__44u6__p4_0[] = {
+ 4, 5, 5, 8, 8, 6, 7, 6, 9, 9, 6, 6, 7, 9, 9, 8,
+ 9, 9,11,11, 8, 9, 9,11,11, 6, 7, 7, 9, 9, 7, 8,
+ 8,10,10, 7, 7, 8, 9,10, 9,10,10,11,11, 9, 9,10,
+ 11,12, 6, 7, 7, 9, 9, 7, 8, 7,10, 9, 7, 8, 8,10,
+ 10, 9,10, 9,12,11, 9,10,10,12,11, 8, 9, 9,11,11,
+ 9,10,10,12,12, 9,10,10,12,12,11,12,12,14,13,11,
+ 11,12,13,13, 8, 9, 9,11,11, 9,10,10,12,12, 9,10,
+ 10,12,12,11,12,11,13,12,11,12,12,13,13, 5, 7, 7,
+ 9, 9, 7, 8, 7,10,10, 7, 7, 8,10,10, 9,10,10,12,
+ 11, 9,10,10,11,12, 7, 8, 8,10,10, 8, 8, 9,11,11,
+ 8, 9, 9,11,11,10,10,11,12,13,10,10,11,12,12, 6,
+ 7, 7,10,10, 7, 9, 8,11,10, 8, 8, 9,10,11,10,11,
+ 10,13,11,10,11,11,12,12, 9,10,10,12,12,10,10,11,
+ 13,13,10,11,11,12,13,12,12,12,13,14,12,12,13,14,
+ 14, 9,10,10,12,12, 9,10,10,13,12,10,11,11,13,13,
+ 11,12,11,14,12,12,13,13,14,14, 6, 7, 7, 9, 9, 7,
+ 8, 7,10,10, 7, 8, 8,10,10, 9,10,10,12,11, 9,10,
+ 10,11,12, 6, 7, 7,10,10, 8, 9, 8,11,10, 7, 8, 9,
+ 10,11,10,11,11,12,12,10,10,11,11,13, 7, 8, 8,10,
+ 10, 8, 9, 9,11,11, 8, 9, 8,11,11,10,11,10,13,12,
+ 10,11,11,13,12, 9,10,10,12,12,10,11,11,13,12, 9,
+ 10,10,12,13,12,13,12,14,14,11,11,12,12,14, 9,10,
+ 10,12,12,10,11,11,13,13,10,11,10,13,12,12,12,12,
+ 14,14,12,13,12,14,13, 8, 9, 9,11,11, 9,10,10,12,
+ 12, 9,10,10,12,12,11,12,12,14,13,11,12,12,13,14,
+ 9,10,10,12,12,10,11,11,13,13,10,11,11,13,13,12,
+ 12,13,14,15,12,12,13,14,14, 9,10,10,12,12, 9,11,
+ 10,13,12,10,10,11,12,13,12,13,12,14,13,12,12,13,
+ 14,15,11,12,12,14,13,11,12,12,14,14,12,13,13,14,
+ 14,13,13,14,14,16,13,14,14,15,15,11,12,11,13,13,
+ 11,12,11,14,13,12,12,13,14,15,12,14,12,15,12,13,
+ 14,15,15,16, 8, 9, 9,11,11, 9,10,10,12,12, 9,10,
+ 10,12,12,11,12,12,14,13,11,12,12,13,13, 9,10,10,
+ 12,12,10,11,10,13,12, 9,10,11,12,13,12,13,12,14,
+ 14,12,12,13,13,14, 9,10,10,12,12,10,11,11,13,13,
+ 10,11,11,13,13,12,13,12,14,14,12,13,13,14,14,11,
+ 11,11,13,13,12,13,12,14,14,11,11,12,13,14,14,14,
+ 14,16,15,12,12,14,12,15,11,12,12,13,14,12,13,13,
+ 14,15,11,12,12,14,14,13,14,14,16,16,13,14,13,16,
+ 13,
+};
+
+static const static_codebook _44u6__p4_0 = {
+ 4, 625,
+ (char *)_vq_lengthlist__44u6__p4_0,
+ 1, -533725184, 1611661312, 3, 0,
+ (long *)_vq_quantlist__44u6__p4_0,
+ 0
+};
+
+static const long _vq_quantlist__44u6__p5_0[] = {
+ 4,
+ 3,
+ 5,
+ 2,
+ 6,
+ 1,
+ 7,
+ 0,
+ 8,
+};
+
+static const char _vq_lengthlist__44u6__p5_0[] = {
+ 2, 3, 3, 6, 6, 8, 8,10,10, 4, 5, 5, 8, 7, 8, 8,
+ 11,11, 3, 5, 5, 7, 8, 8, 8,11,11, 6, 8, 7, 9, 9,
+ 10, 9,12,11, 6, 7, 8, 9, 9, 9,10,11,12, 8, 8, 8,
+ 10, 9,12,11,13,13, 8, 8, 9, 9,10,11,12,13,13,10,
+ 11,11,12,12,13,13,14,14,10,10,11,11,12,13,13,14,
+ 14,
+};
+
+static const static_codebook _44u6__p5_0 = {
+ 2, 81,
+ (char *)_vq_lengthlist__44u6__p5_0,
+ 1, -531628032, 1611661312, 4, 0,
+ (long *)_vq_quantlist__44u6__p5_0,
+ 0
+};
+
+static const long _vq_quantlist__44u6__p6_0[] = {
+ 4,
+ 3,
+ 5,
+ 2,
+ 6,
+ 1,
+ 7,
+ 0,
+ 8,
+};
+
+static const char _vq_lengthlist__44u6__p6_0[] = {
+ 3, 4, 4, 5, 5, 7, 7, 9, 9, 4, 5, 4, 6, 6, 7, 7,
+ 9, 9, 4, 4, 5, 6, 6, 7, 8, 9, 9, 5, 6, 6, 7, 7,
+ 8, 8,10,10, 5, 6, 6, 7, 7, 8, 8,10,10, 7, 8, 7,
+ 8, 8,10, 9,11,11, 7, 7, 8, 8, 8, 9,10,10,11, 9,
+ 9, 9,10,10,11,11,12,11, 9, 9, 9,10,10,11,11,11,
+ 12,
+};
+
+static const static_codebook _44u6__p6_0 = {
+ 2, 81,
+ (char *)_vq_lengthlist__44u6__p6_0,
+ 1, -531628032, 1611661312, 4, 0,
+ (long *)_vq_quantlist__44u6__p6_0,
+ 0
+};
+
+static const long _vq_quantlist__44u6__p7_0[] = {
+ 1,
+ 0,
+ 2,
+};
+
+static const char _vq_lengthlist__44u6__p7_0[] = {
+ 1, 4, 4, 5, 7, 7, 5, 7, 7, 5, 9, 8, 7,10,10, 8,
+ 10,10, 5, 8, 9, 7,10,10, 7,10, 9, 4, 8, 8, 9,11,
+ 11, 8,11,11, 7,11,11,10,10,13,10,13,13, 7,11,11,
+ 10,13,12,10,13,13, 5, 9, 8, 8,11,11, 9,11,11, 7,
+ 11,11,10,13,13,10,12,13, 7,11,11,10,13,13, 9,13,
+ 10,
+};
+
+static const static_codebook _44u6__p7_0 = {
+ 4, 81,
+ (char *)_vq_lengthlist__44u6__p7_0,
+ 1, -529137664, 1618345984, 2, 0,
+ (long *)_vq_quantlist__44u6__p7_0,
+ 0
+};
+
+static const long _vq_quantlist__44u6__p7_1[] = {
+ 5,
+ 4,
+ 6,
+ 3,
+ 7,
+ 2,
+ 8,
+ 1,
+ 9,
+ 0,
+ 10,
+};
+
+static const char _vq_lengthlist__44u6__p7_1[] = {
+ 3, 4, 4, 6, 6, 7, 7, 8, 8, 8, 8, 4, 5, 5, 7, 6,
+ 8, 8, 8, 8, 8, 8, 4, 5, 5, 6, 7, 8, 8, 8, 8, 8,
+ 8, 6, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 6, 7, 7, 7,
+ 7, 8, 8, 8, 8, 8, 8, 7, 8, 8, 8, 8, 8, 8, 9, 9,
+ 9, 9, 7, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9, 8, 8, 8,
+ 8, 8, 9, 9, 9, 9, 9, 9, 8, 8, 8, 8, 8, 9, 9, 9,
+ 9, 9, 9, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 8, 8,
+ 8, 8, 8, 9, 9, 9, 9, 9, 9,
+};
+
+static const static_codebook _44u6__p7_1 = {
+ 2, 121,
+ (char *)_vq_lengthlist__44u6__p7_1,
+ 1, -531365888, 1611661312, 4, 0,
+ (long *)_vq_quantlist__44u6__p7_1,
+ 0
+};
+
+static const long _vq_quantlist__44u6__p8_0[] = {
+ 5,
+ 4,
+ 6,
+ 3,
+ 7,
+ 2,
+ 8,
+ 1,
+ 9,
+ 0,
+ 10,
+};
+
+static const char _vq_lengthlist__44u6__p8_0[] = {
+ 1, 4, 4, 6, 6, 8, 8, 9, 9,10,10, 4, 6, 6, 7, 7,
+ 9, 9,10,10,11,11, 4, 6, 6, 7, 7, 9, 9,10,10,11,
+ 11, 6, 8, 8, 9, 9,10,10,11,11,12,12, 6, 8, 8, 9,
+ 9,10,10,11,11,12,12, 8, 9, 9,10,10,11,11,12,12,
+ 13,13, 8, 9, 9,10,10,11,11,12,12,13,13,10,10,10,
+ 11,11,13,13,13,13,15,14, 9,10,10,12,11,12,13,13,
+ 13,14,15,11,12,12,13,13,13,13,15,14,15,15,11,11,
+ 12,13,13,14,14,14,15,15,15,
+};
+
+static const static_codebook _44u6__p8_0 = {
+ 2, 121,
+ (char *)_vq_lengthlist__44u6__p8_0,
+ 1, -524582912, 1618345984, 4, 0,
+ (long *)_vq_quantlist__44u6__p8_0,
+ 0
+};
+
+static const long _vq_quantlist__44u6__p8_1[] = {
+ 5,
+ 4,
+ 6,
+ 3,
+ 7,
+ 2,
+ 8,
+ 1,
+ 9,
+ 0,
+ 10,
+};
+
+static const char _vq_lengthlist__44u6__p8_1[] = {
+ 3, 5, 5, 6, 6, 7, 7, 7, 7, 7, 7, 5, 6, 5, 7, 7,
+ 7, 7, 8, 7, 8, 8, 5, 5, 6, 6, 7, 7, 7, 7, 7, 8,
+ 8, 6, 7, 7, 7, 7, 8, 7, 8, 8, 8, 8, 6, 6, 7, 7,
+ 7, 7, 8, 8, 8, 8, 8, 7, 7, 7, 8, 8, 8, 8, 8, 8,
+ 8, 8, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8, 7, 7, 7,
+ 8, 8, 8, 8, 8, 8, 8, 8, 7, 8, 8, 8, 8, 8, 8, 8,
+ 8, 8, 8, 7, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 7, 8,
+ 8, 8, 8, 8, 8, 8, 8, 8, 8,
+};
+
+static const static_codebook _44u6__p8_1 = {
+ 2, 121,
+ (char *)_vq_lengthlist__44u6__p8_1,
+ 1, -531365888, 1611661312, 4, 0,
+ (long *)_vq_quantlist__44u6__p8_1,
+ 0
+};
+
+static const long _vq_quantlist__44u6__p9_0[] = {
+ 7,
+ 6,
+ 8,
+ 5,
+ 9,
+ 4,
+ 10,
+ 3,
+ 11,
+ 2,
+ 12,
+ 1,
+ 13,
+ 0,
+ 14,
+};
+
+static const char _vq_lengthlist__44u6__p9_0[] = {
+ 1, 3, 2, 9, 8,15,15,15,15,15,15,15,15,15,15, 4,
+ 8, 9,13,14,14,14,14,14,14,14,14,14,14,14, 5, 8,
+ 9,14,14,14,14,14,14,14,14,14,14,14,14,11,14,14,
+ 14,14,14,14,14,14,14,14,14,14,14,14,11,14,14,14,
+ 14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,
+ 14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,
+ 14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,
+ 14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,
+ 14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,
+ 14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,
+ 14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,
+ 14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,
+ 14,14,14,14,14,14,14,14,14,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 const static_codebook _44u6__p9_0 = {
+ 2, 225,
+ (char *)_vq_lengthlist__44u6__p9_0,
+ 1, -514071552, 1627381760, 4, 0,
+ (long *)_vq_quantlist__44u6__p9_0,
+ 0
+};
+
+static const long _vq_quantlist__44u6__p9_1[] = {
+ 7,
+ 6,
+ 8,
+ 5,
+ 9,
+ 4,
+ 10,
+ 3,
+ 11,
+ 2,
+ 12,
+ 1,
+ 13,
+ 0,
+ 14,
+};
+
+static const char _vq_lengthlist__44u6__p9_1[] = {
+ 1, 4, 4, 7, 7, 8, 9, 8, 8, 9, 8, 9, 8, 9, 9, 4,
+ 7, 6, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 4, 7,
+ 6, 9, 9,10,10, 9, 9,10,10,10,10,11,11, 7, 9, 8,
+ 10,10,11,11,10,10,11,11,11,11,11,11, 7, 8, 9,10,
+ 10,11,11,10,10,11,11,11,11,11,12, 8,10,10,11,11,
+ 12,12,11,11,12,12,12,12,13,12, 8,10,10,11,11,12,
+ 11,11,11,11,12,12,12,12,13, 8, 9, 9,11,10,11,11,
+ 12,12,12,12,13,12,13,12, 8, 9, 9,11,11,11,11,12,
+ 12,12,12,12,13,13,13, 9,10,10,11,12,12,12,12,12,
+ 13,13,13,13,13,13, 9,10,10,11,11,12,12,12,12,13,
+ 13,13,13,14,13,10,10,10,12,11,12,12,13,13,13,13,
+ 13,13,13,13,10,10,11,11,11,12,12,13,13,13,13,13,
+ 13,13,13,10,11,11,12,12,13,12,12,13,13,13,13,13,
+ 13,14,10,11,11,12,12,13,12,13,13,13,14,13,13,14,
+ 13,
+};
+
+static const static_codebook _44u6__p9_1 = {
+ 2, 225,
+ (char *)_vq_lengthlist__44u6__p9_1,
+ 1, -522338304, 1620115456, 4, 0,
+ (long *)_vq_quantlist__44u6__p9_1,
+ 0
+};
+
+static const long _vq_quantlist__44u6__p9_2[] = {
+ 8,
+ 7,
+ 9,
+ 6,
+ 10,
+ 5,
+ 11,
+ 4,
+ 12,
+ 3,
+ 13,
+ 2,
+ 14,
+ 1,
+ 15,
+ 0,
+ 16,
+};
+
+static const char _vq_lengthlist__44u6__p9_2[] = {
+ 3, 5, 5, 7, 7, 8, 8, 8, 8, 8, 8, 9, 8, 8, 9, 9,
+ 9, 5, 6, 6, 7, 7, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9,
+ 9, 9, 5, 6, 6, 7, 7, 8, 8, 8, 8, 8, 8, 9, 9, 9,
+ 9, 9, 9, 7, 7, 7, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9,
+ 9, 9, 9, 9, 7, 7, 7, 8, 8, 8, 8, 9, 9, 9, 9, 9,
+ 9, 9, 9, 9, 9, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9,
+ 9, 9, 9, 9, 9, 9, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9,
+ 9, 9, 9, 9, 9, 9, 9, 8, 8, 8, 9, 9, 9, 9, 9, 9,
+ 9, 9, 9, 9, 9, 9, 9, 9, 8, 8, 8, 9, 9, 9, 9, 9,
+ 9, 9, 9, 9, 9, 9, 9, 9, 9, 8, 9, 9, 9, 9, 9, 9,
+ 9, 9, 9, 9, 9, 9, 9, 9,10, 9, 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, 9, 9, 9, 9,10,10, 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, 9,10, 9, 9, 9,10, 9, 9, 9,
+ 9, 9, 9, 9, 9, 9, 9,10, 9, 9, 9,10, 9, 9,10, 9,
+ 9, 9, 9, 9, 9, 9, 9, 9,10,10,10, 9,10, 9,10,10,
+ 9, 9, 9, 9, 9, 9, 9, 9, 9,10,10, 9,10,10, 9, 9,
+ 10,
+};
+
+static const static_codebook _44u6__p9_2 = {
+ 2, 289,
+ (char *)_vq_lengthlist__44u6__p9_2,
+ 1, -529530880, 1611661312, 5, 0,
+ (long *)_vq_quantlist__44u6__p9_2,
+ 0
+};
+
+static const char _huff_lengthlist__44u6__short[] = {
+ 4,11,16,13,17,13,17,16,17,17, 4, 7, 9, 9,13,10,
+ 16,12,16,17, 7, 6, 5, 7, 8, 9,12,12,16,17, 6, 9,
+ 7, 9,10,10,15,15,17,17, 6, 7, 5, 7, 5, 7, 7,10,
+ 16,17, 7, 9, 8, 9, 8,10,11,11,15,17, 7, 7, 7, 8,
+ 5, 8, 8, 9,15,17, 8, 7, 9, 9, 7, 8, 7, 2, 7,15,
+ 14,13,13,15, 5,10, 4, 3, 6,17,17,15,13,17, 7,11,
+ 7, 6, 9,16,
+};
+
+static const static_codebook _huff_book__44u6__short = {
+ 2, 100,
+ (char *)_huff_lengthlist__44u6__short,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
+static const char _huff_lengthlist__44u7__long[] = {
+ 3, 9,14,13,15,14,16,13,13,14, 5, 5, 7, 7, 8, 9,
+ 11,10,12,15,10, 6, 5, 6, 6, 9,10,10,13,16,10, 6,
+ 6, 6, 6, 8, 9, 9,12,15,14, 7, 6, 6, 5, 6, 6, 8,
+ 12,15,10, 8, 7, 7, 6, 7, 7, 7,11,13,14,10, 9, 8,
+ 5, 6, 4, 5, 9,12,10, 9, 9, 8, 6, 6, 5, 3, 6,11,
+ 12,11,12,12,10, 9, 8, 5, 5, 8,10,11,15,13,13,13,
+ 12, 8, 6, 7,
+};
+
+static const static_codebook _huff_book__44u7__long = {
+ 2, 100,
+ (char *)_huff_lengthlist__44u7__long,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
+static const long _vq_quantlist__44u7__p1_0[] = {
+ 1,
+ 0,
+ 2,
+};
+
+static const char _vq_lengthlist__44u7__p1_0[] = {
+ 1, 4, 4, 4, 7, 7, 5, 7, 7, 5, 8, 8, 8,10,10, 7,
+ 10,10, 5, 8, 8, 7,10,10, 8,10,10, 5, 8, 8, 8,11,
+ 10, 8,10,10, 8,10,10,10,12,13,10,13,13, 7,10,10,
+ 10,13,12,10,13,13, 5, 8, 8, 8,11,10, 8,10,11, 7,
+ 10,10,10,13,13,10,12,13, 8,11,11,10,13,13,10,13,
+ 12,
+};
+
+static const static_codebook _44u7__p1_0 = {
+ 4, 81,
+ (char *)_vq_lengthlist__44u7__p1_0,
+ 1, -535822336, 1611661312, 2, 0,
+ (long *)_vq_quantlist__44u7__p1_0,
+ 0
+};
+
+static const long _vq_quantlist__44u7__p2_0[] = {
+ 1,
+ 0,
+ 2,
+};
+
+static const char _vq_lengthlist__44u7__p2_0[] = {
+ 3, 4, 4, 5, 6, 6, 5, 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,
+ 7, 6, 8, 8, 6, 8, 8, 8, 9, 9, 8, 9, 9, 6, 8, 7,
+ 7, 9, 8, 8, 9, 9, 5, 6, 6, 6, 8, 7, 6, 8, 8, 6,
+ 8, 8, 8, 9, 9, 7, 8, 9, 6, 8, 8, 8, 9, 9, 8, 9,
+ 9,
+};
+
+static const static_codebook _44u7__p2_0 = {
+ 4, 81,
+ (char *)_vq_lengthlist__44u7__p2_0,
+ 1, -535822336, 1611661312, 2, 0,
+ (long *)_vq_quantlist__44u7__p2_0,
+ 0
+};
+
+static const long _vq_quantlist__44u7__p3_0[] = {
+ 2,
+ 1,
+ 3,
+ 0,
+ 4,
+};
+
+static const char _vq_lengthlist__44u7__p3_0[] = {
+ 2, 5, 4, 8, 8, 5, 7, 6, 9, 9, 5, 6, 7, 9, 9, 8,
+ 9, 9,13,12, 8, 9,10,12,13, 5, 7, 7,10, 9, 7, 9,
+ 9,11,11, 6, 8, 9,11,11,10,11,11,14,14, 9,10,11,
+ 13,14, 5, 7, 7, 9, 9, 7, 9, 8,11,11, 7, 9, 9,11,
+ 11, 9,11,10,14,13,10,11,11,14,14, 8,10,10,14,13,
+ 10,11,12,15,14, 9,11,11,15,14,13,14,14,16,16,12,
+ 13,14,17,16, 8,10,10,13,13, 9,11,11,14,15,10,11,
+ 12,14,15,12,14,13,16,16,13,14,15,15,17, 5, 7, 7,
+ 10,10, 7, 9, 9,11,11, 7, 9, 9,11,11,10,12,11,15,
+ 14,10,11,12,14,14, 7, 9, 9,12,12, 9,11,11,13,13,
+ 9,11,11,13,13,11,13,13,14,17,11,13,13,15,16, 6,
+ 9, 9,11,11, 8,11,10,13,12, 9,11,11,13,13,11,13,
+ 12,16,14,11,13,13,16,16,10,12,12,15,15,11,13,13,
+ 16,16,11,13,13,16,15,14,16,17,17,19,14,16,16,18,
+ 0, 9,11,11,14,15,10,13,12,16,15,11,13,13,16,16,
+ 14,15,14, 0,16,14,16,16,18, 0, 5, 7, 7,10,10, 7,
+ 9, 9,12,11, 7, 9, 9,11,12,10,11,11,15,14,10,11,
+ 12,14,14, 6, 9, 9,11,11, 9,11,11,13,13, 8,10,11,
+ 12,13,11,13,13,17,15,11,12,13,14,15, 7, 9, 9,11,
+ 12, 9,11,11,13,13, 9,11,11,13,13,11,13,12,16,16,
+ 11,13,13,15,14, 9,11,11,14,15,11,13,13,16,15,10,
+ 12,13,16,16,15,16,16, 0, 0,14,13,15,16,18,10,11,
+ 11,15,15,11,13,14,16,18,11,13,13,16,15,15,16,16,
+ 19, 0,14,15,15,16,16, 8,10,10,13,13,10,12,11,16,
+ 15,10,11,11,16,15,13,15,16,18, 0,13,14,15,17,17,
+ 9,11,11,15,15,11,13,13,16,18,11,13,13,16,17,15,
+ 16,16, 0, 0,15,18,16, 0,17, 9,11,11,15,15,11,13,
+ 12,17,15,11,13,14,16,17,15,18,15, 0,17,15,16,16,
+ 18,19,13,15,14, 0,18,14,16,16,19,18,14,16,15,19,
+ 19,16,18,19, 0, 0,16,17, 0, 0, 0,12,14,14,17,17,
+ 13,16,14, 0,18,14,16,15,18, 0,16,18,16,19,17,18,
+ 19,17, 0, 0, 8,10,10,14,14, 9,12,11,15,15,10,11,
+ 12,15,17,13,15,15,18,16,14,16,15,18,17, 9,11,11,
+ 16,15,11,13,13, 0,16,11,12,13,16,15,15,16,16, 0,
+ 17,15,15,16,18,17, 9,12,11,15,17,11,13,13,16,16,
+ 11,14,13,16,16,15,15,16,18,19,16,18,16, 0, 0,12,
+ 14,14, 0,16,14,16,16, 0,18,13,14,15,16, 0,17,16,
+ 18, 0, 0,16,16,17,19, 0,13,14,14,17, 0,14,17,16,
+ 0,19,14,15,15,18,19,17,16,18, 0, 0,15,19,16, 0,
+ 0,
+};
+
+static const static_codebook _44u7__p3_0 = {
+ 4, 625,
+ (char *)_vq_lengthlist__44u7__p3_0,
+ 1, -533725184, 1611661312, 3, 0,
+ (long *)_vq_quantlist__44u7__p3_0,
+ 0
+};
+
+static const long _vq_quantlist__44u7__p4_0[] = {
+ 2,
+ 1,
+ 3,
+ 0,
+ 4,
+};
+
+static const char _vq_lengthlist__44u7__p4_0[] = {
+ 4, 5, 5, 8, 8, 6, 7, 6, 9, 9, 6, 6, 7, 9, 9, 8,
+ 9, 9,11,11, 8, 9, 9,10,11, 6, 7, 7, 9, 9, 7, 8,
+ 8,10,10, 6, 7, 8, 9,10, 9,10,10,12,12, 9, 9,10,
+ 11,12, 6, 7, 7, 9, 9, 6, 8, 7,10, 9, 7, 8, 8,10,
+ 10, 9,10, 9,12,11, 9,10,10,12,11, 8, 9, 9,11,11,
+ 9,10,10,12,12, 9,10,10,12,12,11,12,12,13,14,11,
+ 11,12,13,13, 8, 9, 9,11,11, 9,10,10,12,11, 9,10,
+ 10,12,12,11,12,11,13,13,11,12,12,13,13, 6, 7, 7,
+ 9, 9, 7, 8, 7,10,10, 7, 7, 8,10,10, 9,10,10,12,
+ 11, 9,10,10,12,12, 7, 8, 8,10,10, 8, 8, 9,11,11,
+ 8, 9, 9,11,11,10,11,11,12,12,10,10,11,12,13, 6,
+ 7, 7,10,10, 7, 9, 8,11,10, 8, 8, 9,10,11,10,11,
+ 10,13,11,10,11,11,12,12, 9,10,10,12,12,10,10,11,
+ 13,13,10,11,11,13,12,12,12,13,13,14,12,12,13,14,
+ 14, 9,10,10,12,12, 9,10,10,12,12,10,11,11,13,13,
+ 11,12,11,14,12,12,13,13,14,14, 6, 7, 7, 9, 9, 7,
+ 8, 7,10,10, 7, 7, 8,10,10, 9,10,10,12,11, 9,10,
+ 10,11,12, 6, 7, 7,10,10, 8, 9, 8,11,10, 7, 8, 9,
+ 10,11,10,11,11,13,12,10,10,11,11,13, 7, 8, 8,10,
+ 10, 8, 9, 9,11,11, 8, 9, 9,11,11,10,11,10,13,12,
+ 10,11,11,12,12, 9,10,10,12,12,10,11,11,13,12, 9,
+ 10,10,12,13,12,13,12,14,14,11,11,12,12,14, 9,10,
+ 10,12,12,10,11,11,13,13,10,11,11,13,13,12,13,12,
+ 14,14,12,13,12,14,13, 8, 9, 9,11,11, 9,10,10,12,
+ 12, 9,10,10,12,12,11,12,12,14,13,11,12,12,13,13,
+ 9,10,10,12,12,10,11,11,13,13,10,11,11,13,12,12,
+ 13,13,14,14,12,12,13,14,14, 9,10,10,12,12, 9,11,
+ 10,13,12,10,10,11,12,13,11,13,12,14,13,12,12,13,
+ 14,14,11,12,12,13,13,11,12,13,14,14,12,13,13,14,
+ 14,13,13,14,14,16,13,14,14,16,16,11,11,11,13,13,
+ 11,12,11,14,13,12,12,13,14,15,13,14,12,16,13,14,
+ 14,14,15,16, 8, 9, 9,11,11, 9,10,10,12,12, 9,10,
+ 10,12,12,11,12,12,14,13,11,12,12,13,14, 9,10,10,
+ 12,12,10,11,10,13,12, 9,10,11,12,13,12,13,12,14,
+ 14,12,12,13,13,14, 9,10,10,12,12,10,11,11,12,13,
+ 10,11,11,13,13,12,13,12,14,14,12,13,13,14,14,11,
+ 12,12,13,13,12,13,12,14,14,11,11,12,13,14,13,15,
+ 14,16,15,13,12,14,13,16,11,12,12,13,13,12,13,13,
+ 14,14,12,12,12,14,14,13,14,14,15,15,13,14,13,16,
+ 14,
+};
+
+static const static_codebook _44u7__p4_0 = {
+ 4, 625,
+ (char *)_vq_lengthlist__44u7__p4_0,
+ 1, -533725184, 1611661312, 3, 0,
+ (long *)_vq_quantlist__44u7__p4_0,
+ 0
+};
+
+static const long _vq_quantlist__44u7__p5_0[] = {
+ 4,
+ 3,
+ 5,
+ 2,
+ 6,
+ 1,
+ 7,
+ 0,
+ 8,
+};
+
+static const char _vq_lengthlist__44u7__p5_0[] = {
+ 2, 3, 3, 6, 6, 7, 8,10,10, 4, 5, 5, 8, 7, 8, 8,
+ 11,11, 3, 5, 5, 7, 7, 8, 9,11,11, 6, 8, 7, 9, 9,
+ 10,10,12,12, 6, 7, 8, 9,10,10,10,12,12, 8, 8, 8,
+ 10,10,12,11,13,13, 8, 8, 9,10,10,11,11,13,13,10,
+ 11,11,12,12,13,13,14,14,10,11,11,12,12,13,13,14,
+ 14,
+};
+
+static const static_codebook _44u7__p5_0 = {
+ 2, 81,
+ (char *)_vq_lengthlist__44u7__p5_0,
+ 1, -531628032, 1611661312, 4, 0,
+ (long *)_vq_quantlist__44u7__p5_0,
+ 0
+};
+
+static const long _vq_quantlist__44u7__p6_0[] = {
+ 4,
+ 3,
+ 5,
+ 2,
+ 6,
+ 1,
+ 7,
+ 0,
+ 8,
+};
+
+static const char _vq_lengthlist__44u7__p6_0[] = {
+ 3, 4, 4, 5, 5, 7, 7, 9, 9, 4, 5, 4, 6, 6, 8, 7,
+ 9, 9, 4, 4, 5, 6, 6, 7, 7, 9, 9, 5, 6, 6, 7, 7,
+ 8, 8,10,10, 5, 6, 6, 7, 7, 8, 8,10,10, 7, 8, 7,
+ 8, 8,10, 9,11,11, 7, 7, 8, 8, 8, 9,10,11,11, 9,
+ 9, 9,10,10,11,10,12,11, 9, 9, 9,10,10,11,11,11,
+ 12,
+};
+
+static const static_codebook _44u7__p6_0 = {
+ 2, 81,
+ (char *)_vq_lengthlist__44u7__p6_0,
+ 1, -531628032, 1611661312, 4, 0,
+ (long *)_vq_quantlist__44u7__p6_0,
+ 0
+};
+
+static const long _vq_quantlist__44u7__p7_0[] = {
+ 1,
+ 0,
+ 2,
+};
+
+static const char _vq_lengthlist__44u7__p7_0[] = {
+ 1, 4, 4, 5, 7, 7, 5, 7, 7, 5, 9, 8, 8, 9, 9, 7,
+ 10,10, 5, 8, 9, 7, 9,10, 8, 9, 9, 4, 9, 9, 9,11,
+ 10, 8,10,10, 7,11,10,10,10,12,10,12,12, 7,10,10,
+ 10,12,11,10,12,12, 5, 9, 9, 8,10,10, 9,11,11, 7,
+ 11,10,10,12,12,10,11,12, 7,10,11,10,12,12,10,12,
+ 10,
+};
+
+static const static_codebook _44u7__p7_0 = {
+ 4, 81,
+ (char *)_vq_lengthlist__44u7__p7_0,
+ 1, -529137664, 1618345984, 2, 0,
+ (long *)_vq_quantlist__44u7__p7_0,
+ 0
+};
+
+static const long _vq_quantlist__44u7__p7_1[] = {
+ 5,
+ 4,
+ 6,
+ 3,
+ 7,
+ 2,
+ 8,
+ 1,
+ 9,
+ 0,
+ 10,
+};
+
+static const char _vq_lengthlist__44u7__p7_1[] = {
+ 3, 4, 4, 6, 6, 7, 7, 8, 8, 8, 8, 4, 5, 5, 6, 6,
+ 8, 7, 8, 8, 8, 8, 4, 5, 5, 6, 6, 7, 8, 8, 8, 8,
+ 8, 6, 7, 6, 7, 7, 8, 8, 9, 9, 9, 9, 6, 6, 7, 7,
+ 7, 8, 8, 9, 9, 9, 9, 7, 8, 7, 8, 8, 9, 9, 9, 9,
+ 9, 9, 7, 7, 8, 8, 8, 9, 9, 9, 9, 9, 9, 8, 8, 8,
+ 9, 9, 9, 9,10, 9, 9, 9, 8, 8, 8, 9, 9, 9, 9, 9,
+ 9, 9,10, 8, 8, 8, 9, 9, 9, 9,10, 9,10,10, 8, 8,
+ 8, 9, 9, 9, 9, 9,10,10,10,
+};
+
+static const static_codebook _44u7__p7_1 = {
+ 2, 121,
+ (char *)_vq_lengthlist__44u7__p7_1,
+ 1, -531365888, 1611661312, 4, 0,
+ (long *)_vq_quantlist__44u7__p7_1,
+ 0
+};
+
+static const long _vq_quantlist__44u7__p8_0[] = {
+ 5,
+ 4,
+ 6,
+ 3,
+ 7,
+ 2,
+ 8,
+ 1,
+ 9,
+ 0,
+ 10,
+};
+
+static const char _vq_lengthlist__44u7__p8_0[] = {
+ 1, 4, 4, 6, 6, 8, 8,10,10,11,11, 4, 6, 6, 7, 7,
+ 9, 9,11,10,12,12, 5, 6, 5, 7, 7, 9, 9,10,11,12,
+ 12, 6, 7, 7, 8, 8,10,10,11,11,13,13, 6, 7, 7, 8,
+ 8,10,10,11,12,13,13, 8, 9, 9,10,10,11,11,12,12,
+ 14,14, 8, 9, 9,10,10,11,11,12,12,14,14,10,10,10,
+ 11,11,13,12,14,14,15,15,10,10,10,12,12,13,13,14,
+ 14,15,15,11,12,12,13,13,14,14,15,14,16,15,11,12,
+ 12,13,13,14,14,15,15,15,16,
+};
+
+static const static_codebook _44u7__p8_0 = {
+ 2, 121,
+ (char *)_vq_lengthlist__44u7__p8_0,
+ 1, -524582912, 1618345984, 4, 0,
+ (long *)_vq_quantlist__44u7__p8_0,
+ 0
+};
+
+static const long _vq_quantlist__44u7__p8_1[] = {
+ 5,
+ 4,
+ 6,
+ 3,
+ 7,
+ 2,
+ 8,
+ 1,
+ 9,
+ 0,
+ 10,
+};
+
+static const char _vq_lengthlist__44u7__p8_1[] = {
+ 4, 5, 5, 6, 6, 7, 7, 7, 7, 7, 7, 5, 6, 6, 7, 7,
+ 7, 7, 7, 7, 7, 7, 5, 6, 6, 6, 7, 7, 7, 7, 7, 7,
+ 7, 6, 7, 7, 7, 7, 7, 7, 7, 7, 8, 8, 6, 7, 7, 7,
+ 7, 7, 7, 7, 7, 8, 8, 7, 7, 7, 7, 7, 8, 7, 8, 8,
+ 8, 8, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 7, 7, 7,
+ 7, 7, 8, 8, 8, 8, 8, 8, 7, 7, 7, 7, 7, 8, 8, 8,
+ 8, 8, 8, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8, 8, 7, 7,
+ 7, 8, 8, 8, 8, 8, 8, 8, 8,
+};
+
+static const static_codebook _44u7__p8_1 = {
+ 2, 121,
+ (char *)_vq_lengthlist__44u7__p8_1,
+ 1, -531365888, 1611661312, 4, 0,
+ (long *)_vq_quantlist__44u7__p8_1,
+ 0
+};
+
+static const long _vq_quantlist__44u7__p9_0[] = {
+ 5,
+ 4,
+ 6,
+ 3,
+ 7,
+ 2,
+ 8,
+ 1,
+ 9,
+ 0,
+ 10,
+};
+
+static const char _vq_lengthlist__44u7__p9_0[] = {
+ 1, 3, 3,10,10,10,10,10,10,10,10, 4,10,10,10,10,
+ 10,10,10,10,10,10, 4,10,10,10,10,10,10,10,10,10,
+ 10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,
+ 10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,
+ 10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,
+ 10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,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, 9,
+};
+
+static const static_codebook _44u7__p9_0 = {
+ 2, 121,
+ (char *)_vq_lengthlist__44u7__p9_0,
+ 1, -512171520, 1630791680, 4, 0,
+ (long *)_vq_quantlist__44u7__p9_0,
+ 0
+};
+
+static const long _vq_quantlist__44u7__p9_1[] = {
+ 6,
+ 5,
+ 7,
+ 4,
+ 8,
+ 3,
+ 9,
+ 2,
+ 10,
+ 1,
+ 11,
+ 0,
+ 12,
+};
+
+static const char _vq_lengthlist__44u7__p9_1[] = {
+ 1, 4, 4, 6, 5, 8, 6, 9, 8,10, 9,11,10, 4, 6, 6,
+ 8, 8, 9, 9,11,10,11,11,11,11, 4, 6, 6, 8, 8,10,
+ 9,11,11,11,11,11,12, 6, 8, 8,10,10,11,11,12,12,
+ 13,12,13,13, 6, 8, 8,10,10,11,11,12,12,12,13,14,
+ 13, 8,10,10,11,11,12,13,14,14,14,14,15,15, 8,10,
+ 10,11,12,12,13,13,14,14,14,14,15, 9,11,11,13,13,
+ 14,14,15,14,16,15,17,15, 9,11,11,12,13,14,14,15,
+ 14,15,15,15,16,10,12,12,13,14,15,15,15,15,16,17,
+ 16,17,10,13,12,13,14,14,16,16,16,16,15,16,17,11,
+ 13,13,14,15,14,17,15,16,17,17,17,17,11,13,13,14,
+ 15,15,15,15,17,17,16,17,16,
+};
+
+static const static_codebook _44u7__p9_1 = {
+ 2, 169,
+ (char *)_vq_lengthlist__44u7__p9_1,
+ 1, -518889472, 1622704128, 4, 0,
+ (long *)_vq_quantlist__44u7__p9_1,
+ 0
+};
+
+static const long _vq_quantlist__44u7__p9_2[] = {
+ 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 const char _vq_lengthlist__44u7__p9_2[] = {
+ 2, 4, 4, 4, 4, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 6,
+ 6, 6, 6, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7,
+ 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 8, 8, 8,
+ 8,
+};
+
+static const static_codebook _44u7__p9_2 = {
+ 1, 49,
+ (char *)_vq_lengthlist__44u7__p9_2,
+ 1, -526909440, 1611661312, 6, 0,
+ (long *)_vq_quantlist__44u7__p9_2,
+ 0
+};
+
+static const char _huff_lengthlist__44u7__short[] = {
+ 5,12,17,16,16,17,17,17,17,17, 4, 7,11,11,12, 9,
+ 17,10,17,17, 7, 7, 8, 9, 7, 9,11,10,15,17, 7, 9,
+ 10,11,10,12,14,12,16,17, 7, 8, 5, 7, 4, 7, 7, 8,
+ 16,16, 6,10, 9,10, 7,10,11,11,16,17, 6, 8, 8, 9,
+ 5, 7, 5, 8,16,17, 5, 5, 8, 7, 6, 7, 7, 6, 6,14,
+ 12,10,12,11, 7,11, 4, 4, 2, 7,17,15,15,15, 8,15,
+ 6, 8, 5, 9,
+};
+
+static const static_codebook _huff_book__44u7__short = {
+ 2, 100,
+ (char *)_huff_lengthlist__44u7__short,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
+static const char _huff_lengthlist__44u8__long[] = {
+ 3, 9,13,14,14,15,14,14,15,15, 5, 4, 6, 8,10,12,
+ 12,14,15,15, 9, 5, 4, 5, 8,10,11,13,16,16,10, 7,
+ 4, 3, 5, 7, 9,11,13,13,10, 9, 7, 4, 4, 6, 8,10,
+ 12,14,13,11, 9, 6, 5, 5, 6, 8,12,14,13,11,10, 8,
+ 7, 6, 6, 7,10,14,13,11,12,10, 8, 7, 6, 6, 9,13,
+ 12,11,14,12,11, 9, 8, 7, 9,11,11,12,14,13,14,11,
+ 10, 8, 8, 9,
+};
+
+static const static_codebook _huff_book__44u8__long = {
+ 2, 100,
+ (char *)_huff_lengthlist__44u8__long,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
+static const char _huff_lengthlist__44u8__short[] = {
+ 6,14,18,18,17,17,17,17,17,17, 4, 7, 9, 9,10,13,
+ 15,17,17,17, 6, 7, 5, 6, 8,11,16,17,16,17, 5, 7,
+ 5, 4, 6,10,14,17,17,17, 6, 6, 6, 5, 7,10,13,16,
+ 17,17, 7, 6, 7, 7, 7, 8, 7,10,15,16,12, 9, 9, 6,
+ 6, 5, 3, 5,11,15,14,14,13, 5, 5, 7, 3, 4, 8,15,
+ 17,17,13, 7, 7,10, 6, 6,10,15,17,17,16,10,11,14,
+ 10,10,15,17,
+};
+
+static const static_codebook _huff_book__44u8__short = {
+ 2, 100,
+ (char *)_huff_lengthlist__44u8__short,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
+static const long _vq_quantlist__44u8_p1_0[] = {
+ 1,
+ 0,
+ 2,
+};
+
+static const char _vq_lengthlist__44u8_p1_0[] = {
+ 1, 5, 5, 5, 7, 7, 5, 7, 7, 5, 7, 7, 8, 9, 9, 7,
+ 9, 9, 5, 7, 7, 7, 9, 9, 8, 9, 9, 5, 7, 7, 7, 9,
+ 9, 7, 9, 9, 7, 9, 9, 9,10,11, 9,11,10, 7, 9, 9,
+ 9,11,10, 9,10,11, 5, 7, 7, 7, 9, 9, 7, 9, 9, 7,
+ 9, 9, 9,11,10, 9,10,10, 8, 9, 9, 9,11,11, 9,11,
+ 10,
+};
+
+static const static_codebook _44u8_p1_0 = {
+ 4, 81,
+ (char *)_vq_lengthlist__44u8_p1_0,
+ 1, -535822336, 1611661312, 2, 0,
+ (long *)_vq_quantlist__44u8_p1_0,
+ 0
+};
+
+static const long _vq_quantlist__44u8_p2_0[] = {
+ 2,
+ 1,
+ 3,
+ 0,
+ 4,
+};
+
+static const char _vq_lengthlist__44u8_p2_0[] = {
+ 4, 5, 5, 8, 8, 5, 7, 6, 9, 9, 5, 6, 7, 9, 9, 8,
+ 9, 9,11,11, 8, 9, 9,11,11, 5, 7, 7, 9, 9, 7, 8,
+ 8,10,10, 7, 8, 8,10,10, 9,10,10,12,12, 9,10,10,
+ 11,12, 5, 7, 7, 9, 9, 7, 8, 7,10,10, 7, 8, 8,10,
+ 10, 9,10, 9,12,11, 9,10,10,12,12, 8, 9, 9,12,11,
+ 9,10,10,12,12, 9,10,10,12,12,11,12,12,14,14,11,
+ 11,12,13,14, 8, 9, 9,11,11, 9,10,10,12,12, 9,10,
+ 10,12,12,11,12,11,13,13,11,12,12,14,14, 5, 7, 7,
+ 9, 9, 7, 8, 8,10,10, 7, 8, 8,10,10, 9,10,10,12,
+ 12, 9,10,10,11,12, 7, 8, 8,10,10, 8, 9, 9,11,11,
+ 8, 9, 9,11,11,10,11,11,12,13,10,11,11,12,13, 6,
+ 8, 8,10,10, 8, 9, 8,11,10, 8, 9, 9,11,11,10,11,
+ 10,13,12,10,11,11,13,13, 9,10,10,12,12,10,11,11,
+ 13,13,10,11,11,13,13,12,12,13,13,14,12,13,13,14,
+ 14, 9,10,10,12,12,10,11,10,13,12,10,11,11,13,13,
+ 11,13,12,14,13,12,13,13,14,14, 5, 7, 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,10,10, 8, 9, 9,11,11, 8, 8, 9,
+ 10,11,10,11,11,13,13,10,10,11,12,13, 7, 8, 8,10,
+ 10, 8, 9, 9,11,11, 8, 9, 9,11,11,10,11,11,13,13,
+ 10,11,11,13,12, 9,10,10,12,12,10,11,11,13,13,10,
+ 10,11,12,13,12,13,13,14,14,12,12,13,13,14, 9,10,
+ 10,12,12,10,11,11,13,13,10,11,11,13,13,12,13,13,
+ 15,14,12,13,13,14,13, 8, 9, 9,11,11, 9,10,10,12,
+ 12, 9,10,10,12,12,12,12,12,14,13,11,12,12,14,14,
+ 9,10,10,12,12,10,11,11,13,13,10,11,11,13,13,12,
+ 13,13,14,15,12,13,13,14,15, 9,10,10,12,12,10,11,
+ 10,13,12,10,11,11,13,13,12,13,12,15,14,12,13,13,
+ 14,15,11,12,12,14,14,12,13,13,14,14,12,13,13,15,
+ 14,14,14,14,14,16,14,14,15,16,16,11,12,12,14,14,
+ 11,12,12,14,14,12,13,13,14,15,13,14,13,16,14,14,
+ 14,14,16,16, 8, 9, 9,11,11, 9,10,10,12,12, 9,10,
+ 10,12,12,11,12,12,14,13,11,12,12,14,14, 9,10,10,
+ 12,12,10,11,11,13,13,10,10,11,12,13,12,13,13,15,
+ 14,12,12,13,13,14, 9,10,10,12,12,10,11,11,13,13,
+ 10,11,11,13,13,12,13,13,14,14,12,13,13,15,14,11,
+ 12,12,14,13,12,13,13,15,14,11,12,12,13,14,14,15,
+ 14,16,15,13,13,14,13,16,11,12,12,14,14,12,13,13,
+ 14,15,12,13,12,15,14,14,14,14,16,15,14,15,13,16,
+ 14,
+};
+
+static const static_codebook _44u8_p2_0 = {
+ 4, 625,
+ (char *)_vq_lengthlist__44u8_p2_0,
+ 1, -533725184, 1611661312, 3, 0,
+ (long *)_vq_quantlist__44u8_p2_0,
+ 0
+};
+
+static const long _vq_quantlist__44u8_p3_0[] = {
+ 4,
+ 3,
+ 5,
+ 2,
+ 6,
+ 1,
+ 7,
+ 0,
+ 8,
+};
+
+static const char _vq_lengthlist__44u8_p3_0[] = {
+ 3, 4, 4, 5, 5, 7, 7, 9, 9, 4, 5, 4, 6, 6, 7, 7,
+ 9, 9, 4, 4, 5, 6, 6, 7, 7, 9, 9, 5, 6, 6, 7, 7,
+ 8, 8,10,10, 6, 6, 6, 7, 7, 8, 8,10,10, 7, 7, 7,
+ 8, 8, 9, 9,11,10, 7, 7, 7, 8, 8, 9, 9,10,11, 9,
+ 9, 9,10,10,11,10,12,11, 9, 9, 9, 9,10,11,11,11,
+ 12,
+};
+
+static const static_codebook _44u8_p3_0 = {
+ 2, 81,
+ (char *)_vq_lengthlist__44u8_p3_0,
+ 1, -531628032, 1611661312, 4, 0,
+ (long *)_vq_quantlist__44u8_p3_0,
+ 0
+};
+
+static const long _vq_quantlist__44u8_p4_0[] = {
+ 8,
+ 7,
+ 9,
+ 6,
+ 10,
+ 5,
+ 11,
+ 4,
+ 12,
+ 3,
+ 13,
+ 2,
+ 14,
+ 1,
+ 15,
+ 0,
+ 16,
+};
+
+static const char _vq_lengthlist__44u8_p4_0[] = {
+ 4, 4, 4, 6, 6, 7, 7, 8, 8, 8, 8,10,10,11,11,11,
+ 11, 4, 5, 5, 6, 6, 7, 7, 8, 8, 9, 9,10,10,11,11,
+ 12,12, 4, 5, 5, 6, 6, 7, 7, 8, 8, 9, 9,10,10,11,
+ 11,12,12, 6, 6, 6, 7, 7, 8, 8, 9, 9, 9, 9,10,10,
+ 11,11,12,12, 6, 6, 6, 7, 7, 8, 8, 9, 9, 9, 9,10,
+ 10,11,11,12,12, 7, 7, 7, 8, 8, 9, 8,10, 9,10, 9,
+ 11,10,12,11,13,12, 7, 7, 7, 8, 8, 8, 9, 9,10, 9,
+ 10,10,11,11,12,12,13, 8, 8, 8, 9, 9, 9, 9,10,10,
+ 11,10,11,11,12,12,13,13, 8, 8, 8, 9, 9, 9,10,10,
+ 10,10,11,11,11,12,12,12,13, 8, 9, 9, 9, 9,10, 9,
+ 11,10,11,11,12,11,13,12,13,13, 8, 9, 9, 9, 9, 9,
+ 10,10,11,11,11,11,12,12,13,13,13,10,10,10,10,10,
+ 11,10,11,11,12,11,13,12,13,13,14,13,10,10,10,10,
+ 10,10,11,11,11,11,12,12,13,13,13,13,14,11,11,11,
+ 11,11,12,11,12,12,13,12,13,13,14,13,14,14,11,11,
+ 11,11,11,11,12,12,12,12,13,13,13,13,14,14,14,11,
+ 12,12,12,12,13,12,13,12,13,13,14,13,14,14,14,14,
+ 11,12,12,12,12,12,12,13,13,13,13,13,14,14,14,14,
+ 14,
+};
+
+static const static_codebook _44u8_p4_0 = {
+ 2, 289,
+ (char *)_vq_lengthlist__44u8_p4_0,
+ 1, -529530880, 1611661312, 5, 0,
+ (long *)_vq_quantlist__44u8_p4_0,
+ 0
+};
+
+static const long _vq_quantlist__44u8_p5_0[] = {
+ 1,
+ 0,
+ 2,
+};
+
+static const char _vq_lengthlist__44u8_p5_0[] = {
+ 1, 4, 4, 5, 7, 7, 5, 7, 7, 5, 8, 8, 8, 9, 9, 7,
+ 9, 9, 5, 8, 8, 7, 9, 9, 8, 9, 9, 5, 8, 8, 8,10,
+ 10, 8,10,10, 7,10,10, 9,10,12, 9,12,11, 7,10,10,
+ 9,11,10, 9,11,12, 5, 8, 8, 8,10,10, 8,10,10, 7,
+ 10,10, 9,11,11, 9,10,11, 7,10,10, 9,11,11,10,12,
+ 10,
+};
+
+static const static_codebook _44u8_p5_0 = {
+ 4, 81,
+ (char *)_vq_lengthlist__44u8_p5_0,
+ 1, -529137664, 1618345984, 2, 0,
+ (long *)_vq_quantlist__44u8_p5_0,
+ 0
+};
+
+static const long _vq_quantlist__44u8_p5_1[] = {
+ 5,
+ 4,
+ 6,
+ 3,
+ 7,
+ 2,
+ 8,
+ 1,
+ 9,
+ 0,
+ 10,
+};
+
+static const char _vq_lengthlist__44u8_p5_1[] = {
+ 4, 5, 5, 6, 6, 7, 7, 7, 7, 8, 8, 5, 5, 5, 6, 6,
+ 7, 7, 8, 8, 8, 8, 5, 5, 5, 6, 6, 7, 7, 7, 8, 8,
+ 8, 6, 6, 6, 7, 7, 7, 7, 8, 8, 8, 8, 6, 6, 6, 7,
+ 7, 7, 7, 8, 8, 8, 8, 7, 7, 7, 7, 7, 8, 8, 8, 8,
+ 8, 8, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 7, 8, 7,
+ 8, 8, 8, 8, 8, 8, 8, 8, 7, 8, 8, 8, 8, 8, 8, 8,
+ 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 9, 9, 8, 8,
+ 8, 8, 8, 8, 8, 8, 8, 9, 9,
+};
+
+static const static_codebook _44u8_p5_1 = {
+ 2, 121,
+ (char *)_vq_lengthlist__44u8_p5_1,
+ 1, -531365888, 1611661312, 4, 0,
+ (long *)_vq_quantlist__44u8_p5_1,
+ 0
+};
+
+static const long _vq_quantlist__44u8_p6_0[] = {
+ 6,
+ 5,
+ 7,
+ 4,
+ 8,
+ 3,
+ 9,
+ 2,
+ 10,
+ 1,
+ 11,
+ 0,
+ 12,
+};
+
+static const char _vq_lengthlist__44u8_p6_0[] = {
+ 2, 4, 4, 6, 6, 7, 7, 8, 8, 9, 9,10,10, 4, 6, 5,
+ 7, 7, 8, 8, 8, 8, 9, 9,10,10, 4, 6, 6, 7, 7, 8,
+ 8, 8, 8, 9, 9,10,10, 6, 7, 7, 7, 8, 8, 8, 8, 9,
+ 9,10,10,10, 6, 7, 7, 8, 8, 8, 8, 9, 8,10, 9,11,
+ 10, 7, 8, 8, 8, 8, 8, 9, 9, 9,10,10,11,11, 7, 8,
+ 8, 8, 8, 9, 8, 9, 9,10,10,11,11, 8, 8, 8, 9, 9,
+ 9, 9, 9,10,10,10,11,11, 8, 8, 8, 9, 9, 9, 9,10,
+ 9,10,10,11,11, 9, 9, 9, 9,10,10,10,10,10,10,11,
+ 11,12, 9, 9, 9,10, 9,10,10,10,10,11,10,12,11,10,
+ 10,10,10,10,11,11,11,11,11,12,12,12,10,10,10,10,
+ 11,11,11,11,11,12,11,12,12,
+};
+
+static const static_codebook _44u8_p6_0 = {
+ 2, 169,
+ (char *)_vq_lengthlist__44u8_p6_0,
+ 1, -526516224, 1616117760, 4, 0,
+ (long *)_vq_quantlist__44u8_p6_0,
+ 0
+};
+
+static const long _vq_quantlist__44u8_p6_1[] = {
+ 2,
+ 1,
+ 3,
+ 0,
+ 4,
+};
+
+static const char _vq_lengthlist__44u8_p6_1[] = {
+ 3, 4, 4, 5, 5, 4, 5, 5, 5, 5, 4, 5, 5, 5, 5, 5,
+ 5, 5, 5, 5, 5, 5, 5, 5, 5,
+};
+
+static const static_codebook _44u8_p6_1 = {
+ 2, 25,
+ (char *)_vq_lengthlist__44u8_p6_1,
+ 1, -533725184, 1611661312, 3, 0,
+ (long *)_vq_quantlist__44u8_p6_1,
+ 0
+};
+
+static const long _vq_quantlist__44u8_p7_0[] = {
+ 6,
+ 5,
+ 7,
+ 4,
+ 8,
+ 3,
+ 9,
+ 2,
+ 10,
+ 1,
+ 11,
+ 0,
+ 12,
+};
+
+static const char _vq_lengthlist__44u8_p7_0[] = {
+ 1, 4, 5, 6, 6, 7, 7, 8, 8,10,10,11,11, 5, 6, 6,
+ 7, 7, 8, 8, 9, 9,11,10,12,11, 5, 6, 6, 7, 7, 8,
+ 8, 9, 9,10,11,11,12, 6, 7, 7, 8, 8, 9, 9,10,10,
+ 11,11,12,12, 6, 7, 7, 8, 8, 9, 9,10,10,11,12,13,
+ 12, 7, 8, 8, 9, 9,10,10,11,11,12,12,13,13, 8, 8,
+ 8, 9, 9,10,10,11,11,12,12,13,13, 9, 9, 9,10,10,
+ 11,11,12,12,13,13,14,14, 9, 9, 9,10,10,11,11,12,
+ 12,13,13,14,14,10,11,11,12,11,13,12,13,13,14,14,
+ 15,15,10,11,11,11,12,12,13,13,14,14,14,15,15,11,
+ 12,12,13,13,14,13,15,14,15,15,16,15,11,11,12,13,
+ 13,13,14,14,14,15,15,15,16,
+};
+
+static const static_codebook _44u8_p7_0 = {
+ 2, 169,
+ (char *)_vq_lengthlist__44u8_p7_0,
+ 1, -523206656, 1618345984, 4, 0,
+ (long *)_vq_quantlist__44u8_p7_0,
+ 0
+};
+
+static const long _vq_quantlist__44u8_p7_1[] = {
+ 5,
+ 4,
+ 6,
+ 3,
+ 7,
+ 2,
+ 8,
+ 1,
+ 9,
+ 0,
+ 10,
+};
+
+static const char _vq_lengthlist__44u8_p7_1[] = {
+ 4, 5, 5, 6, 6, 7, 7, 7, 7, 7, 7, 5, 6, 6, 7, 7,
+ 7, 7, 7, 7, 7, 7, 5, 6, 6, 7, 7, 7, 7, 7, 7, 7,
+ 7, 6, 7, 7, 7, 7, 7, 7, 7, 7, 8, 8, 6, 7, 7, 7,
+ 7, 7, 7, 7, 7, 7, 8, 7, 7, 7, 7, 7, 7, 7, 8, 8,
+ 8, 8, 7, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 7, 7, 7,
+ 8, 7, 8, 8, 8, 8, 8, 8, 7, 7, 7, 7, 7, 8, 8, 8,
+ 8, 8, 8, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8, 8, 7, 7,
+ 7, 8, 8, 8, 8, 8, 8, 8, 8,
+};
+
+static const static_codebook _44u8_p7_1 = {
+ 2, 121,
+ (char *)_vq_lengthlist__44u8_p7_1,
+ 1, -531365888, 1611661312, 4, 0,
+ (long *)_vq_quantlist__44u8_p7_1,
+ 0
+};
+
+static const long _vq_quantlist__44u8_p8_0[] = {
+ 7,
+ 6,
+ 8,
+ 5,
+ 9,
+ 4,
+ 10,
+ 3,
+ 11,
+ 2,
+ 12,
+ 1,
+ 13,
+ 0,
+ 14,
+};
+
+static const char _vq_lengthlist__44u8_p8_0[] = {
+ 1, 4, 4, 7, 7, 8, 8, 8, 7, 9, 8,10, 9,11,10, 4,
+ 6, 6, 8, 8,10, 9, 9, 9,10,10,11,10,12,10, 4, 6,
+ 6, 8, 8,10,10, 9, 9,10,10,11,11,11,12, 7, 8, 8,
+ 10,10,11,11,11,10,12,11,12,12,13,11, 7, 8, 8,10,
+ 10,11,11,10,10,11,11,12,12,13,13, 8,10,10,11,11,
+ 12,11,12,11,13,12,13,12,14,13, 8,10, 9,11,11,12,
+ 12,12,12,12,12,13,13,14,13, 8, 9, 9,11,10,12,11,
+ 13,12,13,13,14,13,14,13, 8, 9, 9,10,11,12,12,12,
+ 12,13,13,14,15,14,14, 9,10,10,12,11,13,12,13,13,
+ 14,13,14,14,14,14, 9,10,10,12,12,12,12,13,13,14,
+ 14,14,15,14,14,10,11,11,13,12,13,12,14,14,14,14,
+ 14,14,15,15,10,11,11,12,12,13,13,14,14,14,15,15,
+ 14,16,15,11,12,12,13,12,14,14,14,13,15,14,15,15,
+ 15,17,11,12,12,13,13,14,14,14,15,15,14,15,15,14,
+ 17,
+};
+
+static const static_codebook _44u8_p8_0 = {
+ 2, 225,
+ (char *)_vq_lengthlist__44u8_p8_0,
+ 1, -520986624, 1620377600, 4, 0,
+ (long *)_vq_quantlist__44u8_p8_0,
+ 0
+};
+
+static const long _vq_quantlist__44u8_p8_1[] = {
+ 10,
+ 9,
+ 11,
+ 8,
+ 12,
+ 7,
+ 13,
+ 6,
+ 14,
+ 5,
+ 15,
+ 4,
+ 16,
+ 3,
+ 17,
+ 2,
+ 18,
+ 1,
+ 19,
+ 0,
+ 20,
+};
+
+static const char _vq_lengthlist__44u8_p8_1[] = {
+ 4, 6, 6, 7, 7, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9,
+ 9, 9, 9, 9, 9, 6, 6, 6, 7, 7, 8, 8, 8, 8, 9, 9,
+ 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 5, 6, 6, 7, 7, 8,
+ 8, 9, 8, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 7,
+ 7, 7, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9,
+ 9, 9, 9, 9, 7, 7, 7, 8, 8, 8, 8, 9, 9, 9, 9, 9,
+ 9, 9, 9, 9, 9, 9, 9, 9, 9, 8, 8, 8, 8, 8, 9, 9,
+ 9, 9, 9, 9, 9, 9, 9, 9, 9, 9,10,10, 9,10, 8, 8,
+ 8, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9,10, 9,10,
+ 10, 9,10, 8, 9, 8, 9, 9, 9, 9, 9, 9, 9, 9,10, 9,
+ 10,10,10,10,10,10,10,10, 8, 9, 8, 9, 9, 9, 9, 9,
+ 9, 9, 9, 9, 9, 9,10,10,10,10, 9,10,10, 9, 9, 9,
+ 9, 9, 9, 9, 9, 9, 9, 9,10, 9,10,10,10,10,10,10,
+ 10,10, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9,10, 9,10,
+ 10,10,10,10,10,10,10, 9, 9, 9, 9, 9, 9, 9,10, 9,
+ 10,10,10,10,10,10,10,10,10,10,10,10, 9, 9, 9, 9,
+ 9, 9, 9, 9, 9, 9,10,10,10,10,10,10,10,10,10,10,
+ 10, 9, 9, 9, 9, 9, 9,10,10,10,10,10,10,10,10,10,
+ 10,10,10,10,10,10, 9, 9, 9, 9, 9, 9, 9,10,10,10,
+ 10,10,10,10,10,10,10,10,10,10,10, 9, 9, 9, 9, 9,
+ 9, 9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,
+ 9, 9, 9, 9, 9,10,10,10,10,10,10,10,10,10,10,10,
+ 10,10,10,10,10, 9, 9, 9,10, 9,10,10,10,10,10,10,
+ 10,10,10,10,10,10,10,10,10,10, 9, 9, 9, 9, 9,10,
+ 9,10,10,10,10,10,10,10,10,10,10,10,10,10,10, 9,
+ 9, 9, 9, 9, 9,10,10,10,10,10,10,10,10,10,10,10,
+ 10,10,10,10, 9, 9, 9,10, 9,10, 9,10,10,10,10,10,
+ 10,10,10,10,10,10,10,10,10,
+};
+
+static const static_codebook _44u8_p8_1 = {
+ 2, 441,
+ (char *)_vq_lengthlist__44u8_p8_1,
+ 1, -529268736, 1611661312, 5, 0,
+ (long *)_vq_quantlist__44u8_p8_1,
+ 0
+};
+
+static const long _vq_quantlist__44u8_p9_0[] = {
+ 4,
+ 3,
+ 5,
+ 2,
+ 6,
+ 1,
+ 7,
+ 0,
+ 8,
+};
+
+static const char _vq_lengthlist__44u8_p9_0[] = {
+ 1, 3, 3, 9, 9, 9, 9, 9, 9, 4, 9, 9, 9, 9, 9, 9,
+ 9, 9, 5, 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, 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, 9, 9, 9, 9, 9, 9, 8, 8, 8,
+ 8,
+};
+
+static const static_codebook _44u8_p9_0 = {
+ 2, 81,
+ (char *)_vq_lengthlist__44u8_p9_0,
+ 1, -511895552, 1631393792, 4, 0,
+ (long *)_vq_quantlist__44u8_p9_0,
+ 0
+};
+
+static const long _vq_quantlist__44u8_p9_1[] = {
+ 9,
+ 8,
+ 10,
+ 7,
+ 11,
+ 6,
+ 12,
+ 5,
+ 13,
+ 4,
+ 14,
+ 3,
+ 15,
+ 2,
+ 16,
+ 1,
+ 17,
+ 0,
+ 18,
+};
+
+static const char _vq_lengthlist__44u8_p9_1[] = {
+ 1, 4, 4, 7, 7, 8, 7, 8, 6, 9, 7,10, 8,11,10,11,
+ 11,11,11, 4, 7, 6, 9, 9,10, 9, 9, 9,10,10,11,10,
+ 11,10,11,11,13,11, 4, 7, 7, 9, 9, 9, 9, 9, 9,10,
+ 10,11,10,11,11,11,12,11,12, 7, 9, 8,11,11,11,11,
+ 10,10,11,11,12,12,12,12,12,12,14,13, 7, 8, 9,10,
+ 11,11,11,10,10,11,11,11,11,12,12,14,12,13,14, 8,
+ 9, 9,11,11,11,11,11,11,12,12,14,12,15,14,14,14,
+ 15,14, 8, 9, 9,11,11,11,11,12,11,12,12,13,13,13,
+ 13,13,13,14,14, 8, 9, 9,11,10,12,11,12,12,13,13,
+ 13,13,15,14,14,14,16,16, 8, 9, 9,10,11,11,12,12,
+ 12,13,13,13,14,14,14,15,16,15,15, 9,10,10,11,12,
+ 12,13,13,13,14,14,16,14,14,16,16,16,16,15, 9,10,
+ 10,11,11,12,13,13,14,15,14,16,14,15,16,16,16,16,
+ 15,10,11,11,12,13,13,14,15,15,15,15,15,16,15,16,
+ 15,16,15,15,10,11,11,13,13,14,13,13,15,14,15,15,
+ 16,15,15,15,16,15,16,10,12,12,14,14,14,14,14,16,
+ 16,15,15,15,16,16,16,16,16,16,11,12,12,14,14,14,
+ 14,15,15,16,15,16,15,16,15,16,16,16,16,12,12,13,
+ 14,14,15,16,16,16,16,16,16,15,16,16,16,16,16,16,
+ 12,13,13,14,14,14,14,15,16,15,16,16,16,16,16,16,
+ 16,16,16,12,13,14,14,14,16,15,16,15,16,16,16,16,
+ 16,16,16,16,16,16,12,14,13,14,15,15,15,16,15,16,
+ 16,15,16,16,16,16,16,16,16,
+};
+
+static const static_codebook _44u8_p9_1 = {
+ 2, 361,
+ (char *)_vq_lengthlist__44u8_p9_1,
+ 1, -518287360, 1622704128, 5, 0,
+ (long *)_vq_quantlist__44u8_p9_1,
+ 0
+};
+
+static const long _vq_quantlist__44u8_p9_2[] = {
+ 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 const char _vq_lengthlist__44u8_p9_2[] = {
+ 2, 3, 4, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 6, 6,
+ 6, 6, 6, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7,
+ 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7,
+ 7,
+};
+
+static const static_codebook _44u8_p9_2 = {
+ 1, 49,
+ (char *)_vq_lengthlist__44u8_p9_2,
+ 1, -526909440, 1611661312, 6, 0,
+ (long *)_vq_quantlist__44u8_p9_2,
+ 0
+};
+
+static const char _huff_lengthlist__44u9__long[] = {
+ 3, 9,13,13,14,15,14,14,15,15, 5, 5, 9,10,12,12,
+ 13,14,16,15,10, 6, 6, 6, 8,11,12,13,16,15,11, 7,
+ 5, 3, 5, 8,10,12,15,15,10,10, 7, 4, 3, 5, 8,10,
+ 12,12,12,12, 9, 7, 5, 4, 6, 8,10,13,13,12,11, 9,
+ 7, 5, 5, 6, 9,12,14,12,12,10, 8, 6, 6, 6, 7,11,
+ 13,12,14,13,10, 8, 7, 7, 7,10,11,11,12,13,12,11,
+ 10, 8, 8, 9,
+};
+
+static const static_codebook _huff_book__44u9__long = {
+ 2, 100,
+ (char *)_huff_lengthlist__44u9__long,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
+static const char _huff_lengthlist__44u9__short[] = {
+ 9,16,18,18,17,17,17,17,17,17, 5, 8,11,12,11,12,
+ 17,17,16,16, 6, 6, 8, 8, 9,10,14,15,16,16, 6, 7,
+ 7, 4, 6, 9,13,16,16,16, 6, 6, 7, 4, 5, 8,11,15,
+ 17,16, 7, 6, 7, 6, 6, 8, 9,10,14,16,11, 8, 8, 7,
+ 6, 6, 3, 4,10,15,14,12,12,10, 5, 6, 3, 3, 8,13,
+ 15,17,15,11, 6, 8, 6, 6, 9,14,17,15,15,12, 8,10,
+ 9, 9,12,15,
+};
+
+static const static_codebook _huff_book__44u9__short = {
+ 2, 100,
+ (char *)_huff_lengthlist__44u9__short,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
+static const long _vq_quantlist__44u9_p1_0[] = {
+ 1,
+ 0,
+ 2,
+};
+
+static const char _vq_lengthlist__44u9_p1_0[] = {
+ 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, 8, 9, 9, 9,10,11, 9,11,11, 7, 9, 9,
+ 9,11,10, 9,11,11, 5, 7, 7, 7, 9, 9, 8, 9,10, 7,
+ 9, 9, 9,11,11, 9,10,11, 7, 9,10, 9,11,11, 9,11,
+ 10,
+};
+
+static const static_codebook _44u9_p1_0 = {
+ 4, 81,
+ (char *)_vq_lengthlist__44u9_p1_0,
+ 1, -535822336, 1611661312, 2, 0,
+ (long *)_vq_quantlist__44u9_p1_0,
+ 0
+};
+
+static const long _vq_quantlist__44u9_p2_0[] = {
+ 2,
+ 1,
+ 3,
+ 0,
+ 4,
+};
+
+static const char _vq_lengthlist__44u9_p2_0[] = {
+ 3, 5, 5, 8, 8, 5, 7, 7, 9, 9, 6, 7, 7, 9, 9, 8,
+ 9, 9,11,10, 8, 9, 9,11,11, 6, 7, 7, 9, 9, 7, 8,
+ 8,10,10, 7, 8, 8, 9,10, 9,10,10,11,11, 9, 9,10,
+ 11,11, 6, 7, 7, 9, 9, 7, 8, 8,10, 9, 7, 8, 8,10,
+ 10, 9,10, 9,11,11, 9,10,10,11,11, 8, 9, 9,11,11,
+ 9,10,10,12,11, 9,10,10,11,12,11,11,11,13,13,11,
+ 11,11,12,13, 8, 9, 9,11,11, 9,10,10,11,11, 9,10,
+ 10,12,11,11,12,11,13,12,11,11,12,13,13, 6, 7, 7,
+ 9, 9, 7, 8, 8,10,10, 7, 8, 8,10,10, 9,10,10,12,
+ 11, 9,10,10,11,12, 7, 8, 8,10,10, 8, 9, 9,11,11,
+ 8, 9, 9,10,10,10,11,11,12,12,10,10,11,12,12, 7,
+ 8, 8,10,10, 8, 9, 8,10,10, 8, 9, 9,10,10,10,11,
+ 10,12,11,10,10,11,12,12, 9,10,10,11,12,10,11,11,
+ 12,12,10,11,10,12,12,12,12,12,13,13,11,12,12,13,
+ 13, 9,10,10,11,11, 9,10,10,12,12,10,11,11,12,13,
+ 11,12,11,13,12,12,12,12,13,14, 6, 7, 7, 9, 9, 7,
+ 8, 8,10,10, 7, 8, 8,10,10, 9,10,10,11,11, 9,10,
+ 10,11,12, 7, 8, 8,10,10, 8, 9, 9,11,10, 8, 8, 9,
+ 10,10,10,11,10,12,12,10,10,11,11,12, 7, 8, 8,10,
+ 10, 8, 9, 9,10,10, 8, 9, 9,10,10,10,11,10,12,12,
+ 10,11,10,12,12, 9,10,10,12,11,10,11,11,12,12, 9,
+ 10,10,12,12,12,12,12,13,13,11,11,12,12,14, 9,10,
+ 10,11,12,10,11,11,12,12,10,11,11,12,12,11,12,12,
+ 14,14,12,12,12,13,13, 8, 9, 9,11,11, 9,10,10,12,
+ 11, 9,10,10,12,12,11,12,11,13,13,11,11,12,13,13,
+ 9,10,10,12,12,10,11,11,12,12,10,11,11,12,12,12,
+ 12,12,14,14,12,12,12,13,13, 9,10,10,12,11,10,11,
+ 10,12,12,10,11,11,12,12,11,12,12,14,13,12,12,12,
+ 13,14,11,12,11,13,13,11,12,12,13,13,12,12,12,14,
+ 14,13,13,13,13,15,13,13,14,15,15,11,11,11,13,13,
+ 11,12,11,13,13,11,12,12,13,13,12,13,12,15,13,13,
+ 13,14,14,15, 8, 9, 9,11,11, 9,10,10,11,12, 9,10,
+ 10,11,12,11,12,11,13,13,11,12,12,13,13, 9,10,10,
+ 11,12,10,11,10,12,12,10,10,11,12,13,12,12,12,14,
+ 13,11,12,12,13,14, 9,10,10,12,12,10,11,11,12,12,
+ 10,11,11,12,12,12,12,12,14,13,12,12,12,14,13,11,
+ 11,11,13,13,11,12,12,14,13,11,11,12,13,13,13,13,
+ 13,15,14,12,12,13,13,15,11,12,12,13,13,12,12,12,
+ 13,14,11,12,12,13,13,13,13,14,14,15,13,13,13,14,
+ 14,
+};
+
+static const static_codebook _44u9_p2_0 = {
+ 4, 625,
+ (char *)_vq_lengthlist__44u9_p2_0,
+ 1, -533725184, 1611661312, 3, 0,
+ (long *)_vq_quantlist__44u9_p2_0,
+ 0
+};
+
+static const long _vq_quantlist__44u9_p3_0[] = {
+ 4,
+ 3,
+ 5,
+ 2,
+ 6,
+ 1,
+ 7,
+ 0,
+ 8,
+};
+
+static const char _vq_lengthlist__44u9_p3_0[] = {
+ 3, 4, 4, 5, 5, 7, 7, 8, 8, 4, 5, 5, 6, 6, 7, 7,
+ 9, 9, 4, 4, 5, 6, 6, 7, 7, 9, 9, 5, 6, 6, 7, 7,
+ 8, 8, 9, 9, 5, 6, 6, 7, 7, 8, 8, 9, 9, 7, 7, 7,
+ 8, 8, 9, 9,10,10, 7, 7, 7, 8, 8, 9, 9,10,10, 8,
+ 9, 9,10, 9,10,10,11,11, 8, 9, 9, 9,10,10,10,11,
+ 11,
+};
+
+static const static_codebook _44u9_p3_0 = {
+ 2, 81,
+ (char *)_vq_lengthlist__44u9_p3_0,
+ 1, -531628032, 1611661312, 4, 0,
+ (long *)_vq_quantlist__44u9_p3_0,
+ 0
+};
+
+static const long _vq_quantlist__44u9_p4_0[] = {
+ 8,
+ 7,
+ 9,
+ 6,
+ 10,
+ 5,
+ 11,
+ 4,
+ 12,
+ 3,
+ 13,
+ 2,
+ 14,
+ 1,
+ 15,
+ 0,
+ 16,
+};
+
+static const char _vq_lengthlist__44u9_p4_0[] = {
+ 4, 5, 5, 6, 6, 7, 7, 8, 8, 8, 8, 9, 9,10,10,11,
+ 11, 5, 5, 5, 6, 6, 7, 7, 8, 8, 8, 8, 9, 9,10,10,
+ 11,11, 5, 5, 5, 6, 6, 7, 7, 8, 8, 8, 8, 9, 9,10,
+ 10,11,11, 6, 6, 6, 7, 6, 7, 7, 8, 8, 9, 9,10,10,
+ 11,11,12,11, 6, 6, 6, 6, 7, 7, 7, 8, 8, 9, 9,10,
+ 10,11,11,11,12, 7, 7, 7, 7, 7, 8, 8, 9, 9, 9, 9,
+ 10,10,11,11,12,12, 7, 7, 7, 7, 7, 8, 8, 9, 9, 9,
+ 9,10,10,11,11,12,12, 8, 8, 8, 8, 8, 9, 8,10, 9,
+ 10,10,11,10,12,11,13,12, 8, 8, 8, 8, 8, 9, 9, 9,
+ 10,10,10,10,11,11,12,12,12, 8, 8, 8, 9, 9, 9, 9,
+ 10,10,11,10,12,11,12,12,13,12, 8, 8, 8, 9, 9, 9,
+ 9,10,10,10,11,11,11,12,12,12,13, 9, 9, 9,10,10,
+ 10,10,11,10,11,11,12,11,13,12,13,13, 9, 9,10,10,
+ 10,10,10,10,11,11,11,11,12,12,13,13,13,10,11,10,
+ 11,11,11,11,12,11,12,12,13,12,13,13,14,13,10,10,
+ 10,11,11,11,11,11,12,12,12,12,13,13,13,13,14,11,
+ 11,11,12,11,12,12,12,12,13,13,13,13,14,13,14,14,
+ 11,11,11,11,12,12,12,12,12,12,13,13,13,13,14,14,
+ 14,
+};
+
+static const static_codebook _44u9_p4_0 = {
+ 2, 289,
+ (char *)_vq_lengthlist__44u9_p4_0,
+ 1, -529530880, 1611661312, 5, 0,
+ (long *)_vq_quantlist__44u9_p4_0,
+ 0
+};
+
+static const long _vq_quantlist__44u9_p5_0[] = {
+ 1,
+ 0,
+ 2,
+};
+
+static const char _vq_lengthlist__44u9_p5_0[] = {
+ 1, 4, 4, 5, 7, 7, 5, 7, 7, 5, 8, 8, 8, 9, 9, 7,
+ 9, 9, 5, 8, 8, 7, 9, 9, 8, 9, 9, 5, 8, 8, 8,10,
+ 10, 8,10,10, 7,10,10, 9,10,12, 9,11,11, 7,10,10,
+ 9,11,10, 9,11,12, 5, 8, 8, 8,10,10, 8,10,10, 7,
+ 10,10, 9,12,11, 9,10,11, 7,10,10, 9,11,11,10,12,
+ 10,
+};
+
+static const static_codebook _44u9_p5_0 = {
+ 4, 81,
+ (char *)_vq_lengthlist__44u9_p5_0,
+ 1, -529137664, 1618345984, 2, 0,
+ (long *)_vq_quantlist__44u9_p5_0,
+ 0
+};
+
+static const long _vq_quantlist__44u9_p5_1[] = {
+ 5,
+ 4,
+ 6,
+ 3,
+ 7,
+ 2,
+ 8,
+ 1,
+ 9,
+ 0,
+ 10,
+};
+
+static const char _vq_lengthlist__44u9_p5_1[] = {
+ 5, 5, 5, 6, 6, 7, 7, 7, 7, 7, 7, 5, 6, 6, 6, 6,
+ 7, 7, 7, 7, 8, 7, 5, 6, 6, 6, 6, 7, 7, 7, 7, 7,
+ 7, 6, 6, 6, 7, 7, 7, 7, 7, 7, 8, 8, 6, 6, 6, 7,
+ 7, 7, 7, 7, 7, 8, 8, 7, 7, 7, 7, 7, 8, 7, 8, 8,
+ 8, 8, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 7, 7, 7,
+ 8, 7, 8, 8, 8, 8, 8, 8, 7, 7, 7, 7, 8, 8, 8, 8,
+ 8, 8, 8, 7, 8, 7, 8, 8, 8, 8, 8, 8, 8, 8, 7, 8,
+ 8, 8, 8, 8, 8, 8, 8, 8, 8,
+};
+
+static const static_codebook _44u9_p5_1 = {
+ 2, 121,
+ (char *)_vq_lengthlist__44u9_p5_1,
+ 1, -531365888, 1611661312, 4, 0,
+ (long *)_vq_quantlist__44u9_p5_1,
+ 0
+};
+
+static const long _vq_quantlist__44u9_p6_0[] = {
+ 6,
+ 5,
+ 7,
+ 4,
+ 8,
+ 3,
+ 9,
+ 2,
+ 10,
+ 1,
+ 11,
+ 0,
+ 12,
+};
+
+static const char _vq_lengthlist__44u9_p6_0[] = {
+ 2, 4, 4, 6, 6, 7, 7, 8, 8, 9, 9,10,10, 4, 6, 5,
+ 7, 7, 8, 8, 8, 8, 9, 9,10,10, 4, 5, 6, 7, 7, 8,
+ 8, 8, 8, 9, 9,10,10, 6, 7, 7, 8, 8, 8, 8, 9, 9,
+ 10,10,10,10, 6, 7, 7, 8, 8, 8, 8, 9, 9,10,10,10,
+ 10, 7, 8, 8, 8, 8, 9, 9, 9, 9,10,10,11,11, 7, 8,
+ 8, 8, 8, 9, 9, 9, 9,10,10,11,11, 8, 8, 8, 9, 9,
+ 9, 9, 9,10,10,10,11,11, 8, 8, 8, 9, 9, 9, 9,10,
+ 9,10,10,11,11, 9, 9, 9,10,10,10,10,10,11,11,11,
+ 11,12, 9, 9, 9,10,10,10,10,10,10,11,10,12,11,10,
+ 10,10,10,10,11,11,11,11,11,12,12,12,10,10,10,10,
+ 10,11,11,11,11,12,11,12,12,
+};
+
+static const static_codebook _44u9_p6_0 = {
+ 2, 169,
+ (char *)_vq_lengthlist__44u9_p6_0,
+ 1, -526516224, 1616117760, 4, 0,
+ (long *)_vq_quantlist__44u9_p6_0,
+ 0
+};
+
+static const long _vq_quantlist__44u9_p6_1[] = {
+ 2,
+ 1,
+ 3,
+ 0,
+ 4,
+};
+
+static const char _vq_lengthlist__44u9_p6_1[] = {
+ 4, 4, 4, 5, 5, 4, 5, 4, 5, 5, 4, 4, 5, 5, 5, 5,
+ 5, 5, 5, 5, 5, 5, 5, 5, 5,
+};
+
+static const static_codebook _44u9_p6_1 = {
+ 2, 25,
+ (char *)_vq_lengthlist__44u9_p6_1,
+ 1, -533725184, 1611661312, 3, 0,
+ (long *)_vq_quantlist__44u9_p6_1,
+ 0
+};
+
+static const long _vq_quantlist__44u9_p7_0[] = {
+ 6,
+ 5,
+ 7,
+ 4,
+ 8,
+ 3,
+ 9,
+ 2,
+ 10,
+ 1,
+ 11,
+ 0,
+ 12,
+};
+
+static const char _vq_lengthlist__44u9_p7_0[] = {
+ 1, 4, 5, 6, 6, 7, 7, 8, 9,10,10,11,11, 5, 6, 6,
+ 7, 7, 8, 8, 9, 9,10,10,11,11, 5, 6, 6, 7, 7, 8,
+ 8, 9, 9,10,10,11,11, 6, 7, 7, 8, 8, 9, 9,10,10,
+ 11,11,12,12, 6, 7, 7, 8, 8, 9, 9,10,10,11,11,12,
+ 12, 8, 8, 8, 9, 9,10,10,11,11,12,12,13,13, 8, 8,
+ 8, 9, 9,10,10,11,11,12,12,13,13, 9, 9, 9,10,10,
+ 11,11,12,12,13,13,13,13, 9, 9, 9,10,10,11,11,12,
+ 12,13,13,14,14,10,10,10,11,11,12,12,13,13,14,13,
+ 15,14,10,10,10,11,11,12,12,13,13,14,14,14,14,11,
+ 11,12,12,12,13,13,14,14,14,14,15,15,11,11,12,12,
+ 12,13,13,14,14,14,15,15,15,
+};
+
+static const static_codebook _44u9_p7_0 = {
+ 2, 169,
+ (char *)_vq_lengthlist__44u9_p7_0,
+ 1, -523206656, 1618345984, 4, 0,
+ (long *)_vq_quantlist__44u9_p7_0,
+ 0
+};
+
+static const long _vq_quantlist__44u9_p7_1[] = {
+ 5,
+ 4,
+ 6,
+ 3,
+ 7,
+ 2,
+ 8,
+ 1,
+ 9,
+ 0,
+ 10,
+};
+
+static const char _vq_lengthlist__44u9_p7_1[] = {
+ 5, 6, 6, 7, 7, 7, 7, 7, 7, 7, 7, 6, 6, 6, 7, 7,
+ 7, 7, 7, 7, 7, 7, 6, 6, 6, 7, 7, 7, 7, 7, 7, 7,
+ 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 6, 7, 7, 7,
+ 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7,
+ 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7,
+ 7, 7, 7, 7, 8, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7,
+ 7, 8, 8, 7, 7, 7, 7, 7, 7, 7, 8, 7, 8, 8, 7, 7,
+ 7, 7, 7, 7, 7, 8, 8, 8, 8,
+};
+
+static const static_codebook _44u9_p7_1 = {
+ 2, 121,
+ (char *)_vq_lengthlist__44u9_p7_1,
+ 1, -531365888, 1611661312, 4, 0,
+ (long *)_vq_quantlist__44u9_p7_1,
+ 0
+};
+
+static const long _vq_quantlist__44u9_p8_0[] = {
+ 7,
+ 6,
+ 8,
+ 5,
+ 9,
+ 4,
+ 10,
+ 3,
+ 11,
+ 2,
+ 12,
+ 1,
+ 13,
+ 0,
+ 14,
+};
+
+static const char _vq_lengthlist__44u9_p8_0[] = {
+ 1, 4, 4, 7, 7, 8, 8, 8, 8, 9, 9,10, 9,11,10, 4,
+ 6, 6, 8, 8, 9, 9, 9, 9,10,10,11,10,12,10, 4, 6,
+ 6, 8, 8, 9,10, 9, 9,10,10,11,11,12,12, 7, 8, 8,
+ 10,10,11,11,10,10,11,11,12,12,13,12, 7, 8, 8,10,
+ 10,11,11,10,10,11,11,12,12,12,13, 8,10, 9,11,11,
+ 12,12,11,11,12,12,13,13,14,13, 8, 9, 9,11,11,12,
+ 12,11,12,12,12,13,13,14,13, 8, 9, 9,10,10,12,11,
+ 13,12,13,13,14,13,15,14, 8, 9, 9,10,10,11,12,12,
+ 12,13,13,13,14,14,14, 9,10,10,12,11,13,12,13,13,
+ 14,13,14,14,14,15, 9,10,10,11,12,12,12,13,13,14,
+ 14,14,15,15,15,10,11,11,12,12,13,13,14,14,14,14,
+ 15,14,16,15,10,11,11,12,12,13,13,13,14,14,14,14,
+ 14,15,16,11,12,12,13,13,14,13,14,14,15,14,15,16,
+ 16,16,11,12,12,13,13,14,13,14,14,15,15,15,16,15,
+ 15,
+};
+
+static const static_codebook _44u9_p8_0 = {
+ 2, 225,
+ (char *)_vq_lengthlist__44u9_p8_0,
+ 1, -520986624, 1620377600, 4, 0,
+ (long *)_vq_quantlist__44u9_p8_0,
+ 0
+};
+
+static const long _vq_quantlist__44u9_p8_1[] = {
+ 10,
+ 9,
+ 11,
+ 8,
+ 12,
+ 7,
+ 13,
+ 6,
+ 14,
+ 5,
+ 15,
+ 4,
+ 16,
+ 3,
+ 17,
+ 2,
+ 18,
+ 1,
+ 19,
+ 0,
+ 20,
+};
+
+static const char _vq_lengthlist__44u9_p8_1[] = {
+ 4, 6, 6, 7, 7, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9,
+ 9, 9, 9, 9, 9, 6, 6, 6, 7, 7, 8, 8, 8, 8, 9, 9,
+ 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 6, 6, 6, 7, 7, 8,
+ 8, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 7,
+ 7, 7, 8, 8, 8, 8, 9, 8, 9, 9, 9, 9, 9, 9, 9, 9,
+ 9, 9, 9, 9, 7, 7, 7, 8, 8, 8, 8, 9, 9, 9, 9, 9,
+ 9, 9, 9, 9, 9, 9, 9, 9, 9, 8, 8, 8, 8, 8, 9, 9,
+ 9, 9, 9, 9, 9, 9, 9, 9, 9,10, 9,10,10,10, 8, 8,
+ 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9,
+ 9,10,10, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9,
+ 10, 9,10, 9,10,10,10,10, 8, 8, 8, 9, 9, 9, 9, 9,
+ 9, 9, 9, 9, 9,10,10, 9,10,10,10,10,10, 9, 9, 9,
+ 9, 9, 9, 9, 9, 9, 9, 9,10, 9,10,10,10,10,10,10,
+ 10,10, 8, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9,10,10,10,
+ 10,10,10,10,10,10,10, 9, 9, 9, 9, 9, 9, 9, 9, 9,
+ 9, 9,10,10,10,10,10,10,10,10,10,10, 9, 9, 9, 9,
+ 9, 9, 9, 9, 9, 9, 9,10,10,10,10,10,10,10,10,10,
+ 10, 9, 9, 9, 9, 9, 9, 9,10, 9,10,10,10,10,10,10,
+ 10,10,10,10,10,10, 9, 9, 9, 9, 9, 9, 9, 9,10,10,
+ 10,10,10,10,10,10,10,10,10,10,10, 9, 9, 9, 9, 9,
+ 10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,
+ 9, 9, 9, 9,10, 9, 9,10,10,10,10,10,10,10,10,10,
+ 10,10,10,10,10, 9, 9, 9,10, 9,10, 9,10,10,10,10,
+ 10,10,10,10,10,10,10,10,10,10, 9, 9, 9,10, 9,10,
+ 10,10,10,10,10,10,10,10,10,10,10,10,10,10,10, 9,
+ 9, 9, 9, 9,10,10,10,10,10,10,10,10,10,10,10,10,
+ 10,10,10,10, 9, 9, 9,10,10,10,10,10,10,10,10,10,
+ 10,10,10,10,10,10,10,10,10,
+};
+
+static const static_codebook _44u9_p8_1 = {
+ 2, 441,
+ (char *)_vq_lengthlist__44u9_p8_1,
+ 1, -529268736, 1611661312, 5, 0,
+ (long *)_vq_quantlist__44u9_p8_1,
+ 0
+};
+
+static const long _vq_quantlist__44u9_p9_0[] = {
+ 7,
+ 6,
+ 8,
+ 5,
+ 9,
+ 4,
+ 10,
+ 3,
+ 11,
+ 2,
+ 12,
+ 1,
+ 13,
+ 0,
+ 14,
+};
+
+static const char _vq_lengthlist__44u9_p9_0[] = {
+ 1, 3, 3,11,11,11,11,11,11,11,11,11,11,11,11, 4,
+ 10,11,11,11,11,11,11,11,11,11,11,11,11,11, 4,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,11,11,11,11,11,11,11,11,11,
+ 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
+ 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
+ 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
+ 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
+ 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
+ 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
+ 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
+ 10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,
+ 10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,
+ 10,
+};
+
+static const static_codebook _44u9_p9_0 = {
+ 2, 225,
+ (char *)_vq_lengthlist__44u9_p9_0,
+ 1, -510036736, 1631393792, 4, 0,
+ (long *)_vq_quantlist__44u9_p9_0,
+ 0
+};
+
+static const long _vq_quantlist__44u9_p9_1[] = {
+ 9,
+ 8,
+ 10,
+ 7,
+ 11,
+ 6,
+ 12,
+ 5,
+ 13,
+ 4,
+ 14,
+ 3,
+ 15,
+ 2,
+ 16,
+ 1,
+ 17,
+ 0,
+ 18,
+};
+
+static const char _vq_lengthlist__44u9_p9_1[] = {
+ 1, 4, 4, 7, 7, 8, 7, 8, 7, 9, 8,10, 9,10,10,11,
+ 11,12,12, 4, 7, 6, 9, 9,10, 9, 9, 8,10,10,11,10,
+ 12,10,13,12,13,12, 4, 6, 6, 9, 9, 9, 9, 9, 9,10,
+ 10,11,11,11,12,12,12,12,12, 7, 9, 8,11,10,10,10,
+ 11,10,11,11,12,12,13,12,13,13,13,13, 7, 8, 9,10,
+ 10,11,11,10,10,11,11,11,12,13,13,13,13,14,14, 8,
+ 9, 9,11,11,12,11,12,12,13,12,12,13,13,14,15,14,
+ 14,14, 8, 9, 9,10,11,11,11,12,12,13,12,13,13,14,
+ 14,14,15,14,16, 8, 9, 9,11,10,12,12,12,12,15,13,
+ 13,13,17,14,15,15,15,14, 8, 9, 9,10,11,11,12,13,
+ 12,13,13,13,14,15,14,14,14,16,15, 9,11,10,12,12,
+ 13,13,13,13,14,14,16,15,14,14,14,15,15,17, 9,10,
+ 10,11,11,13,13,13,14,14,13,15,14,15,14,15,16,15,
+ 16,10,11,11,12,12,13,14,15,14,15,14,14,15,17,16,
+ 15,15,17,17,10,12,11,13,12,14,14,13,14,15,15,15,
+ 15,16,17,17,15,17,16,11,12,12,14,13,15,14,15,16,
+ 17,15,17,15,17,15,15,16,17,15,11,11,12,14,14,14,
+ 14,14,15,15,16,15,17,17,17,16,17,16,15,12,12,13,
+ 14,14,14,15,14,15,15,16,16,17,16,17,15,17,17,16,
+ 12,14,12,14,14,15,15,15,14,14,16,16,16,15,16,16,
+ 15,17,15,12,13,13,14,15,14,15,17,15,17,16,17,17,
+ 17,16,17,16,17,17,12,13,13,14,16,15,15,15,16,15,
+ 17,17,15,17,15,17,16,16,17,
+};
+
+static const static_codebook _44u9_p9_1 = {
+ 2, 361,
+ (char *)_vq_lengthlist__44u9_p9_1,
+ 1, -518287360, 1622704128, 5, 0,
+ (long *)_vq_quantlist__44u9_p9_1,
+ 0
+};
+
+static const long _vq_quantlist__44u9_p9_2[] = {
+ 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 const char _vq_lengthlist__44u9_p9_2[] = {
+ 2, 4, 4, 5, 4, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 6,
+ 6, 6, 6, 7, 6, 7, 6, 7, 7, 7, 7, 7, 7, 7, 7, 7,
+ 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7,
+ 7,
+};
+
+static const static_codebook _44u9_p9_2 = {
+ 1, 49,
+ (char *)_vq_lengthlist__44u9_p9_2,
+ 1, -526909440, 1611661312, 6, 0,
+ (long *)_vq_quantlist__44u9_p9_2,
+ 0
+};
+
+static const char _huff_lengthlist__44un1__long[] = {
+ 5, 6,12, 9,14, 9, 9,19, 6, 1, 5, 5, 8, 7, 9,19,
+ 12, 4, 4, 7, 7, 9,11,18, 9, 5, 6, 6, 8, 7, 8,17,
+ 14, 8, 7, 8, 8,10,12,18, 9, 6, 8, 6, 8, 6, 8,18,
+ 9, 8,11, 8,11, 7, 5,15,16,18,18,18,17,15,11,18,
+};
+
+static const static_codebook _huff_book__44un1__long = {
+ 2, 64,
+ (char *)_huff_lengthlist__44un1__long,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
+static const long _vq_quantlist__44un1__p1_0[] = {
+ 1,
+ 0,
+ 2,
+};
+
+static const char _vq_lengthlist__44un1__p1_0[] = {
+ 1, 4, 4, 5, 8, 7, 5, 7, 8, 5, 8, 8, 8,10,11, 8,
+ 10,11, 5, 8, 8, 8,11,10, 8,11,10, 4, 9, 9, 8,11,
+ 11, 8,11,11, 8,12,11,10,12,14,11,13,13, 7,11,11,
+ 10,13,11,11,13,14, 4, 8, 9, 8,11,11, 8,11,12, 7,
+ 11,11,11,14,13,10,11,13, 8,11,12,11,13,13,10,14,
+ 12,
+};
+
+static const static_codebook _44un1__p1_0 = {
+ 4, 81,
+ (char *)_vq_lengthlist__44un1__p1_0,
+ 1, -535822336, 1611661312, 2, 0,
+ (long *)_vq_quantlist__44un1__p1_0,
+ 0
+};
+
+static const long _vq_quantlist__44un1__p2_0[] = {
+ 1,
+ 0,
+ 2,
+};
+
+static const char _vq_lengthlist__44un1__p2_0[] = {
+ 2, 4, 4, 5, 6, 6, 5, 6, 6, 5, 7, 7, 7, 8, 8, 6,
+ 7, 9, 5, 7, 7, 6, 8, 7, 7, 9, 8, 4, 7, 7, 7, 9,
+ 8, 7, 8, 8, 7, 9, 8, 8, 8,10, 9,10,10, 6, 8, 8,
+ 7,10, 8, 9,10,10, 5, 7, 7, 7, 8, 8, 7, 8, 9, 6,
+ 8, 8, 9,10,10, 7, 8,10, 6, 8, 9, 9,10,10, 8,10,
+ 8,
+};
+
+static const static_codebook _44un1__p2_0 = {
+ 4, 81,
+ (char *)_vq_lengthlist__44un1__p2_0,
+ 1, -535822336, 1611661312, 2, 0,
+ (long *)_vq_quantlist__44un1__p2_0,
+ 0
+};
+
+static const long _vq_quantlist__44un1__p3_0[] = {
+ 2,
+ 1,
+ 3,
+ 0,
+ 4,
+};
+
+static const char _vq_lengthlist__44un1__p3_0[] = {
+ 1, 5, 5, 8, 8, 5, 8, 7, 9, 9, 5, 7, 8, 9, 9, 9,
+ 10, 9,12,12, 9, 9,10,11,12, 6, 8, 8,10,10, 8,10,
+ 10,11,11, 8, 9,10,11,11,10,11,11,13,13,10,11,11,
+ 12,13, 6, 8, 8,10,10, 8,10, 9,11,11, 8,10,10,11,
+ 11,10,11,11,13,12,10,11,11,13,12, 9,11,11,15,13,
+ 10,12,11,15,13,10,11,11,15,14,12,14,13,16,15,12,
+ 13,13,17,16, 9,11,11,13,15,10,11,12,14,15,10,11,
+ 12,14,15,12,13,13,15,16,12,13,13,16,16, 5, 8, 8,
+ 11,11, 8,10,10,12,12, 8,10,10,12,12,11,12,12,14,
+ 14,11,12,12,14,14, 8,11,10,13,12,10,11,12,12,13,
+ 10,12,12,13,13,12,12,13,13,15,11,12,13,15,14, 7,
+ 10,10,12,12, 9,12,11,13,12,10,12,12,13,14,12,13,
+ 12,15,13,11,13,12,14,15,10,12,12,16,14,11,12,12,
+ 16,15,11,13,12,17,16,13,13,15,15,17,13,15,15,20,
+ 17,10,12,12,14,16,11,12,12,15,15,11,13,13,15,18,
+ 13,14,13,15,15,13,15,14,16,16, 5, 8, 8,11,11, 8,
+ 10,10,12,12, 8,10,10,12,12,11,12,12,14,14,11,12,
+ 12,14,15, 7,10,10,13,12,10,12,12,14,13, 9,10,12,
+ 12,13,11,13,13,15,15,11,12,13,13,15, 8,10,10,12,
+ 13,10,12,12,13,13,10,12,11,13,13,11,13,12,15,15,
+ 12,13,12,15,13,10,12,12,16,14,11,12,12,16,15,10,
+ 12,12,16,14,14,15,14,18,16,13,13,14,15,16,10,12,
+ 12,14,16,11,13,13,16,16,11,13,12,14,16,13,15,15,
+ 18,18,13,15,13,16,14, 8,11,11,16,16,10,13,13,17,
+ 16,10,12,12,16,15,14,16,15,20,17,13,14,14,17,17,
+ 9,12,12,16,16,11,13,14,16,17,11,13,13,16,16,15,
+ 15,19,18, 0,14,15,15,18,18, 9,12,12,17,16,11,13,
+ 12,17,16,11,12,13,15,17,15,16,15, 0,19,14,15,14,
+ 19,18,12,14,14, 0,16,13,14,14,19,18,13,15,16,17,
+ 16,15,15,17,18, 0,14,16,16,19, 0,12,14,14,16,18,
+ 13,15,13,17,18,13,15,14,17,18,15,18,14,18,18,16,
+ 17,16, 0,17, 8,11,11,15,15,10,12,12,16,16,10,13,
+ 13,16,16,13,15,14,17,17,14,15,17,17,18, 9,12,12,
+ 16,15,11,13,13,16,16,11,12,13,17,17,14,14,15,17,
+ 17,14,15,16, 0,18, 9,12,12,16,17,11,13,13,16,17,
+ 11,14,13,18,17,14,16,14,17,17,15,17,17,18,18,12,
+ 14,14, 0,16,13,15,15,19, 0,12,13,15, 0, 0,14,17,
+ 16,19, 0,16,15,18,18, 0,12,14,14,17, 0,13,14,14,
+ 17, 0,13,15,14, 0,18,15,16,16, 0,18,15,18,15, 0,
+ 17,
+};
+
+static const static_codebook _44un1__p3_0 = {
+ 4, 625,
+ (char *)_vq_lengthlist__44un1__p3_0,
+ 1, -533725184, 1611661312, 3, 0,
+ (long *)_vq_quantlist__44un1__p3_0,
+ 0
+};
+
+static const long _vq_quantlist__44un1__p4_0[] = {
+ 2,
+ 1,
+ 3,
+ 0,
+ 4,
+};
+
+static const char _vq_lengthlist__44un1__p4_0[] = {
+ 3, 5, 5, 9, 9, 5, 6, 6,10, 9, 5, 6, 6, 9,10,10,
+ 10,10,12,11, 9,10,10,12,12, 5, 7, 7,10,10, 7, 7,
+ 8,10,11, 7, 7, 8,10,11,10,10,11,11,13,10,10,11,
+ 11,13, 6, 7, 7,10,10, 7, 8, 7,11,10, 7, 8, 7,10,
+ 10,10,11, 9,13,11,10,11,10,13,11,10,10,10,14,13,
+ 10,11,11,14,13,10,10,11,13,14,12,12,13,15,15,12,
+ 12,13,13,14,10,10,10,12,13,10,11,10,13,13,10,11,
+ 11,13,13,12,13,12,14,13,12,13,13,14,13, 5, 7, 7,
+ 10,10, 7, 8, 8,11,10, 7, 8, 8,10,10,11,11,11,13,
+ 13,10,11,11,12,12, 7, 8, 8,11,11, 7, 8, 9,10,12,
+ 8, 9, 9,11,11,11,10,12,11,14,11,11,12,13,13, 6,
+ 8, 8,10,11, 7, 9, 7,12,10, 8, 9,10,11,12,10,12,
+ 10,14,11,11,12,11,13,13,10,11,11,14,14,10,10,11,
+ 13,14,11,12,12,15,13,12,11,14,12,16,12,13,14,15,
+ 16,10,10,11,13,14,10,11,10,14,12,11,12,12,13,14,
+ 12,13,11,15,12,14,14,14,15,15, 5, 7, 7,10,10, 7,
+ 8, 8,10,10, 7, 8, 8,10,11,10,11,10,12,12,10,11,
+ 11,12,13, 6, 8, 8,11,11, 8, 9, 9,12,11, 7, 7, 9,
+ 10,12,11,11,11,12,13,11,10,12,11,15, 7, 8, 8,11,
+ 11, 8, 9, 9,11,11, 7, 9, 8,12,10,11,12,11,13,12,
+ 11,12,10,15,11,10,11,10,14,12,11,12,11,14,13,10,
+ 10,11,13,14,13,13,13,17,15,12,11,14,12,15,10,10,
+ 11,13,14,11,12,12,14,14,10,11,10,14,13,13,14,13,
+ 16,17,12,14,11,16,12, 9,10,10,14,13,10,11,10,14,
+ 14,10,11,11,13,13,13,14,14,16,15,12,13,13,14,14,
+ 9,11,10,14,13,10,10,12,13,14,11,12,11,14,13,13,
+ 14,14,14,15,13,14,14,15,15, 9,10,11,13,14,10,11,
+ 10,15,13,11,11,12,12,15,13,14,12,15,14,13,13,14,
+ 14,15,12,13,12,16,14,11,11,12,15,14,13,15,13,16,
+ 14,13,12,15,12,17,15,16,15,16,16,12,12,13,13,15,
+ 11,13,11,15,14,13,13,14,15,17,13,14,12, 0,13,14,
+ 15,14,15, 0, 9,10,10,13,13,10,11,11,13,13,10,11,
+ 11,13,13,12,13,12,14,14,13,14,14,15,17, 9,10,10,
+ 13,13,11,12,11,15,12,10,10,11,13,16,13,14,13,15,
+ 14,13,13,14,15,16,10,10,11,13,14,11,11,12,13,14,
+ 10,12,11,14,14,13,13,13,14,15,13,15,13,16,15,12,
+ 13,12,15,13,12,15,13,15,15,11,11,13,14,15,15,15,
+ 15,15,17,13,12,14,13,17,12,12,14,14,15,13,13,14,
+ 14,16,11,13,11,16,15,14,16,16,17, 0,14,13,11,16,
+ 12,
+};
+
+static const static_codebook _44un1__p4_0 = {
+ 4, 625,
+ (char *)_vq_lengthlist__44un1__p4_0,
+ 1, -533725184, 1611661312, 3, 0,
+ (long *)_vq_quantlist__44un1__p4_0,
+ 0
+};
+
+static const long _vq_quantlist__44un1__p5_0[] = {
+ 4,
+ 3,
+ 5,
+ 2,
+ 6,
+ 1,
+ 7,
+ 0,
+ 8,
+};
+
+static const char _vq_lengthlist__44un1__p5_0[] = {
+ 1, 4, 4, 7, 7, 8, 8, 9, 9, 4, 6, 5, 8, 7, 8, 8,
+ 10, 9, 4, 6, 6, 8, 8, 8, 8,10,10, 7, 8, 7, 9, 9,
+ 9, 9,11,10, 7, 8, 8, 9, 9, 9, 9,10,11, 8, 8, 8,
+ 9, 9,10,10,11,11, 8, 8, 8, 9, 9,10,10,11,11, 9,
+ 10,10,11,10,11,11,12,12, 9,10,10,10,11,11,11,12,
+ 12,
+};
+
+static const static_codebook _44un1__p5_0 = {
+ 2, 81,
+ (char *)_vq_lengthlist__44un1__p5_0,
+ 1, -531628032, 1611661312, 4, 0,
+ (long *)_vq_quantlist__44un1__p5_0,
+ 0
+};
+
+static const long _vq_quantlist__44un1__p6_0[] = {
+ 6,
+ 5,
+ 7,
+ 4,
+ 8,
+ 3,
+ 9,
+ 2,
+ 10,
+ 1,
+ 11,
+ 0,
+ 12,
+};
+
+static const char _vq_lengthlist__44un1__p6_0[] = {
+ 1, 4, 4, 6, 6, 8, 8,10,10,11,11,15,15, 4, 5, 5,
+ 8, 8, 9, 9,11,11,12,12,16,16, 4, 5, 6, 8, 8, 9,
+ 9,11,11,12,12,14,14, 7, 8, 8, 9, 9,10,10,11,12,
+ 13,13,16,17, 7, 8, 8, 9, 9,10,10,12,12,12,13,15,
+ 15, 9,10,10,10,10,11,11,12,12,13,13,15,16, 9, 9,
+ 9,10,10,11,11,13,12,13,13,17,17,10,11,11,11,12,
+ 12,12,13,13,14,15, 0,18,10,11,11,12,12,12,13,14,
+ 13,14,14,17,16,11,12,12,13,13,14,14,14,14,15,16,
+ 17,16,11,12,12,13,13,14,14,14,14,15,15,17,17,14,
+ 15,15,16,16,16,17,17,16, 0,17, 0,18,14,15,15,16,
+ 16, 0,15,18,18, 0,16, 0, 0,
+};
+
+static const static_codebook _44un1__p6_0 = {
+ 2, 169,
+ (char *)_vq_lengthlist__44un1__p6_0,
+ 1, -526516224, 1616117760, 4, 0,
+ (long *)_vq_quantlist__44un1__p6_0,
+ 0
+};
+
+static const long _vq_quantlist__44un1__p6_1[] = {
+ 2,
+ 1,
+ 3,
+ 0,
+ 4,
+};
+
+static const char _vq_lengthlist__44un1__p6_1[] = {
+ 2, 4, 4, 5, 5, 4, 5, 5, 5, 5, 4, 5, 5, 6, 5, 5,
+ 6, 5, 6, 6, 5, 6, 6, 6, 6,
+};
+
+static const static_codebook _44un1__p6_1 = {
+ 2, 25,
+ (char *)_vq_lengthlist__44un1__p6_1,
+ 1, -533725184, 1611661312, 3, 0,
+ (long *)_vq_quantlist__44un1__p6_1,
+ 0
+};
+
+static const long _vq_quantlist__44un1__p7_0[] = {
+ 2,
+ 1,
+ 3,
+ 0,
+ 4,
+};
+
+static const char _vq_lengthlist__44un1__p7_0[] = {
+ 1, 5, 3,11,11,11,11,11,11,11, 8,11,11,11,11,11,
+ 11,11,11,11,11,11,11,11,11,10,11,11,11,11,11,11,
+ 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
+ 11,11,10,11,11,11,11,11,11,11,11,11,11,11,11,11,
+ 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
+ 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
+ 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
+ 11,11,11,11,11,11,11,11,11,11,11,11,11, 8,11,11,
+ 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
+ 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
+ 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,10,
+ 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
+ 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
+ 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
+ 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
+ 11,11,11,11,11,11,11,11,11,11, 7,11,11,11,11,11,
+ 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
+ 11,11,11,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,11,11,11,11,11,11,
+ 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
+ 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
+ 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
+ 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
+ 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
+ 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
+ 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
+ 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
+ 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
+ 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
+ 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
+ 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
+ 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
+ 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
+ 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
+ 11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,
+ 10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,
+ 10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,
+ 10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,
+ 10,
+};
+
+static const static_codebook _44un1__p7_0 = {
+ 4, 625,
+ (char *)_vq_lengthlist__44un1__p7_0,
+ 1, -518709248, 1626677248, 3, 0,
+ (long *)_vq_quantlist__44un1__p7_0,
+ 0
+};
+
+static const long _vq_quantlist__44un1__p7_1[] = {
+ 6,
+ 5,
+ 7,
+ 4,
+ 8,
+ 3,
+ 9,
+ 2,
+ 10,
+ 1,
+ 11,
+ 0,
+ 12,
+};
+
+static const char _vq_lengthlist__44un1__p7_1[] = {
+ 1, 4, 4, 6, 6, 6, 6, 9, 8, 9, 8, 8, 8, 5, 7, 7,
+ 7, 7, 8, 8, 8,10, 8,10, 8, 9, 5, 7, 7, 8, 7, 7,
+ 8,10,10,11,10,12,11, 7, 8, 8, 9, 9, 9,10,11,11,
+ 11,11,11,11, 7, 8, 8, 8, 9, 9, 9,10,10,10,11,11,
+ 12, 7, 8, 8, 9, 9,10,11,11,12,11,12,11,11, 7, 8,
+ 8, 9, 9,10,10,11,11,11,12,12,11, 8,10,10,10,10,
+ 11,11,14,11,12,12,12,13, 9,10,10,10,10,12,11,14,
+ 11,14,11,12,13,10,11,11,11,11,13,11,14,14,13,13,
+ 13,14,11,11,11,12,11,12,12,12,13,14,14,13,14,12,
+ 11,12,12,12,12,13,13,13,14,13,14,14,11,12,12,14,
+ 12,13,13,12,13,13,14,14,14,
+};
+
+static const static_codebook _44un1__p7_1 = {
+ 2, 169,
+ (char *)_vq_lengthlist__44un1__p7_1,
+ 1, -523010048, 1618608128, 4, 0,
+ (long *)_vq_quantlist__44un1__p7_1,
+ 0
+};
+
+static const long _vq_quantlist__44un1__p7_2[] = {
+ 6,
+ 5,
+ 7,
+ 4,
+ 8,
+ 3,
+ 9,
+ 2,
+ 10,
+ 1,
+ 11,
+ 0,
+ 12,
+};
+
+static const char _vq_lengthlist__44un1__p7_2[] = {
+ 3, 4, 4, 6, 6, 7, 7, 8, 8, 9, 9, 9, 8, 4, 5, 5,
+ 6, 6, 8, 8, 9, 8, 9, 9, 9, 9, 4, 5, 5, 7, 6, 8,
+ 8, 8, 8, 9, 8, 9, 8, 6, 7, 7, 7, 8, 8, 8, 9, 9,
+ 9, 9, 9, 9, 6, 7, 7, 7, 7, 8, 8, 9, 9, 9, 9, 9,
+ 9, 7, 8, 8, 8, 8, 9, 8, 9, 9,10, 9, 9,10, 7, 8,
+ 8, 8, 8, 9, 9, 9, 9, 9, 9,10,10, 8, 9, 9, 9, 9,
+ 9, 9, 9, 9,10,10, 9,10, 8, 9, 9, 9, 9, 9, 9, 9,
+ 9, 9, 9,10,10, 9, 9, 9,10, 9, 9,10, 9, 9,10,10,
+ 10,10, 9, 9, 9, 9, 9, 9, 9,10, 9,10,10,10,10, 9,
+ 9, 9,10, 9, 9,10,10, 9,10,10,10,10, 9, 9, 9,10,
+ 9, 9, 9,10,10,10,10,10,10,
+};
+
+static const static_codebook _44un1__p7_2 = {
+ 2, 169,
+ (char *)_vq_lengthlist__44un1__p7_2,
+ 1, -531103744, 1611661312, 4, 0,
+ (long *)_vq_quantlist__44un1__p7_2,
+ 0
+};
+
+static const char _huff_lengthlist__44un1__short[] = {
+ 12,12,14,12,14,14,14,14,12, 6, 6, 8, 9, 9,11,14,
+ 12, 4, 2, 6, 6, 7,11,14,13, 6, 5, 7, 8, 9,11,14,
+ 13, 8, 5, 8, 6, 8,12,14,12, 7, 7, 8, 8, 8,10,14,
+ 12, 6, 3, 4, 4, 4, 7,14,11, 7, 4, 6, 6, 6, 8,14,
+};
+
+static const static_codebook _huff_book__44un1__short = {
+ 2, 64,
+ (char *)_huff_lengthlist__44un1__short,
+ 0, 0, 0, 0, 0,
+ NULL,
+ 0
+};
+
diff --git a/Sources/libvorbis/lib/codebook.c b/Sources/libvorbis/lib/codebook.c
new file mode 100644
index 000000000..72f8a17a3
--- /dev/null
+++ b/Sources/libvorbis/lib/codebook.c
@@ -0,0 +1,490 @@
+/********************************************************************
+ * *
+ * THIS FILE IS PART OF THE OggVorbis SOFTWARE CODEC SOURCE CODE. *
+ * USE, DISTRIBUTION AND REPRODUCTION OF THIS LIBRARY SOURCE IS *
+ * GOVERNED BY A BSD-STYLE SOURCE LICENSE INCLUDED WITH THIS SOURCE *
+ * IN 'COPYING'. PLEASE READ THESE TERMS BEFORE DISTRIBUTING. *
+ * *
+ * THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2015 *
+ * by the Xiph.Org Foundation http://www.xiph.org/ *
+ * *
+ ********************************************************************
+
+ function: basic codebook pack/unpack/code/decode operations
+ last mod: $Id: codebook.c 19457 2015-03-03 00:15:29Z giles $
+
+ ********************************************************************/
+
+#include
+#include
+#include
+#include
+#include "vorbis/codec.h"
+#include "codebook.h"
+#include "scales.h"
+#include "misc.h"
+#include "os.h"
+
+/* packs the given codebook into the bitstream **************************/
+
+int vorbis_staticbook_pack(const static_codebook *c,oggpack_buffer *opb){
+ long i,j;
+ int ordered=0;
+
+ /* first the basic parameters */
+ oggpack_write(opb,0x564342,24);
+ oggpack_write(opb,c->dim,16);
+ oggpack_write(opb,c->entries,24);
+
+ /* pack the codewords. There are two packings; length ordered and
+ length random. Decide between the two now. */
+
+ for(i=1;ientries;i++)
+ if(c->lengthlist[i-1]==0 || c->lengthlist[i]lengthlist[i-1])break;
+ if(i==c->entries)ordered=1;
+
+ if(ordered){
+ /* length ordered. We only need to say how many codewords of
+ each length. The actual codewords are generated
+ deterministically */
+
+ long count=0;
+ oggpack_write(opb,1,1); /* ordered */
+ oggpack_write(opb,c->lengthlist[0]-1,5); /* 1 to 32 */
+
+ for(i=1;ientries;i++){
+ char this=c->lengthlist[i];
+ char last=c->lengthlist[i-1];
+ if(this>last){
+ for(j=last;jentries-count));
+ count=i;
+ }
+ }
+ }
+ oggpack_write(opb,i-count,ov_ilog(c->entries-count));
+
+ }else{
+ /* length random. Again, we don't code the codeword itself, just
+ the length. This time, though, we have to encode each length */
+ oggpack_write(opb,0,1); /* unordered */
+
+ /* algortihmic mapping has use for 'unused entries', which we tag
+ here. The algorithmic mapping happens as usual, but the unused
+ entry has no codeword. */
+ for(i=0;ientries;i++)
+ if(c->lengthlist[i]==0)break;
+
+ if(i==c->entries){
+ oggpack_write(opb,0,1); /* no unused entries */
+ for(i=0;ientries;i++)
+ oggpack_write(opb,c->lengthlist[i]-1,5);
+ }else{
+ oggpack_write(opb,1,1); /* we have unused entries; thus we tag */
+ for(i=0;ientries;i++){
+ if(c->lengthlist[i]==0){
+ oggpack_write(opb,0,1);
+ }else{
+ oggpack_write(opb,1,1);
+ oggpack_write(opb,c->lengthlist[i]-1,5);
+ }
+ }
+ }
+ }
+
+ /* is the entry number the desired return value, or do we have a
+ mapping? If we have a mapping, what type? */
+ oggpack_write(opb,c->maptype,4);
+ switch(c->maptype){
+ case 0:
+ /* no mapping */
+ break;
+ case 1:case 2:
+ /* implicitly populated value mapping */
+ /* explicitly populated value mapping */
+
+ if(!c->quantlist){
+ /* no quantlist? error */
+ return(-1);
+ }
+
+ /* values that define the dequantization */
+ oggpack_write(opb,c->q_min,32);
+ oggpack_write(opb,c->q_delta,32);
+ oggpack_write(opb,c->q_quant-1,4);
+ oggpack_write(opb,c->q_sequencep,1);
+
+ {
+ int quantvals;
+ switch(c->maptype){
+ case 1:
+ /* a single column of (c->entries/c->dim) quantized values for
+ building a full value list algorithmically (square lattice) */
+ quantvals=_book_maptype1_quantvals(c);
+ break;
+ case 2:
+ /* every value (c->entries*c->dim total) specified explicitly */
+ quantvals=c->entries*c->dim;
+ break;
+ default: /* NOT_REACHABLE */
+ quantvals=-1;
+ }
+
+ /* quantized values */
+ for(i=0;iquantlist[i]),c->q_quant);
+
+ }
+ break;
+ default:
+ /* error case; we don't have any other map types now */
+ return(-1);
+ }
+
+ return(0);
+}
+
+/* unpacks a codebook from the packet buffer into the codebook struct,
+ readies the codebook auxiliary structures for decode *************/
+static_codebook *vorbis_staticbook_unpack(oggpack_buffer *opb){
+ long i,j;
+ static_codebook *s=_ogg_calloc(1,sizeof(*s));
+ s->allocedp=1;
+
+ /* make sure alignment is correct */
+ if(oggpack_read(opb,24)!=0x564342)goto _eofout;
+
+ /* first the basic parameters */
+ s->dim=oggpack_read(opb,16);
+ s->entries=oggpack_read(opb,24);
+ if(s->entries==-1)goto _eofout;
+
+ if(ov_ilog(s->dim)+ov_ilog(s->entries)>24)goto _eofout;
+
+ /* codeword ordering.... length ordered or unordered? */
+ switch((int)oggpack_read(opb,1)){
+ case 0:{
+ long unused;
+ /* allocated but unused entries? */
+ unused=oggpack_read(opb,1);
+ if((s->entries*(unused?1:5)+7)>>3>opb->storage-oggpack_bytes(opb))
+ goto _eofout;
+ /* unordered */
+ s->lengthlist=_ogg_malloc(sizeof(*s->lengthlist)*s->entries);
+
+ /* allocated but unused entries? */
+ if(unused){
+ /* yes, unused entries */
+
+ for(i=0;ientries;i++){
+ if(oggpack_read(opb,1)){
+ long num=oggpack_read(opb,5);
+ if(num==-1)goto _eofout;
+ s->lengthlist[i]=num+1;
+ }else
+ s->lengthlist[i]=0;
+ }
+ }else{
+ /* all entries used; no tagging */
+ for(i=0;ientries;i++){
+ long num=oggpack_read(opb,5);
+ if(num==-1)goto _eofout;
+ s->lengthlist[i]=num+1;
+ }
+ }
+
+ break;
+ }
+ case 1:
+ /* ordered */
+ {
+ long length=oggpack_read(opb,5)+1;
+ if(length==0)goto _eofout;
+ s->lengthlist=_ogg_malloc(sizeof(*s->lengthlist)*s->entries);
+
+ for(i=0;ientries;){
+ long num=oggpack_read(opb,ov_ilog(s->entries-i));
+ if(num==-1)goto _eofout;
+ if(length>32 || num>s->entries-i ||
+ (num>0 && (num-1)>>(length-1)>1)){
+ goto _errout;
+ }
+ if(length>32)goto _errout;
+ for(j=0;jlengthlist[i]=length;
+ length++;
+ }
+ }
+ break;
+ default:
+ /* EOF */
+ goto _eofout;
+ }
+
+ /* Do we have a mapping to unpack? */
+ switch((s->maptype=oggpack_read(opb,4))){
+ case 0:
+ /* no mapping */
+ break;
+ case 1: case 2:
+ /* implicitly populated value mapping */
+ /* explicitly populated value mapping */
+
+ s->q_min=oggpack_read(opb,32);
+ s->q_delta=oggpack_read(opb,32);
+ s->q_quant=oggpack_read(opb,4)+1;
+ s->q_sequencep=oggpack_read(opb,1);
+ if(s->q_sequencep==-1)goto _eofout;
+
+ {
+ int quantvals=0;
+ switch(s->maptype){
+ case 1:
+ quantvals=(s->dim==0?0:_book_maptype1_quantvals(s));
+ break;
+ case 2:
+ quantvals=s->entries*s->dim;
+ break;
+ }
+
+ /* quantized values */
+ if(((quantvals*s->q_quant+7)>>3)>opb->storage-oggpack_bytes(opb))
+ goto _eofout;
+ s->quantlist=_ogg_malloc(sizeof(*s->quantlist)*quantvals);
+ for(i=0;iquantlist[i]=oggpack_read(opb,s->q_quant);
+
+ if(quantvals&&s->quantlist[quantvals-1]==-1)goto _eofout;
+ }
+ break;
+ default:
+ goto _errout;
+ }
+
+ /* all set */
+ return(s);
+
+ _errout:
+ _eofout:
+ vorbis_staticbook_destroy(s);
+ return(NULL);
+}
+
+/* returns the number of bits ************************************************/
+int vorbis_book_encode(codebook *book, int a, oggpack_buffer *b){
+ if(a<0 || a>=book->c->entries)return(0);
+ oggpack_write(b,book->codelist[a],book->c->lengthlist[a]);
+ return(book->c->lengthlist[a]);
+}
+
+/* the 'eliminate the decode tree' optimization actually requires the
+ codewords to be MSb first, not LSb. This is an annoying inelegancy
+ (and one of the first places where carefully thought out design
+ turned out to be wrong; Vorbis II and future Ogg codecs should go
+ to an MSb bitpacker), but not actually the huge hit it appears to
+ be. The first-stage decode table catches most words so that
+ bitreverse is not in the main execution path. */
+
+static ogg_uint32_t bitreverse(ogg_uint32_t x){
+ x= ((x>>16)&0x0000ffff) | ((x<<16)&0xffff0000);
+ x= ((x>> 8)&0x00ff00ff) | ((x<< 8)&0xff00ff00);
+ x= ((x>> 4)&0x0f0f0f0f) | ((x<< 4)&0xf0f0f0f0);
+ x= ((x>> 2)&0x33333333) | ((x<< 2)&0xcccccccc);
+ return((x>> 1)&0x55555555) | ((x<< 1)&0xaaaaaaaa);
+}
+
+STIN long decode_packed_entry_number(codebook *book, oggpack_buffer *b){
+ int read=book->dec_maxlength;
+ long lo,hi;
+ long lok = oggpack_look(b,book->dec_firsttablen);
+
+ if (lok >= 0) {
+ long entry = book->dec_firsttable[lok];
+ if(entry&0x80000000UL){
+ lo=(entry>>15)&0x7fff;
+ hi=book->used_entries-(entry&0x7fff);
+ }else{
+ oggpack_adv(b, book->dec_codelengths[entry-1]);
+ return(entry-1);
+ }
+ }else{
+ lo=0;
+ hi=book->used_entries;
+ }
+
+ /* Single entry codebooks use a firsttablen of 1 and a
+ dec_maxlength of 1. If a single-entry codebook gets here (due to
+ failure to read one bit above), the next look attempt will also
+ fail and we'll correctly kick out instead of trying to walk the
+ underformed tree */
+
+ lok = oggpack_look(b, read);
+
+ while(lok<0 && read>1)
+ lok = oggpack_look(b, --read);
+ if(lok<0)return -1;
+
+ /* bisect search for the codeword in the ordered list */
+ {
+ ogg_uint32_t testword=bitreverse((ogg_uint32_t)lok);
+
+ while(hi-lo>1){
+ long p=(hi-lo)>>1;
+ long test=book->codelist[lo+p]>testword;
+ lo+=p&(test-1);
+ hi-=p&(-test);
+ }
+
+ if(book->dec_codelengths[lo]<=read){
+ oggpack_adv(b, book->dec_codelengths[lo]);
+ return(lo);
+ }
+ }
+
+ oggpack_adv(b, read);
+
+ return(-1);
+}
+
+/* Decode side is specced and easier, because we don't need to find
+ matches using different criteria; we simply read and map. There are
+ two things we need to do 'depending':
+
+ We may need to support interleave. We don't really, but it's
+ convenient to do it here rather than rebuild the vector later.
+
+ Cascades may be additive or multiplicitive; this is not inherent in
+ the codebook, but set in the code using the codebook. Like
+ interleaving, it's easiest to do it here.
+ addmul==0 -> declarative (set the value)
+ addmul==1 -> additive
+ addmul==2 -> multiplicitive */
+
+/* returns the [original, not compacted] entry number or -1 on eof *********/
+long vorbis_book_decode(codebook *book, oggpack_buffer *b){
+ if(book->used_entries>0){
+ long packed_entry=decode_packed_entry_number(book,b);
+ if(packed_entry>=0)
+ return(book->dec_index[packed_entry]);
+ }
+
+ /* if there's no dec_index, the codebook unpacking isn't collapsed */
+ return(-1);
+}
+
+/* returns 0 on OK or -1 on eof *************************************/
+/* decode vector / dim granularity gaurding is done in the upper layer */
+long vorbis_book_decodevs_add(codebook *book,float *a,oggpack_buffer *b,int n){
+ if(book->used_entries>0){
+ int step=n/book->dim;
+ long *entry = alloca(sizeof(*entry)*step);
+ float **t = alloca(sizeof(*t)*step);
+ int i,j,o;
+
+ for (i = 0; i < step; i++) {
+ entry[i]=decode_packed_entry_number(book,b);
+ if(entry[i]==-1)return(-1);
+ t[i] = book->valuelist+entry[i]*book->dim;
+ }
+ for(i=0,o=0;idim;i++,o+=step)
+ for (j=0;jused_entries>0){
+ int i,j,entry;
+ float *t;
+
+ if(book->dim>8){
+ for(i=0;ivaluelist+entry*book->dim;
+ for (j=0;jdim;)
+ a[i++]+=t[j++];
+ }
+ }else{
+ for(i=0;ivaluelist+entry*book->dim;
+ j=0;
+ switch((int)book->dim){
+ case 8:
+ a[i++]+=t[j++];
+ case 7:
+ a[i++]+=t[j++];
+ case 6:
+ a[i++]+=t[j++];
+ case 5:
+ a[i++]+=t[j++];
+ case 4:
+ a[i++]+=t[j++];
+ case 3:
+ a[i++]+=t[j++];
+ case 2:
+ a[i++]+=t[j++];
+ case 1:
+ a[i++]+=t[j++];
+ case 0:
+ break;
+ }
+ }
+ }
+ }
+ return(0);
+}
+
+/* unlike the others, we guard against n not being an integer number
+ of internally rather than in the upper layer (called only by
+ floor0) */
+long vorbis_book_decodev_set(codebook *book,float *a,oggpack_buffer *b,int n){
+ if(book->used_entries>0){
+ int i,j,entry;
+ float *t;
+
+ for(i=0;ivaluelist+entry*book->dim;
+ for (j=0;idim;){
+ a[i++]=t[j++];
+ }
+ }
+ }else{
+ int i;
+
+ for(i=0;iused_entries>0){
+ for(i=offset/ch;i<(offset+n)/ch;){
+ entry = decode_packed_entry_number(book,b);
+ if(entry==-1)return(-1);
+ {
+ const float *t = book->valuelist+entry*book->dim;
+ for (j=0;jdim;j++){
+ a[chptr++][i]+=t[j];
+ if(chptr==ch){
+ chptr=0;
+ i++;
+ }
+ }
+ }
+ }
+ }
+ return(0);
+}
diff --git a/Sources/libvorbis/lib/codebook.h b/Sources/libvorbis/lib/codebook.h
new file mode 100644
index 000000000..537d6c12d
--- /dev/null
+++ b/Sources/libvorbis/lib/codebook.h
@@ -0,0 +1,118 @@
+/********************************************************************
+ * *
+ * THIS FILE IS PART OF THE OggVorbis SOFTWARE CODEC SOURCE CODE. *
+ * USE, DISTRIBUTION AND REPRODUCTION OF THIS LIBRARY SOURCE IS *
+ * GOVERNED BY A BSD-STYLE SOURCE LICENSE INCLUDED WITH THIS SOURCE *
+ * IN 'COPYING'. PLEASE READ THESE TERMS BEFORE DISTRIBUTING. *
+ * *
+ * THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2015 *
+ * by the Xiph.Org Foundation http://www.xiph.org/ *
+ * *
+ ********************************************************************
+
+ function: basic shared codebook operations
+ last mod: $Id: codebook.h 19457 2015-03-03 00:15:29Z giles $
+
+ ********************************************************************/
+
+#ifndef _V_CODEBOOK_H_
+#define _V_CODEBOOK_H_
+
+#include
+
+/* This structure encapsulates huffman and VQ style encoding books; it
+ doesn't do anything specific to either.
+
+ valuelist/quantlist are nonNULL (and q_* significant) only if
+ there's entry->value mapping to be done.
+
+ If encode-side mapping must be done (and thus the entry needs to be
+ hunted), the auxiliary encode pointer will point to a decision
+ tree. This is true of both VQ and huffman, but is mostly useful
+ with VQ.
+
+*/
+
+typedef struct static_codebook{
+ long dim; /* codebook dimensions (elements per vector) */
+ long entries; /* codebook entries */
+ char *lengthlist; /* codeword lengths in bits */
+
+ /* mapping ***************************************************************/
+ int maptype; /* 0=none
+ 1=implicitly populated values from map column
+ 2=listed arbitrary values */
+
+ /* The below does a linear, single monotonic sequence mapping. */
+ long q_min; /* packed 32 bit float; quant value 0 maps to minval */
+ long q_delta; /* packed 32 bit float; val 1 - val 0 == delta */
+ int q_quant; /* bits: 0 < quant <= 16 */
+ int q_sequencep; /* bitflag */
+
+ long *quantlist; /* map == 1: (int)(entries^(1/dim)) element column map
+ map == 2: list of dim*entries quantized entry vals
+ */
+ int allocedp;
+} static_codebook;
+
+typedef struct codebook{
+ long dim; /* codebook dimensions (elements per vector) */
+ long entries; /* codebook entries */
+ long used_entries; /* populated codebook entries */
+ const static_codebook *c;
+
+ /* for encode, the below are entry-ordered, fully populated */
+ /* for decode, the below are ordered by bitreversed codeword and only
+ used entries are populated */
+ float *valuelist; /* list of dim*entries actual entry values */
+ ogg_uint32_t *codelist; /* list of bitstream codewords for each entry */
+
+ int *dec_index; /* only used if sparseness collapsed */
+ char *dec_codelengths;
+ ogg_uint32_t *dec_firsttable;
+ int dec_firsttablen;
+ int dec_maxlength;
+
+ /* The current encoder uses only centered, integer-only lattice books. */
+ int quantvals;
+ int minval;
+ int delta;
+} codebook;
+
+extern void vorbis_staticbook_destroy(static_codebook *b);
+extern int vorbis_book_init_encode(codebook *dest,const static_codebook *source);
+extern int vorbis_book_init_decode(codebook *dest,const static_codebook *source);
+extern void vorbis_book_clear(codebook *b);
+
+extern float *_book_unquantize(const static_codebook *b,int n,int *map);
+extern float *_book_logdist(const static_codebook *b,float *vals);
+extern float _float32_unpack(long val);
+extern long _float32_pack(float val);
+extern int _best(codebook *book, float *a, int step);
+extern long _book_maptype1_quantvals(const static_codebook *b);
+
+extern int vorbis_book_besterror(codebook *book,float *a,int step,int addmul);
+extern long vorbis_book_codeword(codebook *book,int entry);
+extern long vorbis_book_codelen(codebook *book,int entry);
+
+
+
+extern int vorbis_staticbook_pack(const static_codebook *c,oggpack_buffer *b);
+extern static_codebook *vorbis_staticbook_unpack(oggpack_buffer *b);
+
+extern int vorbis_book_encode(codebook *book, int a, oggpack_buffer *b);
+
+extern long vorbis_book_decode(codebook *book, oggpack_buffer *b);
+extern long vorbis_book_decodevs_add(codebook *book, float *a,
+ oggpack_buffer *b,int n);
+extern long vorbis_book_decodev_set(codebook *book, float *a,
+ oggpack_buffer *b,int n);
+extern long vorbis_book_decodev_add(codebook *book, float *a,
+ oggpack_buffer *b,int n);
+extern long vorbis_book_decodevv_add(codebook *book, float **a,
+ long off,int ch,
+ oggpack_buffer *b,int n);
+
+
+
+#endif
diff --git a/Sources/libvorbis/lib/codec_internal.h b/Sources/libvorbis/lib/codec_internal.h
new file mode 100644
index 000000000..de1bccaed
--- /dev/null
+++ b/Sources/libvorbis/lib/codec_internal.h
@@ -0,0 +1,167 @@
+/********************************************************************
+ * *
+ * THIS FILE IS PART OF THE OggVorbis SOFTWARE CODEC SOURCE CODE. *
+ * USE, DISTRIBUTION AND REPRODUCTION OF THIS LIBRARY SOURCE IS *
+ * GOVERNED BY A BSD-STYLE SOURCE LICENSE INCLUDED WITH THIS SOURCE *
+ * IN 'COPYING'. PLEASE READ THESE TERMS BEFORE DISTRIBUTING. *
+ * *
+ * THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2009 *
+ * by the Xiph.Org Foundation http://www.xiph.org/ *
+ * *
+ ********************************************************************
+
+ function: libvorbis codec headers
+ last mod: $Id: codec_internal.h 16227 2009-07-08 06:58:46Z xiphmont $
+
+ ********************************************************************/
+
+#ifndef _V_CODECI_H_
+#define _V_CODECI_H_
+
+#include "envelope.h"
+#include "codebook.h"
+
+#define BLOCKTYPE_IMPULSE 0
+#define BLOCKTYPE_PADDING 1
+#define BLOCKTYPE_TRANSITION 0
+#define BLOCKTYPE_LONG 1
+
+#define PACKETBLOBS 15
+
+typedef struct vorbis_block_internal{
+ float **pcmdelay; /* this is a pointer into local storage */
+ float ampmax;
+ int blocktype;
+
+ oggpack_buffer *packetblob[PACKETBLOBS]; /* initialized, must be freed;
+ blob [PACKETBLOBS/2] points to
+ the oggpack_buffer in the
+ main vorbis_block */
+} vorbis_block_internal;
+
+typedef void vorbis_look_floor;
+typedef void vorbis_look_residue;
+typedef void vorbis_look_transform;
+
+/* mode ************************************************************/
+typedef struct {
+ int blockflag;
+ int windowtype;
+ int transformtype;
+ int mapping;
+} vorbis_info_mode;
+
+typedef void vorbis_info_floor;
+typedef void vorbis_info_residue;
+typedef void vorbis_info_mapping;
+
+#include "psy.h"
+#include "bitrate.h"
+
+typedef struct private_state {
+ /* local lookup storage */
+ envelope_lookup *ve; /* envelope lookup */
+ int window[2];
+ vorbis_look_transform **transform[2]; /* block, type */
+ drft_lookup fft_look[2];
+
+ int modebits;
+ vorbis_look_floor **flr;
+ vorbis_look_residue **residue;
+ vorbis_look_psy *psy;
+ vorbis_look_psy_global *psy_g_look;
+
+ /* local storage, only used on the encoding side. This way the
+ application does not need to worry about freeing some packets'
+ memory and not others'; packet storage is always tracked.
+ Cleared next call to a _dsp_ function */
+ unsigned char *header;
+ unsigned char *header1;
+ unsigned char *header2;
+
+ bitrate_manager_state bms;
+
+ ogg_int64_t sample_count;
+} private_state;
+
+/* codec_setup_info contains all the setup information specific to the
+ specific compression/decompression mode in progress (eg,
+ psychoacoustic settings, channel setup, options, codebook
+ etc).
+*********************************************************************/
+
+#include "highlevel.h"
+typedef struct codec_setup_info {
+
+ /* Vorbis supports only short and long blocks, but allows the
+ encoder to choose the sizes */
+
+ long blocksizes[2];
+
+ /* modes are the primary means of supporting on-the-fly different
+ blocksizes, different channel mappings (LR or M/A),
+ different residue backends, etc. Each mode consists of a
+ blocksize flag and a mapping (along with the mapping setup */
+
+ int modes;
+ int maps;
+ int floors;
+ int residues;
+ int books;
+ int psys; /* encode only */
+
+ vorbis_info_mode *mode_param[64];
+ int map_type[64];
+ vorbis_info_mapping *map_param[64];
+ int floor_type[64];
+ vorbis_info_floor *floor_param[64];
+ int residue_type[64];
+ vorbis_info_residue *residue_param[64];
+ static_codebook *book_param[256];
+ codebook *fullbooks;
+
+ vorbis_info_psy *psy_param[4]; /* encode only */
+ vorbis_info_psy_global psy_g_param;
+
+ bitrate_manager_info bi;
+ highlevel_encode_setup hi; /* used only by vorbisenc.c. It's a
+ highly redundant structure, but
+ improves clarity of program flow. */
+ int halfrate_flag; /* painless downsample for decode */
+} codec_setup_info;
+
+extern vorbis_look_psy_global *_vp_global_look(vorbis_info *vi);
+extern void _vp_global_free(vorbis_look_psy_global *look);
+
+
+
+typedef struct {
+ int sorted_index[VIF_POSIT+2];
+ int forward_index[VIF_POSIT+2];
+ int reverse_index[VIF_POSIT+2];
+
+ int hineighbor[VIF_POSIT];
+ int loneighbor[VIF_POSIT];
+ int posts;
+
+ int n;
+ int quant_q;
+ vorbis_info_floor1 *vi;
+
+ long phrasebits;
+ long postbits;
+ long frames;
+} vorbis_look_floor1;
+
+
+
+extern int *floor1_fit(vorbis_block *vb,vorbis_look_floor1 *look,
+ const float *logmdct, /* in */
+ const float *logmask);
+extern int *floor1_interpolate_fit(vorbis_block *vb,vorbis_look_floor1 *look,
+ int *A,int *B,
+ int del);
+extern int floor1_encode(oggpack_buffer *opb,vorbis_block *vb,
+ vorbis_look_floor1 *look,
+ int *post,int *ilogmask);
+#endif
diff --git a/Sources/libvorbis/lib/envelope.c b/Sources/libvorbis/lib/envelope.c
new file mode 100644
index 000000000..010c66e2d
--- /dev/null
+++ b/Sources/libvorbis/lib/envelope.c
@@ -0,0 +1,375 @@
+/********************************************************************
+ * *
+ * THIS FILE IS PART OF THE OggVorbis SOFTWARE CODEC SOURCE CODE. *
+ * USE, DISTRIBUTION AND REPRODUCTION OF THIS LIBRARY SOURCE IS *
+ * GOVERNED BY A BSD-STYLE SOURCE LICENSE INCLUDED WITH THIS SOURCE *
+ * IN 'COPYING'. PLEASE READ THESE TERMS BEFORE DISTRIBUTING. *
+ * *
+ * THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2009 *
+ * by the Xiph.Org Foundation http://www.xiph.org/ *
+ * *
+ ********************************************************************
+
+ function: PCM data envelope analysis
+ last mod: $Id: envelope.c 16227 2009-07-08 06:58:46Z xiphmont $
+
+ ********************************************************************/
+
+#include
+#include
+#include
+#include
+#include
+#include "vorbis/codec.h"
+#include "codec_internal.h"
+
+#include "os.h"
+#include "scales.h"
+#include "envelope.h"
+#include "mdct.h"
+#include "misc.h"
+
+void _ve_envelope_init(envelope_lookup *e,vorbis_info *vi){
+ codec_setup_info *ci=vi->codec_setup;
+ vorbis_info_psy_global *gi=&ci->psy_g_param;
+ int ch=vi->channels;
+ int i,j;
+ int n=e->winlength=128;
+ e->searchstep=64; /* not random */
+
+ e->minenergy=gi->preecho_minenergy;
+ e->ch=ch;
+ e->storage=128;
+ e->cursor=ci->blocksizes[1]/2;
+ e->mdct_win=_ogg_calloc(n,sizeof(*e->mdct_win));
+ mdct_init(&e->mdct,n);
+
+ for(i=0;imdct_win[i]=sin(i/(n-1.)*M_PI);
+ e->mdct_win[i]*=e->mdct_win[i];
+ }
+
+ /* magic follows */
+ e->band[0].begin=2; e->band[0].end=4;
+ e->band[1].begin=4; e->band[1].end=5;
+ e->band[2].begin=6; e->band[2].end=6;
+ e->band[3].begin=9; e->band[3].end=8;
+ e->band[4].begin=13; e->band[4].end=8;
+ e->band[5].begin=17; e->band[5].end=8;
+ e->band[6].begin=22; e->band[6].end=8;
+
+ for(j=0;jband[j].end;
+ e->band[j].window=_ogg_malloc(n*sizeof(*e->band[0].window));
+ for(i=0;iband[j].window[i]=sin((i+.5)/n*M_PI);
+ e->band[j].total+=e->band[j].window[i];
+ }
+ e->band[j].total=1./e->band[j].total;
+ }
+
+ e->filter=_ogg_calloc(VE_BANDS*ch,sizeof(*e->filter));
+ e->mark=_ogg_calloc(e->storage,sizeof(*e->mark));
+
+}
+
+void _ve_envelope_clear(envelope_lookup *e){
+ int i;
+ mdct_clear(&e->mdct);
+ for(i=0;iband[i].window);
+ _ogg_free(e->mdct_win);
+ _ogg_free(e->filter);
+ _ogg_free(e->mark);
+ memset(e,0,sizeof(*e));
+}
+
+/* fairly straight threshhold-by-band based until we find something
+ that works better and isn't patented. */
+
+static int _ve_amp(envelope_lookup *ve,
+ vorbis_info_psy_global *gi,
+ float *data,
+ envelope_band *bands,
+ envelope_filter_state *filters){
+ long n=ve->winlength;
+ int ret=0;
+ long i,j;
+ float decay;
+
+ /* we want to have a 'minimum bar' for energy, else we're just
+ basing blocks on quantization noise that outweighs the signal
+ itself (for low power signals) */
+
+ float minV=ve->minenergy;
+ float *vec=alloca(n*sizeof(*vec));
+
+ /* stretch is used to gradually lengthen the number of windows
+ considered prevoius-to-potential-trigger */
+ int stretch=max(VE_MINSTRETCH,ve->stretch/2);
+ float penalty=gi->stretch_penalty-(ve->stretch/2-VE_MINSTRETCH);
+ if(penalty<0.f)penalty=0.f;
+ if(penalty>gi->stretch_penalty)penalty=gi->stretch_penalty;
+
+ /*_analysis_output_always("lpcm",seq2,data,n,0,0,
+ totalshift+pos*ve->searchstep);*/
+
+ /* window and transform */
+ for(i=0;imdct_win[i];
+ mdct_forward(&ve->mdct,vec,vec);
+
+ /*_analysis_output_always("mdct",seq2,vec,n/2,0,1,0); */
+
+ /* near-DC spreading function; this has nothing to do with
+ psychoacoustics, just sidelobe leakage and window size */
+ {
+ float temp=vec[0]*vec[0]+.7*vec[1]*vec[1]+.2*vec[2]*vec[2];
+ int ptr=filters->nearptr;
+
+ /* the accumulation is regularly refreshed from scratch to avoid
+ floating point creep */
+ if(ptr==0){
+ decay=filters->nearDC_acc=filters->nearDC_partialacc+temp;
+ filters->nearDC_partialacc=temp;
+ }else{
+ decay=filters->nearDC_acc+=temp;
+ filters->nearDC_partialacc+=temp;
+ }
+ filters->nearDC_acc-=filters->nearDC[ptr];
+ filters->nearDC[ptr]=temp;
+
+ decay*=(1./(VE_NEARDC+1));
+ filters->nearptr++;
+ if(filters->nearptr>=VE_NEARDC)filters->nearptr=0;
+ decay=todB(&decay)*.5-15.f;
+ }
+
+ /* perform spreading and limiting, also smooth the spectrum. yes,
+ the MDCT results in all real coefficients, but it still *behaves*
+ like real/imaginary pairs */
+ for(i=0;i>1]=val;
+ decay-=8.;
+ }
+
+ /*_analysis_output_always("spread",seq2++,vec,n/4,0,0,0);*/
+
+ /* perform preecho/postecho triggering by band */
+ for(j=0;j=VE_AMP)filters[j].ampptr=0;
+ }
+
+ /* look at min/max, decide trigger */
+ if(valmax>gi->preecho_thresh[j]+penalty){
+ ret|=1;
+ ret|=4;
+ }
+ if(valminpostecho_thresh[j]-penalty)ret|=2;
+ }
+
+ return(ret);
+}
+
+#if 0
+static int seq=0;
+static ogg_int64_t totalshift=-1024;
+#endif
+
+long _ve_envelope_search(vorbis_dsp_state *v){
+ vorbis_info *vi=v->vi;
+ codec_setup_info *ci=vi->codec_setup;
+ vorbis_info_psy_global *gi=&ci->psy_g_param;
+ envelope_lookup *ve=((private_state *)(v->backend_state))->ve;
+ long i,j;
+
+ int first=ve->current/ve->searchstep;
+ int last=v->pcm_current/ve->searchstep-VE_WIN;
+ if(first<0)first=0;
+
+ /* make sure we have enough storage to match the PCM */
+ if(last+VE_WIN+VE_POST>ve->storage){
+ ve->storage=last+VE_WIN+VE_POST; /* be sure */
+ ve->mark=_ogg_realloc(ve->mark,ve->storage*sizeof(*ve->mark));
+ }
+
+ for(j=first;jstretch++;
+ if(ve->stretch>VE_MAXSTRETCH*2)
+ ve->stretch=VE_MAXSTRETCH*2;
+
+ for(i=0;ich;i++){
+ float *pcm=v->pcm[i]+ve->searchstep*(j);
+ ret|=_ve_amp(ve,gi,pcm,ve->band,ve->filter+i*VE_BANDS);
+ }
+
+ ve->mark[j+VE_POST]=0;
+ if(ret&1){
+ ve->mark[j]=1;
+ ve->mark[j+1]=1;
+ }
+
+ if(ret&2){
+ ve->mark[j]=1;
+ if(j>0)ve->mark[j-1]=1;
+ }
+
+ if(ret&4)ve->stretch=-1;
+ }
+
+ ve->current=last*ve->searchstep;
+
+ {
+ long centerW=v->centerW;
+ long testW=
+ centerW+
+ ci->blocksizes[v->W]/4+
+ ci->blocksizes[1]/2+
+ ci->blocksizes[0]/4;
+
+ j=ve->cursor;
+
+ while(jcurrent-(ve->searchstep)){/* account for postecho
+ working back one window */
+ if(j>=testW)return(1);
+
+ ve->cursor=j;
+
+ if(ve->mark[j/ve->searchstep]){
+ if(j>centerW){
+
+#if 0
+ if(j>ve->curmark){
+ float *marker=alloca(v->pcm_current*sizeof(*marker));
+ int l,m;
+ memset(marker,0,sizeof(*marker)*v->pcm_current);
+ fprintf(stderr,"mark! seq=%d, cursor:%fs time:%fs\n",
+ seq,
+ (totalshift+ve->cursor)/44100.,
+ (totalshift+j)/44100.);
+ _analysis_output_always("pcmL",seq,v->pcm[0],v->pcm_current,0,0,totalshift);
+ _analysis_output_always("pcmR",seq,v->pcm[1],v->pcm_current,0,0,totalshift);
+
+ _analysis_output_always("markL",seq,v->pcm[0],j,0,0,totalshift);
+ _analysis_output_always("markR",seq,v->pcm[1],j,0,0,totalshift);
+
+ for(m=0;msearchstep]=ve->filter[m].markers[l]*.1;
+ _analysis_output_always(buf,seq,marker,v->pcm_current,0,0,totalshift);
+ }
+
+ for(m=0;msearchstep]=ve->filter[m+VE_BANDS].markers[l]*.1;
+ _analysis_output_always(buf,seq,marker,v->pcm_current,0,0,totalshift);
+ }
+
+ for(l=0;lsearchstep]=ve->mark[l]*.4;
+ _analysis_output_always("mark",seq,marker,v->pcm_current,0,0,totalshift);
+
+
+ seq++;
+
+ }
+#endif
+
+ ve->curmark=j;
+ if(j>=testW)return(1);
+ return(0);
+ }
+ }
+ j+=ve->searchstep;
+ }
+ }
+
+ return(-1);
+}
+
+int _ve_envelope_mark(vorbis_dsp_state *v){
+ envelope_lookup *ve=((private_state *)(v->backend_state))->ve;
+ vorbis_info *vi=v->vi;
+ codec_setup_info *ci=vi->codec_setup;
+ long centerW=v->centerW;
+ long beginW=centerW-ci->blocksizes[v->W]/4;
+ long endW=centerW+ci->blocksizes[v->W]/4;
+ if(v->W){
+ beginW-=ci->blocksizes[v->lW]/4;
+ endW+=ci->blocksizes[v->nW]/4;
+ }else{
+ beginW-=ci->blocksizes[0]/4;
+ endW+=ci->blocksizes[0]/4;
+ }
+
+ if(ve->curmark>=beginW && ve->curmarksearchstep;
+ long last=endW/ve->searchstep;
+ long i;
+ for(i=first;imark[i])return(1);
+ }
+ return(0);
+}
+
+void _ve_envelope_shift(envelope_lookup *e,long shift){
+ int smallsize=e->current/e->searchstep+VE_POST; /* adjust for placing marks
+ ahead of ve->current */
+ int smallshift=shift/e->searchstep;
+
+ memmove(e->mark,e->mark+smallshift,(smallsize-smallshift)*sizeof(*e->mark));
+
+#if 0
+ for(i=0;ich;i++)
+ memmove(e->filter[i].markers,
+ e->filter[i].markers+smallshift,
+ (1024-smallshift)*sizeof(*(*e->filter).markers));
+ totalshift+=shift;
+#endif
+
+ e->current-=shift;
+ if(e->curmark>=0)
+ e->curmark-=shift;
+ e->cursor-=shift;
+}
diff --git a/Sources/libvorbis/lib/envelope.h b/Sources/libvorbis/lib/envelope.h
new file mode 100644
index 000000000..fd15fb32a
--- /dev/null
+++ b/Sources/libvorbis/lib/envelope.h
@@ -0,0 +1,80 @@
+/********************************************************************
+ * *
+ * THIS FILE IS PART OF THE OggVorbis SOFTWARE CODEC SOURCE CODE. *
+ * USE, DISTRIBUTION AND REPRODUCTION OF THIS LIBRARY SOURCE IS *
+ * GOVERNED BY A BSD-STYLE SOURCE LICENSE INCLUDED WITH THIS SOURCE *
+ * IN 'COPYING'. PLEASE READ THESE TERMS BEFORE DISTRIBUTING. *
+ * *
+ * THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2009 *
+ * by the Xiph.Org Foundation http://www.xiph.org/ *
+ * *
+ ********************************************************************
+
+ function: PCM data envelope analysis and manipulation
+ last mod: $Id: envelope.h 16227 2009-07-08 06:58:46Z xiphmont $
+
+ ********************************************************************/
+
+#ifndef _V_ENVELOPE_
+#define _V_ENVELOPE_
+
+#include "mdct.h"
+
+#define VE_PRE 16
+#define VE_WIN 4
+#define VE_POST 2
+#define VE_AMP (VE_PRE+VE_POST-1)
+
+#define VE_BANDS 7
+#define VE_NEARDC 15
+
+#define VE_MINSTRETCH 2 /* a bit less than short block */
+#define VE_MAXSTRETCH 12 /* one-third full block */
+
+typedef struct {
+ float ampbuf[VE_AMP];
+ int ampptr;
+
+ float nearDC[VE_NEARDC];
+ float nearDC_acc;
+ float nearDC_partialacc;
+ int nearptr;
+
+} envelope_filter_state;
+
+typedef struct {
+ int begin;
+ int end;
+ float *window;
+ float total;
+} envelope_band;
+
+typedef struct {
+ int ch;
+ int winlength;
+ int searchstep;
+ float minenergy;
+
+ mdct_lookup mdct;
+ float *mdct_win;
+
+ envelope_band band[VE_BANDS];
+ envelope_filter_state *filter;
+ int stretch;
+
+ int *mark;
+
+ long storage;
+ long current;
+ long curmark;
+ long cursor;
+} envelope_lookup;
+
+extern void _ve_envelope_init(envelope_lookup *e,vorbis_info *vi);
+extern void _ve_envelope_clear(envelope_lookup *e);
+extern long _ve_envelope_search(vorbis_dsp_state *v);
+extern void _ve_envelope_shift(envelope_lookup *e,long shift);
+extern int _ve_envelope_mark(vorbis_dsp_state *v);
+
+
+#endif
diff --git a/Sources/libvorbis/lib/floor0.c b/Sources/libvorbis/lib/floor0.c
new file mode 100644
index 000000000..213cce4ec
--- /dev/null
+++ b/Sources/libvorbis/lib/floor0.c
@@ -0,0 +1,224 @@
+/********************************************************************
+ * *
+ * THIS FILE IS PART OF THE OggVorbis SOFTWARE CODEC SOURCE CODE. *
+ * USE, DISTRIBUTION AND REPRODUCTION OF THIS LIBRARY SOURCE IS *
+ * GOVERNED BY A BSD-STYLE SOURCE LICENSE INCLUDED WITH THIS SOURCE *
+ * IN 'COPYING'. PLEASE READ THESE TERMS BEFORE DISTRIBUTING. *
+ * *
+ * THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2015 *
+ * by the Xiph.Org Foundation http://www.xiph.org/ *
+ * *
+ ********************************************************************
+
+ function: floor backend 0 implementation
+ last mod: $Id: floor0.c 19457 2015-03-03 00:15:29Z giles $
+
+ ********************************************************************/
+
+#include
+#include
+#include
+#include
+#include "vorbis/codec.h"
+#include "codec_internal.h"
+#include "registry.h"
+#include "lpc.h"
+#include "lsp.h"
+#include "codebook.h"
+#include "scales.h"
+#include "misc.h"
+#include "os.h"
+
+#include "misc.h"
+#include
+
+typedef struct {
+ int ln;
+ int m;
+ int **linearmap;
+ int n[2];
+
+ vorbis_info_floor0 *vi;
+
+ long bits;
+ long frames;
+} vorbis_look_floor0;
+
+
+/***********************************************/
+
+static void floor0_free_info(vorbis_info_floor *i){
+ vorbis_info_floor0 *info=(vorbis_info_floor0 *)i;
+ if(info){
+ memset(info,0,sizeof(*info));
+ _ogg_free(info);
+ }
+}
+
+static void floor0_free_look(vorbis_look_floor *i){
+ vorbis_look_floor0 *look=(vorbis_look_floor0 *)i;
+ if(look){
+
+ if(look->linearmap){
+
+ if(look->linearmap[0])_ogg_free(look->linearmap[0]);
+ if(look->linearmap[1])_ogg_free(look->linearmap[1]);
+
+ _ogg_free(look->linearmap);
+ }
+ memset(look,0,sizeof(*look));
+ _ogg_free(look);
+ }
+}
+
+static vorbis_info_floor *floor0_unpack (vorbis_info *vi,oggpack_buffer *opb){
+ codec_setup_info *ci=vi->codec_setup;
+ int j;
+
+ vorbis_info_floor0 *info=_ogg_malloc(sizeof(*info));
+ info->order=oggpack_read(opb,8);
+ info->rate=oggpack_read(opb,16);
+ info->barkmap=oggpack_read(opb,16);
+ info->ampbits=oggpack_read(opb,6);
+ info->ampdB=oggpack_read(opb,8);
+ info->numbooks=oggpack_read(opb,4)+1;
+
+ if(info->order<1)goto err_out;
+ if(info->rate<1)goto err_out;
+ if(info->barkmap<1)goto err_out;
+ if(info->numbooks<1)goto err_out;
+
+ for(j=0;jnumbooks;j++){
+ info->books[j]=oggpack_read(opb,8);
+ if(info->books[j]<0 || info->books[j]>=ci->books)goto err_out;
+ if(ci->book_param[info->books[j]]->maptype==0)goto err_out;
+ if(ci->book_param[info->books[j]]->dim<1)goto err_out;
+ }
+ return(info);
+
+ err_out:
+ floor0_free_info(info);
+ return(NULL);
+}
+
+/* initialize Bark scale and normalization lookups. We could do this
+ with static tables, but Vorbis allows a number of possible
+ combinations, so it's best to do it computationally.
+
+ The below is authoritative in terms of defining scale mapping.
+ Note that the scale depends on the sampling rate as well as the
+ linear block and mapping sizes */
+
+static void floor0_map_lazy_init(vorbis_block *vb,
+ vorbis_info_floor *infoX,
+ vorbis_look_floor0 *look){
+ if(!look->linearmap[vb->W]){
+ vorbis_dsp_state *vd=vb->vd;
+ vorbis_info *vi=vd->vi;
+ codec_setup_info *ci=vi->codec_setup;
+ vorbis_info_floor0 *info=(vorbis_info_floor0 *)infoX;
+ int W=vb->W;
+ int n=ci->blocksizes[W]/2,j;
+
+ /* we choose a scaling constant so that:
+ floor(bark(rate/2-1)*C)=mapped-1
+ floor(bark(rate/2)*C)=mapped */
+ float scale=look->ln/toBARK(info->rate/2.f);
+
+ /* the mapping from a linear scale to a smaller bark scale is
+ straightforward. We do *not* make sure that the linear mapping
+ does not skip bark-scale bins; the decoder simply skips them and
+ the encoder may do what it wishes in filling them. They're
+ necessary in some mapping combinations to keep the scale spacing
+ accurate */
+ look->linearmap[W]=_ogg_malloc((n+1)*sizeof(**look->linearmap));
+ for(j=0;jrate/2.f)/n*j)
+ *scale); /* bark numbers represent band edges */
+ if(val>=look->ln)val=look->ln-1; /* guard against the approximation */
+ look->linearmap[W][j]=val;
+ }
+ look->linearmap[W][j]=-1;
+ look->n[W]=n;
+ }
+}
+
+static vorbis_look_floor *floor0_look(vorbis_dsp_state *vd,
+ vorbis_info_floor *i){
+ vorbis_info_floor0 *info=(vorbis_info_floor0 *)i;
+ vorbis_look_floor0 *look=_ogg_calloc(1,sizeof(*look));
+
+ (void)vd;
+
+ look->m=info->order;
+ look->ln=info->barkmap;
+ look->vi=info;
+
+ look->linearmap=_ogg_calloc(2,sizeof(*look->linearmap));
+
+ return look;
+}
+
+static void *floor0_inverse1(vorbis_block *vb,vorbis_look_floor *i){
+ vorbis_look_floor0 *look=(vorbis_look_floor0 *)i;
+ vorbis_info_floor0 *info=look->vi;
+ int j,k;
+
+ int ampraw=oggpack_read(&vb->opb,info->ampbits);
+ if(ampraw>0){ /* also handles the -1 out of data case */
+ long maxval=(1<ampbits)-1;
+ float amp=(float)ampraw/maxval*info->ampdB;
+ int booknum=oggpack_read(&vb->opb,ov_ilog(info->numbooks));
+
+ if(booknum!=-1 && booknumnumbooks){ /* be paranoid */
+ codec_setup_info *ci=vb->vd->vi->codec_setup;
+ codebook *b=ci->fullbooks+info->books[booknum];
+ float last=0.f;
+
+ /* the additional b->dim is a guard against any possible stack
+ smash; b->dim is provably more than we can overflow the
+ vector */
+ float *lsp=_vorbis_block_alloc(vb,sizeof(*lsp)*(look->m+b->dim+1));
+
+ if(vorbis_book_decodev_set(b,lsp,&vb->opb,look->m)==-1)goto eop;
+ for(j=0;jm;){
+ for(k=0;jm && kdim;k++,j++)lsp[j]+=last;
+ last=lsp[j-1];
+ }
+
+ lsp[look->m]=amp;
+ return(lsp);
+ }
+ }
+ eop:
+ return(NULL);
+}
+
+static int floor0_inverse2(vorbis_block *vb,vorbis_look_floor *i,
+ void *memo,float *out){
+ vorbis_look_floor0 *look=(vorbis_look_floor0 *)i;
+ vorbis_info_floor0 *info=look->vi;
+
+ floor0_map_lazy_init(vb,info,look);
+
+ if(memo){
+ float *lsp=(float *)memo;
+ float amp=lsp[look->m];
+
+ /* take the coefficients back to a spectral envelope curve */
+ vorbis_lsp_to_curve(out,
+ look->linearmap[vb->W],
+ look->n[vb->W],
+ look->ln,
+ lsp,look->m,amp,(float)info->ampdB);
+ return(1);
+ }
+ memset(out,0,sizeof(*out)*look->n[vb->W]);
+ return(0);
+}
+
+/* export hooks */
+const vorbis_func_floor floor0_exportbundle={
+ NULL,&floor0_unpack,&floor0_look,&floor0_free_info,
+ &floor0_free_look,&floor0_inverse1,&floor0_inverse2
+};
diff --git a/Sources/libvorbis/lib/floor1.c b/Sources/libvorbis/lib/floor1.c
new file mode 100644
index 000000000..d8bd4645c
--- /dev/null
+++ b/Sources/libvorbis/lib/floor1.c
@@ -0,0 +1,1087 @@
+/********************************************************************
+ * *
+ * THIS FILE IS PART OF THE OggVorbis SOFTWARE CODEC SOURCE CODE. *
+ * USE, DISTRIBUTION AND REPRODUCTION OF THIS LIBRARY SOURCE IS *
+ * GOVERNED BY A BSD-STYLE SOURCE LICENSE INCLUDED WITH THIS SOURCE *
+ * IN 'COPYING'. PLEASE READ THESE TERMS BEFORE DISTRIBUTING. *
+ * *
+ * THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2015 *
+ * by the Xiph.Org Foundation http://www.xiph.org/ *
+ * *
+ ********************************************************************
+
+ function: floor backend 1 implementation
+ last mod: $Id: floor1.c 19457 2015-03-03 00:15:29Z giles $
+
+ ********************************************************************/
+
+#include
+#include
+#include
+#include
+#include "vorbis/codec.h"
+#include "codec_internal.h"
+#include "registry.h"
+#include "codebook.h"
+#include "misc.h"
+#include "scales.h"
+
+#include
+
+#define floor1_rangedB 140 /* floor 1 fixed at -140dB to 0dB range */
+
+typedef struct lsfit_acc{
+ int x0;
+ int x1;
+
+ int xa;
+ int ya;
+ int x2a;
+ int y2a;
+ int xya;
+ int an;
+
+ int xb;
+ int yb;
+ int x2b;
+ int y2b;
+ int xyb;
+ int bn;
+} lsfit_acc;
+
+/***********************************************/
+
+static void floor1_free_info(vorbis_info_floor *i){
+ vorbis_info_floor1 *info=(vorbis_info_floor1 *)i;
+ if(info){
+ memset(info,0,sizeof(*info));
+ _ogg_free(info);
+ }
+}
+
+static void floor1_free_look(vorbis_look_floor *i){
+ vorbis_look_floor1 *look=(vorbis_look_floor1 *)i;
+ if(look){
+ /*fprintf(stderr,"floor 1 bit usage %f:%f (%f total)\n",
+ (float)look->phrasebits/look->frames,
+ (float)look->postbits/look->frames,
+ (float)(look->postbits+look->phrasebits)/look->frames);*/
+
+ memset(look,0,sizeof(*look));
+ _ogg_free(look);
+ }
+}
+
+static void floor1_pack (vorbis_info_floor *i,oggpack_buffer *opb){
+ vorbis_info_floor1 *info=(vorbis_info_floor1 *)i;
+ int j,k;
+ int count=0;
+ int rangebits;
+ int maxposit=info->postlist[1];
+ int maxclass=-1;
+
+ /* save out partitions */
+ oggpack_write(opb,info->partitions,5); /* only 0 to 31 legal */
+ for(j=0;jpartitions;j++){
+ oggpack_write(opb,info->partitionclass[j],4); /* only 0 to 15 legal */
+ if(maxclasspartitionclass[j])maxclass=info->partitionclass[j];
+ }
+
+ /* save out partition classes */
+ for(j=0;jclass_dim[j]-1,3); /* 1 to 8 */
+ oggpack_write(opb,info->class_subs[j],2); /* 0 to 3 */
+ if(info->class_subs[j])oggpack_write(opb,info->class_book[j],8);
+ for(k=0;k<(1<class_subs[j]);k++)
+ oggpack_write(opb,info->class_subbook[j][k]+1,8);
+ }
+
+ /* save out the post list */
+ oggpack_write(opb,info->mult-1,2); /* only 1,2,3,4 legal now */
+ /* maxposit cannot legally be less than 1; this is encode-side, we
+ can assume our setup is OK */
+ oggpack_write(opb,ov_ilog(maxposit-1),4);
+ rangebits=ov_ilog(maxposit-1);
+
+ for(j=0,k=0;jpartitions;j++){
+ count+=info->class_dim[info->partitionclass[j]];
+ for(;kpostlist[k+2],rangebits);
+ }
+}
+
+static int icomp(const void *a,const void *b){
+ return(**(int **)a-**(int **)b);
+}
+
+static vorbis_info_floor *floor1_unpack (vorbis_info *vi,oggpack_buffer *opb){
+ codec_setup_info *ci=vi->codec_setup;
+ int j,k,count=0,maxclass=-1,rangebits;
+
+ vorbis_info_floor1 *info=_ogg_calloc(1,sizeof(*info));
+ /* read partitions */
+ info->partitions=oggpack_read(opb,5); /* only 0 to 31 legal */
+ for(j=0;jpartitions;j++){
+ info->partitionclass[j]=oggpack_read(opb,4); /* only 0 to 15 legal */
+ if(info->partitionclass[j]<0)goto err_out;
+ if(maxclasspartitionclass[j])maxclass=info->partitionclass[j];
+ }
+
+ /* read partition classes */
+ for(j=0;jclass_dim[j]=oggpack_read(opb,3)+1; /* 1 to 8 */
+ info->class_subs[j]=oggpack_read(opb,2); /* 0,1,2,3 bits */
+ if(info->class_subs[j]<0)
+ goto err_out;
+ if(info->class_subs[j])info->class_book[j]=oggpack_read(opb,8);
+ if(info->class_book[j]<0 || info->class_book[j]>=ci->books)
+ goto err_out;
+ for(k=0;k<(1<class_subs[j]);k++){
+ info->class_subbook[j][k]=oggpack_read(opb,8)-1;
+ if(info->class_subbook[j][k]<-1 || info->class_subbook[j][k]>=ci->books)
+ goto err_out;
+ }
+ }
+
+ /* read the post list */
+ info->mult=oggpack_read(opb,2)+1; /* only 1,2,3,4 legal now */
+ rangebits=oggpack_read(opb,4);
+ if(rangebits<0)goto err_out;
+
+ for(j=0,k=0;jpartitions;j++){
+ count+=info->class_dim[info->partitionclass[j]];
+ if(count>VIF_POSIT) goto err_out;
+ for(;kpostlist[k+2]=oggpack_read(opb,rangebits);
+ if(t<0 || t>=(1<postlist[0]=0;
+ info->postlist[1]=1<postlist+j;
+ qsort(sortpointer,count+2,sizeof(*sortpointer),icomp);
+
+ for(j=1;jvi=info;
+ look->n=info->postlist[1];
+
+ /* we drop each position value in-between already decoded values,
+ and use linear interpolation to predict each new value past the
+ edges. The positions are read in the order of the position
+ list... we precompute the bounding positions in the lookup. Of
+ course, the neighbors can change (if a position is declined), but
+ this is an initial mapping */
+
+ for(i=0;ipartitions;i++)n+=info->class_dim[info->partitionclass[i]];
+ n+=2;
+ look->posts=n;
+
+ /* also store a sorted position index */
+ for(i=0;ipostlist+i;
+ qsort(sortpointer,n,sizeof(*sortpointer),icomp);
+
+ /* points from sort order back to range number */
+ for(i=0;iforward_index[i]=sortpointer[i]-info->postlist;
+ /* points from range order to sorted position */
+ for(i=0;ireverse_index[look->forward_index[i]]=i;
+ /* we actually need the post values too */
+ for(i=0;isorted_index[i]=info->postlist[look->forward_index[i]];
+
+ /* quantize values to multiplier spec */
+ switch(info->mult){
+ case 1: /* 1024 -> 256 */
+ look->quant_q=256;
+ break;
+ case 2: /* 1024 -> 128 */
+ look->quant_q=128;
+ break;
+ case 3: /* 1024 -> 86 */
+ look->quant_q=86;
+ break;
+ case 4: /* 1024 -> 64 */
+ look->quant_q=64;
+ break;
+ }
+
+ /* discover our neighbors for decode where we don't use fit flags
+ (that would push the neighbors outward) */
+ for(i=0;in;
+ int currentx=info->postlist[i+2];
+ for(j=0;jpostlist[j];
+ if(x>lx && xcurrentx){
+ hi=j;
+ hx=x;
+ }
+ }
+ look->loneighbor[i]=lo;
+ look->hineighbor[i]=hi;
+ }
+
+ return(look);
+}
+
+static int render_point(int x0,int x1,int y0,int y1,int x){
+ y0&=0x7fff; /* mask off flag */
+ y1&=0x7fff;
+
+ {
+ int dy=y1-y0;
+ int adx=x1-x0;
+ int ady=abs(dy);
+ int err=ady*(x-x0);
+
+ int off=err/adx;
+ if(dy<0)return(y0-off);
+ return(y0+off);
+ }
+}
+
+static int vorbis_dBquant(const float *x){
+ int i= *x*7.3142857f+1023.5f;
+ if(i>1023)return(1023);
+ if(i<0)return(0);
+ return i;
+}
+
+static const float FLOOR1_fromdB_LOOKUP[256]={
+ 1.0649863e-07F, 1.1341951e-07F, 1.2079015e-07F, 1.2863978e-07F,
+ 1.3699951e-07F, 1.4590251e-07F, 1.5538408e-07F, 1.6548181e-07F,
+ 1.7623575e-07F, 1.8768855e-07F, 1.9988561e-07F, 2.128753e-07F,
+ 2.2670913e-07F, 2.4144197e-07F, 2.5713223e-07F, 2.7384213e-07F,
+ 2.9163793e-07F, 3.1059021e-07F, 3.3077411e-07F, 3.5226968e-07F,
+ 3.7516214e-07F, 3.9954229e-07F, 4.2550680e-07F, 4.5315863e-07F,
+ 4.8260743e-07F, 5.1396998e-07F, 5.4737065e-07F, 5.8294187e-07F,
+ 6.2082472e-07F, 6.6116941e-07F, 7.0413592e-07F, 7.4989464e-07F,
+ 7.9862701e-07F, 8.5052630e-07F, 9.0579828e-07F, 9.6466216e-07F,
+ 1.0273513e-06F, 1.0941144e-06F, 1.1652161e-06F, 1.2409384e-06F,
+ 1.3215816e-06F, 1.4074654e-06F, 1.4989305e-06F, 1.5963394e-06F,
+ 1.7000785e-06F, 1.8105592e-06F, 1.9282195e-06F, 2.0535261e-06F,
+ 2.1869758e-06F, 2.3290978e-06F, 2.4804557e-06F, 2.6416497e-06F,
+ 2.8133190e-06F, 2.9961443e-06F, 3.1908506e-06F, 3.3982101e-06F,
+ 3.6190449e-06F, 3.8542308e-06F, 4.1047004e-06F, 4.3714470e-06F,
+ 4.6555282e-06F, 4.9580707e-06F, 5.2802740e-06F, 5.6234160e-06F,
+ 5.9888572e-06F, 6.3780469e-06F, 6.7925283e-06F, 7.2339451e-06F,
+ 7.7040476e-06F, 8.2047000e-06F, 8.7378876e-06F, 9.3057248e-06F,
+ 9.9104632e-06F, 1.0554501e-05F, 1.1240392e-05F, 1.1970856e-05F,
+ 1.2748789e-05F, 1.3577278e-05F, 1.4459606e-05F, 1.5399272e-05F,
+ 1.6400004e-05F, 1.7465768e-05F, 1.8600792e-05F, 1.9809576e-05F,
+ 2.1096914e-05F, 2.2467911e-05F, 2.3928002e-05F, 2.5482978e-05F,
+ 2.7139006e-05F, 2.8902651e-05F, 3.0780908e-05F, 3.2781225e-05F,
+ 3.4911534e-05F, 3.7180282e-05F, 3.9596466e-05F, 4.2169667e-05F,
+ 4.4910090e-05F, 4.7828601e-05F, 5.0936773e-05F, 5.4246931e-05F,
+ 5.7772202e-05F, 6.1526565e-05F, 6.5524908e-05F, 6.9783085e-05F,
+ 7.4317983e-05F, 7.9147585e-05F, 8.4291040e-05F, 8.9768747e-05F,
+ 9.5602426e-05F, 0.00010181521F, 0.00010843174F, 0.00011547824F,
+ 0.00012298267F, 0.00013097477F, 0.00013948625F, 0.00014855085F,
+ 0.00015820453F, 0.00016848555F, 0.00017943469F, 0.00019109536F,
+ 0.00020351382F, 0.00021673929F, 0.00023082423F, 0.00024582449F,
+ 0.00026179955F, 0.00027881276F, 0.00029693158F, 0.00031622787F,
+ 0.00033677814F, 0.00035866388F, 0.00038197188F, 0.00040679456F,
+ 0.00043323036F, 0.00046138411F, 0.00049136745F, 0.00052329927F,
+ 0.00055730621F, 0.00059352311F, 0.00063209358F, 0.00067317058F,
+ 0.00071691700F, 0.00076350630F, 0.00081312324F, 0.00086596457F,
+ 0.00092223983F, 0.00098217216F, 0.0010459992F, 0.0011139742F,
+ 0.0011863665F, 0.0012634633F, 0.0013455702F, 0.0014330129F,
+ 0.0015261382F, 0.0016253153F, 0.0017309374F, 0.0018434235F,
+ 0.0019632195F, 0.0020908006F, 0.0022266726F, 0.0023713743F,
+ 0.0025254795F, 0.0026895994F, 0.0028643847F, 0.0030505286F,
+ 0.0032487691F, 0.0034598925F, 0.0036847358F, 0.0039241906F,
+ 0.0041792066F, 0.0044507950F, 0.0047400328F, 0.0050480668F,
+ 0.0053761186F, 0.0057254891F, 0.0060975636F, 0.0064938176F,
+ 0.0069158225F, 0.0073652516F, 0.0078438871F, 0.0083536271F,
+ 0.0088964928F, 0.009474637F, 0.010090352F, 0.010746080F,
+ 0.011444421F, 0.012188144F, 0.012980198F, 0.013823725F,
+ 0.014722068F, 0.015678791F, 0.016697687F, 0.017782797F,
+ 0.018938423F, 0.020169149F, 0.021479854F, 0.022875735F,
+ 0.024362330F, 0.025945531F, 0.027631618F, 0.029427276F,
+ 0.031339626F, 0.033376252F, 0.035545228F, 0.037855157F,
+ 0.040315199F, 0.042935108F, 0.045725273F, 0.048696758F,
+ 0.051861348F, 0.055231591F, 0.058820850F, 0.062643361F,
+ 0.066714279F, 0.071049749F, 0.075666962F, 0.080584227F,
+ 0.085821044F, 0.091398179F, 0.097337747F, 0.10366330F,
+ 0.11039993F, 0.11757434F, 0.12521498F, 0.13335215F,
+ 0.14201813F, 0.15124727F, 0.16107617F, 0.17154380F,
+ 0.18269168F, 0.19456402F, 0.20720788F, 0.22067342F,
+ 0.23501402F, 0.25028656F, 0.26655159F, 0.28387361F,
+ 0.30232132F, 0.32196786F, 0.34289114F, 0.36517414F,
+ 0.38890521F, 0.41417847F, 0.44109412F, 0.46975890F,
+ 0.50028648F, 0.53279791F, 0.56742212F, 0.60429640F,
+ 0.64356699F, 0.68538959F, 0.72993007F, 0.77736504F,
+ 0.82788260F, 0.88168307F, 0.9389798F, 1.F,
+};
+
+static void render_line(int n, int x0,int x1,int y0,int y1,float *d){
+ int dy=y1-y0;
+ int adx=x1-x0;
+ int ady=abs(dy);
+ int base=dy/adx;
+ int sy=(dy<0?base-1:base+1);
+ int x=x0;
+ int y=y0;
+ int err=0;
+
+ ady-=abs(base*adx);
+
+ if(n>x1)n=x1;
+
+ if(x=adx){
+ err-=adx;
+ y+=sy;
+ }else{
+ y+=base;
+ }
+ d[x]*=FLOOR1_fromdB_LOOKUP[y];
+ }
+}
+
+static void render_line0(int n, int x0,int x1,int y0,int y1,int *d){
+ int dy=y1-y0;
+ int adx=x1-x0;
+ int ady=abs(dy);
+ int base=dy/adx;
+ int sy=(dy<0?base-1:base+1);
+ int x=x0;
+ int y=y0;
+ int err=0;
+
+ ady-=abs(base*adx);
+
+ if(n>x1)n=x1;
+
+ if(x=adx){
+ err-=adx;
+ y+=sy;
+ }else{
+ y+=base;
+ }
+ d[x]=y;
+ }
+}
+
+/* the floor has already been filtered to only include relevant sections */
+static int accumulate_fit(const float *flr,const float *mdct,
+ int x0, int x1,lsfit_acc *a,
+ int n,vorbis_info_floor1 *info){
+ long i;
+
+ int xa=0,ya=0,x2a=0,y2a=0,xya=0,na=0, xb=0,yb=0,x2b=0,y2b=0,xyb=0,nb=0;
+
+ memset(a,0,sizeof(*a));
+ a->x0=x0;
+ a->x1=x1;
+ if(x1>=n)x1=n-1;
+
+ for(i=x0;i<=x1;i++){
+ int quantized=vorbis_dBquant(flr+i);
+ if(quantized){
+ if(mdct[i]+info->twofitatten>=flr[i]){
+ xa += i;
+ ya += quantized;
+ x2a += i*i;
+ y2a += quantized*quantized;
+ xya += i*quantized;
+ na++;
+ }else{
+ xb += i;
+ yb += quantized;
+ x2b += i*i;
+ y2b += quantized*quantized;
+ xyb += i*quantized;
+ nb++;
+ }
+ }
+ }
+
+ a->xa=xa;
+ a->ya=ya;
+ a->x2a=x2a;
+ a->y2a=y2a;
+ a->xya=xya;
+ a->an=na;
+
+ a->xb=xb;
+ a->yb=yb;
+ a->x2b=x2b;
+ a->y2b=y2b;
+ a->xyb=xyb;
+ a->bn=nb;
+
+ return(na);
+}
+
+static int fit_line(lsfit_acc *a,int fits,int *y0,int *y1,
+ vorbis_info_floor1 *info){
+ double xb=0,yb=0,x2b=0,y2b=0,xyb=0,bn=0;
+ int i;
+ int x0=a[0].x0;
+ int x1=a[fits-1].x1;
+
+ for(i=0;itwofitweight/(a[i].an+1)+1.;
+
+ xb+=a[i].xb + a[i].xa * weight;
+ yb+=a[i].yb + a[i].ya * weight;
+ x2b+=a[i].x2b + a[i].x2a * weight;
+ y2b+=a[i].y2b + a[i].y2a * weight;
+ xyb+=a[i].xyb + a[i].xya * weight;
+ bn+=a[i].bn + a[i].an * weight;
+ }
+
+ if(*y0>=0){
+ xb+= x0;
+ yb+= *y0;
+ x2b+= x0 * x0;
+ y2b+= *y0 * *y0;
+ xyb+= *y0 * x0;
+ bn++;
+ }
+
+ if(*y1>=0){
+ xb+= x1;
+ yb+= *y1;
+ x2b+= x1 * x1;
+ y2b+= *y1 * *y1;
+ xyb+= *y1 * x1;
+ bn++;
+ }
+
+ {
+ double denom=(bn*x2b-xb*xb);
+
+ if(denom>0.){
+ double a=(yb*x2b-xyb*xb)/denom;
+ double b=(bn*xyb-xb*yb)/denom;
+ *y0=rint(a+b*x0);
+ *y1=rint(a+b*x1);
+
+ /* limit to our range! */
+ if(*y0>1023)*y0=1023;
+ if(*y1>1023)*y1=1023;
+ if(*y0<0)*y0=0;
+ if(*y1<0)*y1=0;
+
+ return 0;
+ }else{
+ *y0=0;
+ *y1=0;
+ return 1;
+ }
+ }
+}
+
+static int inspect_error(int x0,int x1,int y0,int y1,const float *mask,
+ const float *mdct,
+ vorbis_info_floor1 *info){
+ int dy=y1-y0;
+ int adx=x1-x0;
+ int ady=abs(dy);
+ int base=dy/adx;
+ int sy=(dy<0?base-1:base+1);
+ int x=x0;
+ int y=y0;
+ int err=0;
+ int val=vorbis_dBquant(mask+x);
+ int mse=0;
+ int n=0;
+
+ ady-=abs(base*adx);
+
+ mse=(y-val);
+ mse*=mse;
+ n++;
+ if(mdct[x]+info->twofitatten>=mask[x]){
+ if(y+info->maxovermaxunder>val)return(1);
+ }
+
+ while(++x=adx){
+ err-=adx;
+ y+=sy;
+ }else{
+ y+=base;
+ }
+
+ val=vorbis_dBquant(mask+x);
+ mse+=((y-val)*(y-val));
+ n++;
+ if(mdct[x]+info->twofitatten>=mask[x]){
+ if(val){
+ if(y+info->maxovermaxunder>val)return(1);
+ }
+ }
+ }
+
+ if(info->maxover*info->maxover/n>info->maxerr)return(0);
+ if(info->maxunder*info->maxunder/n>info->maxerr)return(0);
+ if(mse/n>info->maxerr)return(1);
+ return(0);
+}
+
+static int post_Y(int *A,int *B,int pos){
+ if(A[pos]<0)
+ return B[pos];
+ if(B[pos]<0)
+ return A[pos];
+
+ return (A[pos]+B[pos])>>1;
+}
+
+int *floor1_fit(vorbis_block *vb,vorbis_look_floor1 *look,
+ const float *logmdct, /* in */
+ const float *logmask){
+ long i,j;
+ vorbis_info_floor1 *info=look->vi;
+ long n=look->n;
+ long posts=look->posts;
+ long nonzero=0;
+ lsfit_acc fits[VIF_POSIT+1];
+ int fit_valueA[VIF_POSIT+2]; /* index by range list position */
+ int fit_valueB[VIF_POSIT+2]; /* index by range list position */
+
+ int loneighbor[VIF_POSIT+2]; /* sorted index of range list position (+2) */
+ int hineighbor[VIF_POSIT+2];
+ int *output=NULL;
+ int memo[VIF_POSIT+2];
+
+ for(i=0;isorted_index[i],
+ look->sorted_index[i+1],fits+i,
+ n,info);
+ }
+
+ if(nonzero){
+ /* start by fitting the implicit base case.... */
+ int y0=-200;
+ int y1=-200;
+ fit_line(fits,posts-1,&y0,&y1,info);
+
+ fit_valueA[0]=y0;
+ fit_valueB[0]=y0;
+ fit_valueB[1]=y1;
+ fit_valueA[1]=y1;
+
+ /* Non degenerate case */
+ /* start progressive splitting. This is a greedy, non-optimal
+ algorithm, but simple and close enough to the best
+ answer. */
+ for(i=2;ireverse_index[i];
+ int ln=loneighbor[sortpos];
+ int hn=hineighbor[sortpos];
+
+ /* eliminate repeat searches of a particular range with a memo */
+ if(memo[ln]!=hn){
+ /* haven't performed this error search yet */
+ int lsortpos=look->reverse_index[ln];
+ int hsortpos=look->reverse_index[hn];
+ memo[ln]=hn;
+
+ {
+ /* A note: we want to bound/minimize *local*, not global, error */
+ int lx=info->postlist[ln];
+ int hx=info->postlist[hn];
+ int ly=post_Y(fit_valueA,fit_valueB,ln);
+ int hy=post_Y(fit_valueA,fit_valueB,hn);
+
+ if(ly==-1 || hy==-1){
+ exit(1);
+ }
+
+ if(inspect_error(lx,hx,ly,hy,logmask,logmdct,info)){
+ /* outside error bounds/begin search area. Split it. */
+ int ly0=-200;
+ int ly1=-200;
+ int hy0=-200;
+ int hy1=-200;
+ int ret0=fit_line(fits+lsortpos,sortpos-lsortpos,&ly0,&ly1,info);
+ int ret1=fit_line(fits+sortpos,hsortpos-sortpos,&hy0,&hy1,info);
+
+ if(ret0){
+ ly0=ly;
+ ly1=hy0;
+ }
+ if(ret1){
+ hy0=ly1;
+ hy1=hy;
+ }
+
+ if(ret0 && ret1){
+ fit_valueA[i]=-200;
+ fit_valueB[i]=-200;
+ }else{
+ /* store new edge values */
+ fit_valueB[ln]=ly0;
+ if(ln==0)fit_valueA[ln]=ly0;
+ fit_valueA[i]=ly1;
+ fit_valueB[i]=hy0;
+ fit_valueA[hn]=hy1;
+ if(hn==1)fit_valueB[hn]=hy1;
+
+ if(ly1>=0 || hy0>=0){
+ /* store new neighbor values */
+ for(j=sortpos-1;j>=0;j--)
+ if(hineighbor[j]==hn)
+ hineighbor[j]=i;
+ else
+ break;
+ for(j=sortpos+1;jloneighbor[i-2];
+ int hn=look->hineighbor[i-2];
+ int x0=info->postlist[ln];
+ int x1=info->postlist[hn];
+ int y0=output[ln];
+ int y1=output[hn];
+
+ int predicted=render_point(x0,x1,y0,y1,info->postlist[i]);
+ int vx=post_Y(fit_valueA,fit_valueB,i);
+
+ if(vx>=0 && predicted!=vx){
+ output[i]=vx;
+ }else{
+ output[i]= predicted|0x8000;
+ }
+ }
+ }
+
+ return(output);
+
+}
+
+int *floor1_interpolate_fit(vorbis_block *vb,vorbis_look_floor1 *look,
+ int *A,int *B,
+ int del){
+
+ long i;
+ long posts=look->posts;
+ int *output=NULL;
+
+ if(A && B){
+ output=_vorbis_block_alloc(vb,sizeof(*output)*posts);
+
+ /* overly simpleminded--- look again post 1.2 */
+ for(i=0;i>16;
+ if(A[i]&0x8000 && B[i]&0x8000)output[i]|=0x8000;
+ }
+ }
+
+ return(output);
+}
+
+
+int floor1_encode(oggpack_buffer *opb,vorbis_block *vb,
+ vorbis_look_floor1 *look,
+ int *post,int *ilogmask){
+
+ long i,j;
+ vorbis_info_floor1 *info=look->vi;
+ long posts=look->posts;
+ codec_setup_info *ci=vb->vd->vi->codec_setup;
+ int out[VIF_POSIT+2];
+ static_codebook **sbooks=ci->book_param;
+ codebook *books=ci->fullbooks;
+
+ /* quantize values to multiplier spec */
+ if(post){
+ for(i=0;imult){
+ case 1: /* 1024 -> 256 */
+ val>>=2;
+ break;
+ case 2: /* 1024 -> 128 */
+ val>>=3;
+ break;
+ case 3: /* 1024 -> 86 */
+ val/=12;
+ break;
+ case 4: /* 1024 -> 64 */
+ val>>=4;
+ break;
+ }
+ post[i]=val | (post[i]&0x8000);
+ }
+
+ out[0]=post[0];
+ out[1]=post[1];
+
+ /* find prediction values for each post and subtract them */
+ for(i=2;iloneighbor[i-2];
+ int hn=look->hineighbor[i-2];
+ int x0=info->postlist[ln];
+ int x1=info->postlist[hn];
+ int y0=post[ln];
+ int y1=post[hn];
+
+ int predicted=render_point(x0,x1,y0,y1,info->postlist[i]);
+
+ if((post[i]&0x8000) || (predicted==post[i])){
+ post[i]=predicted|0x8000; /* in case there was roundoff jitter
+ in interpolation */
+ out[i]=0;
+ }else{
+ int headroom=(look->quant_q-predictedquant_q-predicted:predicted);
+
+ int val=post[i]-predicted;
+
+ /* at this point the 'deviation' value is in the range +/- max
+ range, but the real, unique range can always be mapped to
+ only [0-maxrange). So we want to wrap the deviation into
+ this limited range, but do it in the way that least screws
+ an essentially gaussian probability distribution. */
+
+ if(val<0)
+ if(val<-headroom)
+ val=headroom-val-1;
+ else
+ val=-1-(val<<1);
+ else
+ if(val>=headroom)
+ val= val+headroom;
+ else
+ val<<=1;
+
+ out[i]=val;
+ post[ln]&=0x7fff;
+ post[hn]&=0x7fff;
+ }
+ }
+
+ /* we have everything we need. pack it out */
+ /* mark nontrivial floor */
+ oggpack_write(opb,1,1);
+
+ /* beginning/end post */
+ look->frames++;
+ look->postbits+=ov_ilog(look->quant_q-1)*2;
+ oggpack_write(opb,out[0],ov_ilog(look->quant_q-1));
+ oggpack_write(opb,out[1],ov_ilog(look->quant_q-1));
+
+
+ /* partition by partition */
+ for(i=0,j=2;ipartitions;i++){
+ int class=info->partitionclass[i];
+ int cdim=info->class_dim[class];
+ int csubbits=info->class_subs[class];
+ int csub=1<class_subbook[class][k];
+ if(booknum<0){
+ maxval[k]=1;
+ }else{
+ maxval[k]=sbooks[info->class_subbook[class][k]]->entries;
+ }
+ }
+ for(k=0;kphrasebits+=
+ vorbis_book_encode(books+info->class_book[class],cval,opb);
+
+#ifdef TRAIN_FLOOR1
+ {
+ FILE *of;
+ char buffer[80];
+ sprintf(buffer,"line_%dx%ld_class%d.vqd",
+ vb->pcmend/2,posts-2,class);
+ of=fopen(buffer,"a");
+ fprintf(of,"%d\n",cval);
+ fclose(of);
+ }
+#endif
+ }
+
+ /* write post values */
+ for(k=0;kclass_subbook[class][bookas[k]];
+ if(book>=0){
+ /* hack to allow training with 'bad' books */
+ if(out[j+k]<(books+book)->entries)
+ look->postbits+=vorbis_book_encode(books+book,
+ out[j+k],opb);
+ /*else
+ fprintf(stderr,"+!");*/
+
+#ifdef TRAIN_FLOOR1
+ {
+ FILE *of;
+ char buffer[80];
+ sprintf(buffer,"line_%dx%ld_%dsub%d.vqd",
+ vb->pcmend/2,posts-2,class,bookas[k]);
+ of=fopen(buffer,"a");
+ fprintf(of,"%d\n",out[j+k]);
+ fclose(of);
+ }
+#endif
+ }
+ }
+ j+=cdim;
+ }
+
+ {
+ /* generate quantized floor equivalent to what we'd unpack in decode */
+ /* render the lines */
+ int hx=0;
+ int lx=0;
+ int ly=post[0]*info->mult;
+ int n=ci->blocksizes[vb->W]/2;
+
+ for(j=1;jposts;j++){
+ int current=look->forward_index[j];
+ int hy=post[current]&0x7fff;
+ if(hy==post[current]){
+
+ hy*=info->mult;
+ hx=info->postlist[current];
+
+ render_line0(n,lx,hx,ly,hy,ilogmask);
+
+ lx=hx;
+ ly=hy;
+ }
+ }
+ for(j=hx;jpcmend/2;j++)ilogmask[j]=ly; /* be certain */
+ return(1);
+ }
+ }else{
+ oggpack_write(opb,0,1);
+ memset(ilogmask,0,vb->pcmend/2*sizeof(*ilogmask));
+ return(0);
+ }
+}
+
+static void *floor1_inverse1(vorbis_block *vb,vorbis_look_floor *in){
+ vorbis_look_floor1 *look=(vorbis_look_floor1 *)in;
+ vorbis_info_floor1 *info=look->vi;
+ codec_setup_info *ci=vb->vd->vi->codec_setup;
+
+ int i,j,k;
+ codebook *books=ci->fullbooks;
+
+ /* unpack wrapped/predicted values from stream */
+ if(oggpack_read(&vb->opb,1)==1){
+ int *fit_value=_vorbis_block_alloc(vb,(look->posts)*sizeof(*fit_value));
+
+ fit_value[0]=oggpack_read(&vb->opb,ov_ilog(look->quant_q-1));
+ fit_value[1]=oggpack_read(&vb->opb,ov_ilog(look->quant_q-1));
+
+ /* partition by partition */
+ for(i=0,j=2;ipartitions;i++){
+ int class=info->partitionclass[i];
+ int cdim=info->class_dim[class];
+ int csubbits=info->class_subs[class];
+ int csub=1<class_book[class],&vb->opb);
+
+ if(cval==-1)goto eop;
+ }
+
+ for(k=0;kclass_subbook[class][cval&(csub-1)];
+ cval>>=csubbits;
+ if(book>=0){
+ if((fit_value[j+k]=vorbis_book_decode(books+book,&vb->opb))==-1)
+ goto eop;
+ }else{
+ fit_value[j+k]=0;
+ }
+ }
+ j+=cdim;
+ }
+
+ /* unwrap positive values and reconsitute via linear interpolation */
+ for(i=2;iposts;i++){
+ int predicted=render_point(info->postlist[look->loneighbor[i-2]],
+ info->postlist[look->hineighbor[i-2]],
+ fit_value[look->loneighbor[i-2]],
+ fit_value[look->hineighbor[i-2]],
+ info->postlist[i]);
+ int hiroom=look->quant_q-predicted;
+ int loroom=predicted;
+ int room=(hiroom=room){
+ if(hiroom>loroom){
+ val = val-loroom;
+ }else{
+ val = -1-(val-hiroom);
+ }
+ }else{
+ if(val&1){
+ val= -((val+1)>>1);
+ }else{
+ val>>=1;
+ }
+ }
+
+ fit_value[i]=(val+predicted)&0x7fff;
+ fit_value[look->loneighbor[i-2]]&=0x7fff;
+ fit_value[look->hineighbor[i-2]]&=0x7fff;
+
+ }else{
+ fit_value[i]=predicted|0x8000;
+ }
+
+ }
+
+ return(fit_value);
+ }
+ eop:
+ return(NULL);
+}
+
+static int floor1_inverse2(vorbis_block *vb,vorbis_look_floor *in,void *memo,
+ float *out){
+ vorbis_look_floor1 *look=(vorbis_look_floor1 *)in;
+ vorbis_info_floor1 *info=look->vi;
+
+ codec_setup_info *ci=vb->vd->vi->codec_setup;
+ int n=ci->blocksizes[vb->W]/2;
+ int j;
+
+ if(memo){
+ /* render the lines */
+ int *fit_value=(int *)memo;
+ int hx=0;
+ int lx=0;
+ int ly=fit_value[0]*info->mult;
+ /* guard lookup against out-of-range values */
+ ly=(ly<0?0:ly>255?255:ly);
+
+ for(j=1;jposts;j++){
+ int current=look->forward_index[j];
+ int hy=fit_value[current]&0x7fff;
+ if(hy==fit_value[current]){
+
+ hx=info->postlist[current];
+ hy*=info->mult;
+ /* guard lookup against out-of-range values */
+ hy=(hy<0?0:hy>255?255:hy);
+
+ render_line(n,lx,hx,ly,hy,out);
+
+ lx=hx;
+ ly=hy;
+ }
+ }
+ for(j=hx;j header packets
+ last mod: $Id: info.c 19441 2015-01-21 01:17:41Z xiphmont $
+
+ ********************************************************************/
+
+/* general handling of the header and the vorbis_info structure (and
+ substructures) */
+
+#include
+#include
+#include
+#include
+#include "vorbis/codec.h"
+#include "codec_internal.h"
+#include "codebook.h"
+#include "registry.h"
+#include "window.h"
+#include "psy.h"
+#include "misc.h"
+#include "os.h"
+
+#define GENERAL_VENDOR_STRING "Xiph.Org libVorbis 1.3.5"
+#define ENCODE_VENDOR_STRING "Xiph.Org libVorbis I 20150105 (⛄⛄⛄⛄)"
+
+/* helpers */
+static void _v_writestring(oggpack_buffer *o,const char *s, int bytes){
+
+ while(bytes--){
+ oggpack_write(o,*s++,8);
+ }
+}
+
+static void _v_readstring(oggpack_buffer *o,char *buf,int bytes){
+ while(bytes--){
+ *buf++=oggpack_read(o,8);
+ }
+}
+
+void vorbis_comment_init(vorbis_comment *vc){
+ memset(vc,0,sizeof(*vc));
+}
+
+void vorbis_comment_add(vorbis_comment *vc,const char *comment){
+ vc->user_comments=_ogg_realloc(vc->user_comments,
+ (vc->comments+2)*sizeof(*vc->user_comments));
+ vc->comment_lengths=_ogg_realloc(vc->comment_lengths,
+ (vc->comments+2)*sizeof(*vc->comment_lengths));
+ vc->comment_lengths[vc->comments]=strlen(comment);
+ vc->user_comments[vc->comments]=_ogg_malloc(vc->comment_lengths[vc->comments]+1);
+ strcpy(vc->user_comments[vc->comments], comment);
+ vc->comments++;
+ vc->user_comments[vc->comments]=NULL;
+}
+
+void vorbis_comment_add_tag(vorbis_comment *vc, const char *tag, const char *contents){
+ char *comment=alloca(strlen(tag)+strlen(contents)+2); /* +2 for = and \0 */
+ strcpy(comment, tag);
+ strcat(comment, "=");
+ strcat(comment, contents);
+ vorbis_comment_add(vc, comment);
+}
+
+/* This is more or less the same as strncasecmp - but that doesn't exist
+ * everywhere, and this is a fairly trivial function, so we include it */
+static int tagcompare(const char *s1, const char *s2, int n){
+ int c=0;
+ while(c < n){
+ if(toupper(s1[c]) != toupper(s2[c]))
+ return !0;
+ c++;
+ }
+ return 0;
+}
+
+char *vorbis_comment_query(vorbis_comment *vc, const char *tag, int count){
+ long i;
+ int found = 0;
+ int taglen = strlen(tag)+1; /* +1 for the = we append */
+ char *fulltag = alloca(taglen+ 1);
+
+ strcpy(fulltag, tag);
+ strcat(fulltag, "=");
+
+ for(i=0;icomments;i++){
+ if(!tagcompare(vc->user_comments[i], fulltag, taglen)){
+ if(count == found)
+ /* We return a pointer to the data, not a copy */
+ return vc->user_comments[i] + taglen;
+ else
+ found++;
+ }
+ }
+ return NULL; /* didn't find anything */
+}
+
+int vorbis_comment_query_count(vorbis_comment *vc, const char *tag){
+ int i,count=0;
+ int taglen = strlen(tag)+1; /* +1 for the = we append */
+ char *fulltag = alloca(taglen+1);
+ strcpy(fulltag,tag);
+ strcat(fulltag, "=");
+
+ for(i=0;icomments;i++){
+ if(!tagcompare(vc->user_comments[i], fulltag, taglen))
+ count++;
+ }
+
+ return count;
+}
+
+void vorbis_comment_clear(vorbis_comment *vc){
+ if(vc){
+ long i;
+ if(vc->user_comments){
+ for(i=0;icomments;i++)
+ if(vc->user_comments[i])_ogg_free(vc->user_comments[i]);
+ _ogg_free(vc->user_comments);
+ }
+ if(vc->comment_lengths)_ogg_free(vc->comment_lengths);
+ if(vc->vendor)_ogg_free(vc->vendor);
+ memset(vc,0,sizeof(*vc));
+ }
+}
+
+/* blocksize 0 is guaranteed to be short, 1 is guaranteed to be long.
+ They may be equal, but short will never ge greater than long */
+int vorbis_info_blocksize(vorbis_info *vi,int zo){
+ codec_setup_info *ci = vi->codec_setup;
+ return ci ? ci->blocksizes[zo] : -1;
+}
+
+/* used by synthesis, which has a full, alloced vi */
+void vorbis_info_init(vorbis_info *vi){
+ memset(vi,0,sizeof(*vi));
+ vi->codec_setup=_ogg_calloc(1,sizeof(codec_setup_info));
+}
+
+void vorbis_info_clear(vorbis_info *vi){
+ codec_setup_info *ci=vi->codec_setup;
+ int i;
+
+ if(ci){
+
+ for(i=0;imodes;i++)
+ if(ci->mode_param[i])_ogg_free(ci->mode_param[i]);
+
+ for(i=0;imaps;i++) /* unpack does the range checking */
+ if(ci->map_param[i]) /* this may be cleaning up an aborted
+ unpack, in which case the below type
+ cannot be trusted */
+ _mapping_P[ci->map_type[i]]->free_info(ci->map_param[i]);
+
+ for(i=0;ifloors;i++) /* unpack does the range checking */
+ if(ci->floor_param[i]) /* this may be cleaning up an aborted
+ unpack, in which case the below type
+ cannot be trusted */
+ _floor_P[ci->floor_type[i]]->free_info(ci->floor_param[i]);
+
+ for(i=0;iresidues;i++) /* unpack does the range checking */
+ if(ci->residue_param[i]) /* this may be cleaning up an aborted
+ unpack, in which case the below type
+ cannot be trusted */
+ _residue_P[ci->residue_type[i]]->free_info(ci->residue_param[i]);
+
+ for(i=0;ibooks;i++){
+ if(ci->book_param[i]){
+ /* knows if the book was not alloced */
+ vorbis_staticbook_destroy(ci->book_param[i]);
+ }
+ if(ci->fullbooks)
+ vorbis_book_clear(ci->fullbooks+i);
+ }
+ if(ci->fullbooks)
+ _ogg_free(ci->fullbooks);
+
+ for(i=0;ipsys;i++)
+ _vi_psy_free(ci->psy_param[i]);
+
+ _ogg_free(ci);
+ }
+
+ memset(vi,0,sizeof(*vi));
+}
+
+/* Header packing/unpacking ********************************************/
+
+static int _vorbis_unpack_info(vorbis_info *vi,oggpack_buffer *opb){
+ codec_setup_info *ci=vi->codec_setup;
+ if(!ci)return(OV_EFAULT);
+
+ vi->version=oggpack_read(opb,32);
+ if(vi->version!=0)return(OV_EVERSION);
+
+ vi->channels=oggpack_read(opb,8);
+ vi->rate=oggpack_read(opb,32);
+
+ vi->bitrate_upper=oggpack_read(opb,32);
+ vi->bitrate_nominal=oggpack_read(opb,32);
+ vi->bitrate_lower=oggpack_read(opb,32);
+
+ ci->blocksizes[0]=1<blocksizes[1]=1<rate<1)goto err_out;
+ if(vi->channels<1)goto err_out;
+ if(ci->blocksizes[0]<64)goto err_out;
+ if(ci->blocksizes[1]blocksizes[0])goto err_out;
+ if(ci->blocksizes[1]>8192)goto err_out;
+
+ if(oggpack_read(opb,1)!=1)goto err_out; /* EOP check */
+
+ return(0);
+ err_out:
+ vorbis_info_clear(vi);
+ return(OV_EBADHEADER);
+}
+
+static int _vorbis_unpack_comment(vorbis_comment *vc,oggpack_buffer *opb){
+ int i;
+ int vendorlen=oggpack_read(opb,32);
+ if(vendorlen<0)goto err_out;
+ if(vendorlen>opb->storage-8)goto err_out;
+ vc->vendor=_ogg_calloc(vendorlen+1,1);
+ _v_readstring(opb,vc->vendor,vendorlen);
+ i=oggpack_read(opb,32);
+ if(i<0)goto err_out;
+ if(i>((opb->storage-oggpack_bytes(opb))>>2))goto err_out;
+ vc->comments=i;
+ vc->user_comments=_ogg_calloc(vc->comments+1,sizeof(*vc->user_comments));
+ vc->comment_lengths=_ogg_calloc(vc->comments+1, sizeof(*vc->comment_lengths));
+
+ for(i=0;icomments;i++){
+ int len=oggpack_read(opb,32);
+ if(len<0)goto err_out;
+ if(len>opb->storage-oggpack_bytes(opb))goto err_out;
+ vc->comment_lengths[i]=len;
+ vc->user_comments[i]=_ogg_calloc(len+1,1);
+ _v_readstring(opb,vc->user_comments[i],len);
+ }
+ if(oggpack_read(opb,1)!=1)goto err_out; /* EOP check */
+
+ return(0);
+ err_out:
+ vorbis_comment_clear(vc);
+ return(OV_EBADHEADER);
+}
+
+/* all of the real encoding details are here. The modes, books,
+ everything */
+static int _vorbis_unpack_books(vorbis_info *vi,oggpack_buffer *opb){
+ codec_setup_info *ci=vi->codec_setup;
+ int i;
+
+ /* codebooks */
+ ci->books=oggpack_read(opb,8)+1;
+ if(ci->books<=0)goto err_out;
+ for(i=0;i