diff --git a/README.md b/README.md
index e482390..4efc61b 100644
--- a/README.md
+++ b/README.md
@@ -21,6 +21,7 @@ This is the source code for Serious Engine v.1.10, including the following proje
* `MakeFONT` Used for generating *.fnt files
* `Shaders` Compiled shaders
* `GameAgent` The serverlist masterserver written in Python
+* `libogg`, `libvorbis` Third party libraries used for playing OGG-encoded ingame music (see http://www.vorbis.com/ for more information)
These have been modified to run correctly under the recent version of Windows. (Tested: Win7 x64, Win8 x64, Win8.1 x64)
@@ -40,7 +41,7 @@ DirectX support is disabled by default. If you need DirectX support you'll have
* `/Tools.Win32/Libraries/DX8SDK/Include/..`
* `/Tools.Win32/Libraries/DX8SDK/Lib/..`
-MP3 and OGG playback is disabled by default. If you need these features, you will have to copy amp11lib.dll (for MP3) and/or vorbis.dll with vorbisfile.dll (for OGG) to the '\Bin\' directory (and '\Bin\Debug\' for MP3/OGG support in debug mode)
+MP3 playback is disabled by default. If you need this features, you will have to copy amp11lib.dll to the '\Bin\' directory (and '\Bin\Debug\' for MP3 support in debug mode). The amp11lib.dll is distributed with older versions of Serious Sam: The First Encounter.
3D Exploration support is disabled in the open source version of Serious Engine 1 due to copyright issues. In case if you need to create new models you will have to either use editing tools from any of the original games, or write your own code for 3D object import/export.
@@ -74,3 +75,4 @@ Some of the code included with the engine sources is not licensed under the GNU
* zlib (located in `Sources/Engine/zlib`) by Jean-loup Gailly and Mark Adler
* LightWave SDK (located in `Sources/LWSkaExporter/SDK`) by NewTek Inc.
+* libogg/libvorbis (located in `Sources/libogg` and `Sources/libvorbis`) by Xiph.Org Foundation
diff --git a/Sources/All.sln b/Sources/All.sln
index f6f0e28..d897d3e 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/Ecc/Main.cpp b/Sources/Ecc/Main.cpp
index 449df5b..558ae58 100644
--- a/Sources/Ecc/Main.cpp
+++ b/Sources/Ecc/Main.cpp
@@ -228,110 +228,6 @@ void ReplaceFile(const char *strOld, const char *strNew)
rename(strNew, strOld);
}
-enum ESStatus
-{
- /* Appears to be non-empty, ready to parse. */
- Good,
- /* Appears to be empty, ignore it. */
- Empty,
- /* Error occured during status check. */
- Error,
-};
-
-/* Determine whether or not our target ES file is indeed valid input. */
-ESStatus GetESStatus()
-{
- ESStatus result = ESStatus::Empty;
-
- // Read a temporary buffer of the entire file contents
- fseek(_fInput, 0, SEEK_END);
- size_t length = ftell(_fInput);
-
- // Hard-stop on Empty out of paranoia
- if (length == 0)
- return result;
-
- char* temporaryBuffer = (char*)malloc(length);
-
- if (!temporaryBuffer)
- return ESStatus::Error;
-
- fseek(_fInput, 0, SEEK_SET);
- fread(temporaryBuffer, length, 1, _fInput);
- fseek(_fInput, 0, SEEK_SET);
-
- // Loop through each line
- char* currentSequence = strtok(temporaryBuffer, "\n");
-
- // No newlines, but it might still be valid.
- if (!currentSequence)
- currentSequence = temporaryBuffer;
-
- bool inBlockComment = false;
- do
- {
- size_t sequenceLength = strlen(currentSequence);
-
- for (size_t iteration = 0; iteration < sequenceLength; iteration++)
- {
- // If we're still in a block comment, find the closing */
- if (inBlockComment)
- {
- char* blockClosing = strstr(currentSequence, "*/");
- if (!blockClosing)
- break;
- else
- {
- inBlockComment = false;
- iteration = ((size_t)blockClosing - (size_t)currentSequence) + 2;
- }
- }
-
- // If we find a // sequence, simply skip this line
- if (currentSequence[iteration] == '/' && currentSequence[iteration + 1] == '/')
- break;
-
- // If we find a /* on this line but not a closing */, skip this line
- if (currentSequence[iteration] == '/' && currentSequence[iteration + 1] == '*')
- {
- // Is there a closing */ on this line?
- char* blockClosing = strstr(currentSequence, "*/");
-
- if (!blockClosing)
- {
- inBlockComment = true;
- break;
- }
- else
- {
- iteration = ((size_t)blockClosing - (size_t)currentSequence) + 2;
- inBlockComment = false;
- continue;
- }
- }
-
- if (iteration >= sequenceLength)
- break;
-
- // If we got to this point, we should be able to read only a number on this line
- for (size_t checkIteration = 0; checkIteration < sequenceLength; checkIteration++)
- if (currentSequence[checkIteration] != '\n' && currentSequence[checkIteration] != 0x20 && !isdigit(currentSequence[checkIteration]))
- {
- result = ESStatus::Error;
- break;
- }
- else if (currentSequence[checkIteration] != '\n' && currentSequence[checkIteration] != 0x20)
- result = ESStatus::Good;
-
- free(temporaryBuffer);
- return result;
- }
- }
- while(currentSequence = strtok(NULL, "\n"));
-
- return result;
-}
-
/* Replace a file with a new file if they are different.
* Used to keep .h files from constantly changing when you change the implementation.
*/
@@ -389,24 +285,6 @@ int main(int argc, char *argv[])
// open the input file
_fInput = FOpen(argv[1], "r");
- // Make sure we're loading a valid ES file
- ESStatus status = GetESStatus();
-
- switch (status)
- {
- case ESStatus::Empty:
- {
- fclose(_fInput);
- return EXIT_SUCCESS;
- }
- case ESStatus::Error:
- {
- fclose(_fInput);
- printf("Ecc encountered an error during the es verification.\n");
- return EXIT_FAILURE;
- }
- }
-
//printf("%s\n", argv[1]);
// open all the output files
char *strImplementation = ChangeFileNameExtension(argv[1], ".cpp_tmp");
diff --git a/Sources/Ecc/Parser.y b/Sources/Ecc/Parser.y
index e45be82..3315f97 100644
--- a/Sources/Ecc/Parser.y
+++ b/Sources/Ecc/Parser.y
@@ -250,7 +250,8 @@ void DeclareFeatureProperties(void)
* Global structure of the source file.
*/
program
- : c_int {
+ : /* empty file */ {}
+ | c_int {
int iID = atoi($1.strString);
if(iID>32767) {
yyerror("Maximum allowed id for entity source file is 32767");
diff --git a/Sources/Engine/Engine.vcxproj b/Sources/Engine/Engine.vcxproj
index b893744..32ab746 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 870a661..737ce41 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 97b1a11..74ebf0d 100644
--- a/Sources/Engine/Sound/SoundDecoder.cpp
+++ b/Sources/Engine/Sound/SoundDecoder.cpp
@@ -96,53 +96,19 @@ public:
// ------------------------------------ Ogg Vorbis
-
-//#include // we define needed stuff ourselves, and ignore the rest
+#include // we define needed stuff ourselves, and ignore the rest
// vorbis vars
BOOL _bOVEnabled = FALSE;
static CDynamicLoader *_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
@@ -169,15 +135,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
//
@@ -265,7 +222,6 @@ void CSoundDecoder::InitPlugins(void)
// if all successful, enable mpx playing
_bOVEnabled = TRUE;
CPrintF(TRANSV(" " VORBISLIB " shared library loaded, ogg playing enabled\n"));
-
} catch (char *strError) { // !!! FIXME: should be const char* ?
CPrintF(TRANSV("OGG playing disabled: %s\n"), strError);
}
@@ -328,6 +284,7 @@ CSoundDecoder::CSoundDecoder(const CTFileName &fnm)
if (!_bOVEnabled) {
return;
}
+
sdc_pogg = new CDecodeData_OGG;
sdc_pogg->ogg_fFile = NULL;
sdc_pogg->ogg_vfVorbisFile = NULL;
@@ -573,9 +530,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 d2ca4d6..0188a83 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 0000000..a0023f2
--- /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 0000000..3f2e0fb
--- /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 0000000..6111c6c
--- /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 0000000..2db22e6
--- /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 0000000..750e29d
--- /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 0000000..cea4ebe
--- /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 0000000..8bf8210
--- /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 0000000..c775ff8
--- /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 0000000..ef5ff2a
--- /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 0000000..f47d6db
--- /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 0000000..145901d
--- /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 0000000..0da1036
--- /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 0000000..d566f3f
--- /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 0000000..8f1d18c
--- /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 0000000..343be9a
--- /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 0000000..999aa33
--- /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 0000000..02332b5
--- /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 0000000..9271331
--- /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 0000000..01aa6f3
--- /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 0000000..3a71b1d
--- /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 0000000..db48fcb
--- /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 0000000..345c042
--- /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 0000000..93910ff
--- /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 0000000..9a9049f
--- /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 0000000..e925313
--- /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 0000000..736353b
--- /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 0000000..72f8a17
--- /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 0000000..537d6c1
--- /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 0000000..de1bcca
--- /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 0000000..010c66e
--- /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 0000000..fd15fb3
--- /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 0000000..213cce4
--- /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 0000000..d8bd464
--- /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